hashcat/tools/veeamvbk2hashcat.py

26 lines
1.1 KiB
Python
Executable File

import argparse
import binascii
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('-f', '--file', required=False, help="VBK file")
parser.add_argument('-s', '--seek', required=False, help="skip N bytes for large files")
options = parser.parse_args()
if options.file:
with open(options.file, mode="rb") as f:
if options.seek:
f.seek(int(options.seek),0)
while True:
data = f.read(131072) #read data from file per 128 kBytes
if not data:
break
offs = data.find(b'\x60\x00\x00\x00\x10\x00\x00\x00\x40\x00\x00\x00')
if offs != -1:
print("Found !")
part1 = data[offs+12:offs+12+96]
part2 = data[offs+12+96:offs+12+96+16]
part3 = data[offs+12+96+16:offs+12+96+16+64]
print(f'$vbk$*%s*10000*%s' % (binascii.hexlify(part3).decode('utf-8'), binascii.hexlify(part2).decode('utf-8')))
break