Feeds

0wning Vista from the boot

The VBootkit authors speak out

Security for virtualized datacentres

How was vbootkit developed?

Nitin & Vipin: Last year during pentesting a client, we needed something that could load our code in kernel, without touching hard-disk.

This started bootkit development. We developed a bootkit for the complete family of Windows NT (including 2000 /XP/ 2003 except Windows NT itself). Then Vista RC1 arrived, since it contained a brand new OS loading mechanism (the boot process is completely different from previous versions), we started analyzing Vista. The process included studying Vista's MBR, NT Boot sector, Boot manager (Bootmgr.exe), Windows Loader (Winload.exe) and Vista's Kernel (NTOSKRNL.EXE). Several kernel-land shell codes were developed to be used as a payload in different scenarios.

Why haven't you released the source code yet?

Nitin & Vipin: We don't want someone to misuse it.We want to show that an attack vector like vbootkit can be used to circumvent whole kernel protections.

Do you need any particular hardware feature?

Nitin & Vipin: No, it doesn't need any particular hardware or cpu capable of virtualization.

What does it patch exactly?

Nitin & Vipin: Mainly we patch the windows boot manager, the windows loader, and the vista kernel.

In the reboot persistent version of vbootkit we also patch MBR. It patches few security checks such as PE security patch, digital signature patch and other patches to maintain control of the boot process. If we miss any patch system won't boot at all.

Please tell us more about the code you had to modify, the shellcodes you developed, and the code that runs when the system is loaded.

Nitin & Vipin: The code modifications are done for the security checks. For example, the PE checksum, since we modify files in memory, they should pass through checks, so, we calculate the new checksum and put it in place.

We have to modify the Vista kernel to keep ourselves in control. The modification lets us stay in spare parts of the kernel, and then we dispatch our payload, which is a shellcode which keeps on escalating commands to System privileges. We also have other kernel land shellcodes such as registry modifications to start the telnet server.

The POC video shows a privilege escalation shellcode. It is just another thread which finds cmd's, escalates them and then sleeps for another 30 secs, so that no noticeable performance loss occurs. The shellcode has negligible affect on system performance.

How much does Vbootkit affect the performance of the system?

Nitin & Vipin: vbootkit has a very little affect on the performance (less than .01%). This is because it doesn't execute at all times, it works, sleeps, awakes, completes work, sleeps and so on (by the way, sleeping doesn't take much CPU cycles).

In the proof of concept videos, Vista is running in vmware on our 4 years old Pentium-IV 2.00Ghz, 512 Ram, 40 Gb hard-disk, Geforce2 MX 400 graphics card. That is why it seems slow :)

Are you taking advantage of a bug in Vista to launch your attack?

Nitin & Vipin: We can't say that we exploited a bug in Vista's kernel (at least related to this scenario). We just created a tunnel to Vista's kernel which doesn't have any protection barriers. Therefore restores full control of the machine to the user.

Could you use vbootkit to bypass Vista's product activation?

Nitin & Vipin: Yes, It can be programmed to bypass Vista's product activation.

Have you had any contact with Microsoft about this?

Nitin & Vipin: We don't have any official contact. But we have discussed this with several Microsoft guys.

What is your suggestion to fight bootkits?

Nitin & Vipin: Software only protections are not enough to protect from bootkits. The only protection available is from hardware (Trusted Platform Module).

Microsoft can just raise the barrier for bootkits by changing algorithms, but there can be no real protection from bootkits using only software methods. Use Secure Boot (TPM).

Would you like to add something?

Nitin & Vipin: The beauty of VBootkit lies in the fact that it isn't about someone else controlling your machine. It's about you controlling your own machine, so you can run software of your choosing. Vbootkit gives control back to the user.

This article originally appeared in Security Focus.

Copyright © 2007, SecurityFocus

Federico Biancuzzi is freelancer. In addition to SecurityFocus he also writes for ONLamp, LinuxDevCenter, and NewsForge.

Secure remote control for conventional and virtual desktops

More from The Register

next story
NASTY SSL 3.0 vuln to be revealed soon – sources (Update: It's POODLE)
So nasty no one's even whispering until patch is out
Russian hackers exploit 'Sandworm' bug 'to spy on NATO, EU PCs'
Fix imminent from Microsoft for Vista, Server 2008, other stuff
Microsoft pulls another dodgy patch
Redmond makes a hash of hashing add-on
'LulzSec leader Aush0k' found to be naughty boy not worthy of jail
15 months home detention leaves egg on feds' faces as they grab for more power
Forget passwords, let's use SELFIES, says Obama's cyber tsar
Michael Daniel wants to kill passwords dead
FBI boss: We don't want a backdoor, we want the front door to phones
Claims it's what the Founding Fathers would have wanted – catching killers and pedos
Kill off SSL 3.0 NOW: HTTPS savaged by vicious POODLE
Pull it out ASAP, it is SWISS CHEESE
prev story

Whitepapers

Forging a new future with identity relationship management
Learn about ForgeRock's next generation IRM platform and how it is designed to empower CEOS's and enterprises to engage with consumers.
Why cloud backup?
Combining the latest advancements in disk-based backup with secure, integrated, cloud technologies offer organizations fast and assured recovery of their critical enterprise data.
Win a year’s supply of chocolate
There is no techie angle to this competition so we're not going to pretend there is, but everyone loves chocolate so who cares.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Intelligent flash storage arrays
Tegile Intelligent Storage Arrays with IntelliFlash helps IT boost storage utilization and effciency while delivering unmatched storage savings and performance.