Codebase list pypykatz / edf81ef
Import upstream version 0.6.2 Kali Janitor 1 year, 6 months ago
6 changed file(s) with 51 addition(s) and 14 deletion(s). Raw diff Collapse all Expand all
00 Metadata-Version: 2.1
11 Name: pypykatz
2 Version: 0.6.1
2 Version: 0.6.2
33 Summary: Python implementation of Mimikatz
44 Home-page: https://github.com/skelsec/pypykatz
55 Author: Tamas Jos
00
1 __version__ = "0.6.1"
1 __version__ = "0.6.2"
22 __banner__ = \
33 """
44 # pypyKatz %s
00 from pypykatz.commons.common import UniversalEncoder, hexdump
11 import argparse
22 import platform
3
4 from pypykatz.dpapi.structures.blob import DPAPI_BLOB
5 from pypykatz.dpapi.structures.credentialfile import CredentialFile
6 from pypykatz.dpapi.structures.masterkeyfile import MasterKeyFile
7 from pypykatz.dpapi.structures.vault import VAULT_VPOL
8 from winacl.dtyp.wcee.pvkfile import PVKFile
39
410
511 class DPAPICMDHelper:
129135 dpapi_wifi_group = dpapi_subparsers.add_parser('wifi', help='Decrypt Windows WIFI config file')
130136 dpapi_wifi_group.add_argument('mkf', help= 'Keyfile generated by the masterkey -o command.')
131137 dpapi_wifi_group.add_argument('wifixml', help='WIFI config XML file')
138
139 dpapi_describe_group = dpapi_subparsers.add_parser('describe', help='Print information on given structure')
140 dpapi_describe_group.add_argument('datatype', choices = ['blob', 'masterkey', 'pvk', 'vpol', 'credential'], help= 'Type of structure')
141 dpapi_describe_group.add_argument('data', help='filepath or hex-encoded data')
132142
133143
134144 def execute(self, args):
283293 wificonfig_enc = DPAPI.parse_wifi_config_file(args.wifixml)
284294 wificonfig = dpapi.decrypt_wifi_config_file_inner(wificonfig_enc)
285295 print('%s : %s' % (wificonfig['name'], wificonfig['key']))
286
296
297 elif args.dapi_module == 'describe':
298 def read_file_or_hex(x):
299 data = None
300 try:
301 with open(x, 'rb') as f:
302 data=f.read()
303 except:
304 data = bytes.fromhex(x)
305 return data
306
307 try:
308 data = read_file_or_hex(args.data)
309 except:
310 raise Exception('Could not load data!')
311 if args.datatype.upper() == 'BLOB':
312 res = DPAPI_BLOB.from_bytes(data)
313 elif args.datatype.upper() == 'MASTERKEY':
314 res = MasterKeyFile.from_bytes(data)
315 elif args.datatype.upper() == 'VPOL':
316 res = VAULT_VPOL.from_bytes(data)
317 elif args.datatype.upper() == 'PVK':
318 res = PVKFile.from_bytes(data)
319 elif args.datatype.upper() == 'CREDENTIAL':
320 res = CredentialFile.from_bytes(data)
321 else:
322 raise Exception('Unknown data format %s' % args.datatype)
323 print(str(res))
287324
288325 def run_live(self, args):
289326 if platform.system().lower() != 'windows':
00 Metadata-Version: 2.1
11 Name: pypykatz
2 Version: 0.6.1
2 Version: 0.6.2
33 Summary: Python implementation of Mimikatz
44 Home-page: https://github.com/skelsec/pypykatz
55 Author: Tamas Jos
0 unicrypto>=0.0.8
0 unicrypto>=0.0.9
11 minidump>=0.0.21
2 minikerberos>=0.3.1
2 minikerberos>=0.3.2
33 aiowinreg>=0.0.7
4 msldap>=0.4.0
5 winacl>=0.1.4
6 aiosmb>=0.4.0
4 msldap>=0.4.1
5 winacl>=0.1.5
6 aiosmb>=0.4.2
77 aesedb>=0.1.0
88 tqdm
5050 "Operating System :: OS Independent",
5151 ],
5252 install_requires=[
53 'unicrypto>=0.0.8',
53 'unicrypto>=0.0.9',
5454 'minidump>=0.0.21',
55 'minikerberos>=0.3.1',
55 'minikerberos>=0.3.2',
5656 'aiowinreg>=0.0.7',
57 'msldap>=0.4.0',
58 'winacl>=0.1.4',
59 'aiosmb>=0.4.0',
57 'msldap>=0.4.1',
58 'winacl>=0.1.5',
59 'aiosmb>=0.4.2',
6060 'aesedb>=0.1.0',
6161 'tqdm',
6262 ],