Like most BIOSes, Intel's firmware PE94510M.86A.0050.2007.0710.1559
(07/10/2007) can be used to ask a password to users at boot time to
implement a pre-boot authentication.
The password checking routine of this firmware fails to sanitize the
BIOS keyboard buffer after reading user input, resulting in plain
text password leakage to local users.
The BIOS'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.
- --[ Impact:
Plain text password disclosure. Local access is required, but no
physical access to the machine.
The level of privilege required to retrieve the password from memory
is OS dependant and varies from guest user under Microsoft Windows
(any) to root user under most Unix based OSes.
* Intel Product Security Incident Response Team (iPSIRT) has
aknowledged the vulnerability and is proactively working on a fix.
- --[ 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 15th 2008
* First vendor reply on July 15th 2008
* CERT assigns tracker VU#604539 to the bug.
* First Public disclosure at Defcon 16 on August 10th 2008
If you have additional information or notice any errors regarding this security advisory, please use contact form or email us at info()securityreason()com.
Microsoft Device IO Control wrapped by the iphlpapi.dll API shipping with Windows Vista 32 bit and 64 bit contains a possibly exploitable, buffer overflow corrupting kernel memory.