Giter Club home page Giter Club logo

bitlocker-spi-toolkit's Introduction

bitlocker-spi-toolkit

Extract BitLocker's volume master key (VMK) from an SPI bus. This repository contains the following Saleae Logic 2 High-Level analyzer extensions:

  • BitLocker-Key-Extractor: Extracting BitLocker keys from the SPI bus.
  • TPM-SPI-Transaction: Decoding TPM SPI transactions from the SPI bus. This extension is not required but is a handy tool for TPM transactions.

In addition, this toolkit includes a Docker container, which can be used to decrypt and mount the drive. For more information, read the following blog post.

Extracted BitLocker key Mounted drive

Installation

  1. Install the High-Level analyzers by selecting Load Existing Extension from Logic 2's extensions tab.
  2. Build the docker image: docker build -t bitlocker-spi-toolkit ..

Usage

  1. Capture SPI traffic by using Logic 2.
  2. Add the built-in SPI analyzer to decode the SPI byte stream.
  3. Add the BitLocker-Key-Extractor analyzer to find BitLocker keys from the SPI stream.
  4. Decrypt and mount the volume: ./mount-bitlocker /dev/sdXX <VMK>
    • This starts the docker container, which all necessary options.
    • This drops you to a new shell, which can be used to manipulate the volume content.
    • To unmount the drive, run exit.

Usage without Docker

Note for macOS users: It is not possible to share Mac host devices with the container. So therefore, you have to do this manually:

  1. Capture the VMK, as shown above.
  2. Build and install the latest version of Dislocker.
  3. Decrypt and mount the volume: ./run.sh <VMK> /dev/sdXX

bitlocker-spi-toolkit's People

Contributors

atucom avatar d0ntrash avatar henkru avatar riqq avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bitlocker-spi-toolkit's Issues

Cheaper hardware

Is there a cheaper alternative for the Saleae Logic Pro 8 hardware used?

Extracting BitLocker key possible with known pin?

We tried to capture the Bitlocker key for a laptop that has a security pin (entered at boot) set. We have access to that pin and the SPI bus communication but have not been able to extract the key. We captured the communication beginning the moment when the key is entered up to the point where Windows start booting.

Do you have any hints about doing that? Is it even possible to get access to the key when the pin feature is enabled (with access to the pin)? The capture is attached. Thanks a lot for your help!
bitlockerCaptureSaleae.sal.zip

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.