<<< Date Index >>>     <<< Thread Index >>>

[IVIZ-08-003] TrueCrypt Security Model bypass exploiting wrong BIOS API usage



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

- -----------------------------------------------------------------------
[ iViZ Security Advisory 08-003                            25/08/2008 ]
- -----------------------------------------------------------------------
iViZ Techno Solutions Pvt. Ltd.
                                            http://www.ivizsecurity.com
- -----------------------------------------------------------------------

* Title:     TrueCrypt Security Model bypass exploiting wrong BIOS API
             usage
* Date:      25/08/2008
* Software:  TrueCrypt

- --[ Synopsis:

    The password checking routine of TrueCrypt fails to sanitize the
    BIOS keyboard buffer before AND after reading passwords.

- --[ Affected Software:

  * TrueCrypt 5.0 (possibly older versions also)

- --[ Technical description:

    Truecrypt's pre-boot authentication routines use the BIOS API to
    read user input via the keyboard. The BIOS internally copies the
    keystrokes in a RAM structure called the BIOS Keyboard buffer
    inside the BIOS Data Area. This buffer is not flushed after use,
    resulting in potential plain text password leakage once the OS
    is fully booted, assuming the attacker can read the password at
    physical memory location 0x40:0x1e. It is also possible for a root
    user to reboot the computer by instrumenting the BIOS keyboard
    buffer in spite of the full disk encryption.


- --[ Impact:

  1) Plain text password disclosure.
     Required privileges to perform this operation are OS dependent,
     from unprivileged users under Windows (any), to root under most
     Unix.

  2) A privileged attacker able to write to the MBR and knowing the
     password (for instance thanks to 1), is able to reboot the computer
     in spite of the password prompted at boot time (and in spite of
     disk encryption) by initializing the BIOS keyboard buffer with the
     correct password (using an intermediary bootloader that will in turn
     run TrueCrypt).

- --[ Full Technical Whitepaper

   http://www.ivizsecurity.com/research/preboot/preboot_whitepaper.pdf

- --[ Vendor response:

  * Vendor denies the vulnerability
  * Fixed in updated versions

- --[ Credits:

    This vulnerability was discovered by Security Researcher
    Jonathan Brossard from iViZ Techno Solutions Pvt. Ltd.

- --[ Disclosure timeline:

  * First private disclosure to vendor on July 29th 2008
  * First vendor reply on July 29th 2008, denying the
    vulnerability.
  * First Public disclosure at Defcon 16 on August 10th 2008

- --[ Reference:

    http://www.ivizsecurity.com/security-advisory.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (MingW32)

iD8DBQFIsnPvkcchhz1mT/IRAvK9AJ9NB+/8OwAm+/pHA0ZaKLjgqu/umwCgtfoJ
QTYYHLIVb80eudsZrlSBx04=
=mttT
-----END PGP SIGNATURE-----