Differences

This shows you the differences between two versions of the page.

Link to this comparison view

john:OpenCL-BitLocker [2017/12/19 10:36]
elenago
john:OpenCL-BitLocker [2024/11/09 04:35] (current)
solar [Step 3: Attack!] Sync with today's README.BitLocker update
Line 12: Line 12:
 {{:​john:​bitcracker_img1.png?​direct&​400|}} {{:​john:​bitcracker_img1.png?​direct&​400|}}
  
-To find the password used during the encryption, see [[#Step 2: Extract the hash|Step 2: Extract the hash]])+To find the password used during the encryption, see [[#Step 2: Extract the hash|Step 2: Extract the hash]]
  
 ===== Recovery Password authentication method ===== ===== Recovery Password authentication method =====
Line 22: Line 22:
 </​code>​ </​code>​
  
-To find the correct Recovery Password, see [[#Step 2: Extract the hash|Step 2: Extract the hash]])+To find the correct Recovery Password, see [[#Step 2: Extract the hash|Step 2: Extract the hash]]. 
-For further details, see also [[https://​docs.microsoft.com/​en-us/​windows/​device-security/​bitlocker/​bitlocker-recovery-guide-planMicrosoft docs]].+For further details, see also [[https://​docs.microsoft.com/​en-us/​windows/​device-security/​bitlocker/​bitlocker-recovery-guide-plan|Microsoft docs]].
  
 ===== Step 1: Get the image of your encrypted memory device ===== ===== Step 1: Get the image of your encrypted memory device =====
Line 69: Line 69:
  
 As shown in the example, it returns 4 output hashes with different prefix: As shown in the example, it returns 4 output hashes with different prefix:
-  * If the device was encrypted using the User Password authentication ​methods, bitlocker2john prints those 2 hashes:+  * If the device was encrypted using the User Password authentication ​method, bitlocker2john prints those 2 hashes:
     * $bitlocker$0$... : it starts the User Password fast attack mode (see [[#User Password authentication method|User Password Section]])     * $bitlocker$0$... : it starts the User Password fast attack mode (see [[#User Password authentication method|User Password Section]])
     * $bitlocker$1$... : it starts the User Password attack mode with MAC verification (slower execution, no false positives)     * $bitlocker$1$... : it starts the User Password attack mode with MAC verification (slower execution, no false positives)
Line 76: Line 76:
     * $bitlocker$3$... : it starts the Recovery Password attack mode with MAC verification (slower execution, no false positives)     * $bitlocker$3$... : it starts the Recovery Password attack mode with MAC verification (slower execution, no false positives)
  
-Samples BitLocker images for testing are available ​at https://​github.com/​kholia/libbde/tree/bitlocker2john/samples and here: https://​github.com/​e-ago/bitcracker/tree/master/Images+Samples BitLocker images for testing are available ​here:  
 +  * https://​github.com/​e-ago/bitcracker/tree/master/Images 
 +  * https://​github.com/​kholia/libbde/tree/bitlocker2john/samples
  
-==== Cracking Process ​====+===== Step 3: Attack! =====
  
-Use the BitLocker-OpenCL format specifying the previous ​hash:+Use the BitLocker-OpenCL format specifying the hash file:
 <​code>​ <​code>​
 ./john --format=bitlocker-opencl --wordlist=wordlist target_hash ​ ./john --format=bitlocker-opencl --wordlist=wordlist target_hash ​
 </​code>​ </​code>​
  
-Currently, this format is able to evaluate passwords having length between 8 (minimum password length) and 55 characters (implementation reasons).  +Currently, this format is able to evaluate passwords having length between 8 (minimum password length) and 55 characters (implementation reasons).
-We will increase the max passwords size in the next release.+
  
 +To avoid wasting compute resources, choose just one hash for this attack - either $bitlocker$0$... or $bitlocker$1$...
 +
 +===== Recovery Passwords (but you're out of luck cracking these, so just don't) =====
 +
 +The mask you can use to generate Recovery Passwords is:
 +<​code>​
 +--mask=?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d-?​d?​d?​d?​d?​d?​d
 +</​code>​
 +
 +Please note that the number of possible Recovery Passwords is **way** too large, so there'​s effectively **no chance** that this will find yours unless you recall almost all of it (except for just a handful of digits) and replace most of the "?​d"​ above with the known digits.
 +
 +Recovery Passwords are currently only supported by the BitLocker-OpenCL format (for use on GPUs), not by the corresponding BitLocker CPU format, but like the above paragraph says it's a controversial feature anyhow, which is unlikely to ever help.
 +
 +To avoid wasting compute resources, choose just one hash for this attack - either $bitlocker$2$... or $bitlocker$3$...
 +
 +Samples of User Password/​Recovery Passwords dictionaries you can user are available here: https://​github.com/​e-ago/​bitcracker/​tree/​master/​Dictionary
 ===== Output ===== ===== Output =====
  
Line 104: Line 121:
 </​code>​ </​code>​
  
-This OpenCL implementation has been tested on a GPU GeForce Titan X (Openwall), GPU AMD Radeon HD 7990 Malta and an Intel Core i7 Kaby Lake CPU.+This OpenCL implementation has been tested on a GPU NVIDIA ​GeForce Titan X (Openwall), GPU AMD Radeon HD 7990 Malta and an Intel Core i7 CPU. 
 +For additional information about performance,​ see https://​github.com/​e-ago/​bitcracker#​performance
  
 ===== Updates and changelog ===== ===== Updates and changelog =====
john/OpenCL-BitLocker.1513676196.txt · Last modified: 2017/12/19 10:36 by elenago
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate to DokuWiki Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki Powered by OpenVZ Powered by Openwall GNU/*/Linux