Its not easy being Microsoft. Not that you should feel sorry for the company, at least not usually. But it is often put in impossible positions, as McAfee and Symantec are doing now.
The two companies are arguing, mostly in European papers in order to influence antitrust policy in the European Union, that security design decisions in Windows Vista are unfair to them and actually weaken system security. Their arguments are, for the most part, transparently false and self-serving.
There are two main issues being bandied about, kernel patching and the Windows Security Center.
Ill focus on kernel patching here and on the Security Center in another column, although the big issues are largely the same: Microsoft has made design changes in Windows Vista that make the system more secure, but that limit the technical options for third-party products. Those third parties are unhappy.
When I say “Windows Vista” I should be more specific: Kernel patch protection is implemented only in the 64-bit version of Windows Vista, just as it has been in the 64-bit versions of Windows XP and Windows Server 2003.
“Kernel patching” refers to the hooking, at run-time, of operating system calls. A good explanation of this process may be found in the descriptions of its most infamous use: the Sony DRM rootkit affair of about one year ago. As described by Mark Russinovich, now a Microsoft employee, the Sony rootkit used kernel patching to do its dirty work:
Old-time DOS programmers like me are reminded of TSR-hooking in order to implement popup programs and similar facilities.
Sonys example demonstrates what is obvious, that kernel patching can be used for nefarious purposes, and especially for rootkits. This is why Microsoft decided, in the 64-bit versions of Windows, to put checks in the operating system to disallow patching of the system service table. Why not the 32-bit versions as well? Basically out of consideration for vendors like McAfee that had come to rely on it for their own purposes.
Next page: McAfee and Symantecs claims.
McAfee and Symantecs Claims
However, if you listened to McAfee youd get the impression that all versions of Vista are affected by kernel patch protection. I asked McAfee if the company planned to correct this dishonest letter from its Chairman and CEO (here as a PDF), but got no response.
Symantec is more honest, from what I can see, in its public postings on the matter, such as this blog entry and this paper (PDF).
Symantec implies that Microsoft can bypass PatchGuard with its own products:
Microsofts response to this is to say that its own aftermarket products, such as its OneCare security service, have no more access to kernel patching than anyone else. The Vista developers themselves of course have more access to the operating system kernel, but thats just the way it is. Incidentally, Microsoft has some good blogs on the subject: The Windows Vista Security Blog: An Introduction to Kernel Patch Protection and Jeff Jones: Symantecs Plea : Protect Our Protection Racket.
And just because companies dont have the same access to the kernel doesnt mean they dont have sufficient access to the kernel. With kernel patch protection you can still write a kernel-level driver, monitor process creations and DLL imports, then rewrite the binary code before its copied to executable memory. You just cant patch the kernel as its running.
For the more bread-and-butter aspects of malware protection, the right way to go is through a filter driver, a driver type that has existed since time immemorial, at least in Windows terms. Filter drivers are a built-in method in Windows for monitoring and processing I/O, whether its file I/O or network I/O or whatever.
The answer from McAfees and Symantecs point of view is basically to keep Windows insecure. They have discussed whitelisting their products in the kernel, but that really stinks of new problems and hacks and I dont blame Microsoft for not considering it. Given that, McAfee thinks were all better off with a Windows more vulnerable to rootkits and other similar attacks. That way well need more of its products.
All this does put more of a burden and responsibility on Microsoft to respond quickly if, or rather when, security problems develop in the kernel. Thats the way it has to be, and only time will tell if the company lives up to its obligations. I like its incentives in this regard better than McAfees.
Security Center Editor Larry Seltzer has worked in and written about the computer industry since 1983. He can be reached at larryseltzer@ziffdavis.com.