« Previous article — Next article »

Windows .NET rootkits are easy

April 23rd, 2009 Posted by D Webber

A researcher has published details and tools helpful for installing rootkits into the Windows .NET framework.

Like the various Windows OSs themselves, the .NET framework uses cryptographic signatures for libraries and other components to identify unauthorized alteration. However, Microsoft chose to ignore them. From the paper:

…the SN [strong name] mechanism does not check the actual signature of a loaded DLL but just blindly loads a DLL from inside a directory containing the DLL signature string.

So although components in the .NET runtime are cryptographically signed by Microsoft, the signature is ignored. An attacker can insert their own  modified library just by putting it into a directory that has the right name and voila! the malware is completely trusted.

I can guess that Microsoft chose this shortcut to speed up the framework. The .NET framework was created to destroy compete with Java, which is often criticized for taking too long to initialize. By ignoring signatures, .NET apps can start up faster, with the minor disadvantage of not being able to trust anything written in .NET.

Subverting the .NET class libraries is a fantastic vector of attack:

Microsoft has dismissed this vulnerability as not a concern since an attacker needs to have administrator privileges. Well, since nearly all Windows desktop users run with full administrative rights (and therefore so do all their apps, including email client and web browser), administrator privileges is a given. So why does the Windows OSs bother with any self protection mechanisms at all?

Related posts:

Posted in Windows security |
Tags: , , ,

Comments for this article are closed.