Anibal Sacco and Alfredo Ortega, both exploit writers for Core Security Technologies, were able to inject a rootkit into commercial BIOS firmware using their own Python-based tool that installed the rootkit via an update, or flash, process.
This more "persistent" rootkit is more dangerous than a regular rootkit because it could use the BIOS-located network stack to attack other machines, as well as "using normal exploits, without any access to the disk or memory in the operating system," the researchers said.
The concept of BIOS-based rootkits is nothing new in the research community. But Sacco and Ortega took it up a notch with a generic implementation that can work across various operating systems and ultimately give an attacker control of the infected machine. The researchers were able to successfully attack OpenBSD and Windows machines with the BIOS code injection attack.
They also say virtual machines are prone to this attack, as well. BIOS is embedded in the main VM process of VMWare, for instance.
Still, the attack is relatively sophisticated, and the attacker must have administrative rights to the targeted machine before he or she can flash the rootkit to the BIOS.
Such a rootkit is difficult to eradicate, too: Even wiping the hard drive and reinstalling the OS won't get rid of the rootkit, the researchers say. That's because the rootkit runs without a hard disk, and because it runs before any other code on a machine, it could let the attacker deactivate AV software as well, Sacco and Ortega say.
What's the best defense against such an attack? The researchers say it's tough to prevent any attack from an advanced rootkit like this. The best options, they say, are to prevent the flashing of the BIOS by enabling "write" protection on the motherboard, or deploying digitally signed BIOSes, for instance.
Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message