Skip to content

serwiz/VMKFinder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 

Repository files navigation

Simple memory dump parser (VMK)

Python script used to parse a memory dump in hexadecimal format in order to identify and extract a BitLocker VMK (Volume Master Key) still present in memory.

This type of key can be recovered when BitLocker is unlocked and the key has not yet been cleared from RAM.


Use cases

  • Pre-boot DMA attack with RAM dump
  • Logic analyzer output parsing

Principle

The script reads a file containing a memory dump in hexadecimal format and searches for a known structure used by BitLocker to store the VMK in memory.

This structure includes:

  • an identifiable BitLocker header
  • followed by 32 bytes corresponding to the VMK

When this sequence is found, the VMK is extracted and converted into a binary file.


Usage

It was first used during DMA attacks PoC. Memory dump was done during Windows pre-boot (on UEFI EXIT_BOOT_SERVICES()) just before winload.exe takes control.

Needed to traduce the raw dump into hex dump format :

xxd -p -c 0 memdump.bin > memdump.hex

Then you can simply use it like this :

python3 vmkfinder.py -f memdump.hex

Outpul looks like this :

image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages