Follow TG Daily

Most Discussed Articles

More Discussions»

Articles By Tag

3G amd Android antitrust apple ARM blackberry china EU google Green Dam hp ibm intel iphone microsoft mozilla netbook nintendo nokia PS3 Samsung security smartphone Sony twitter upgrade wii Windows 7 Xbox 360
Read more at
   SmallNetBuilder.com
Try our new and free
Price Comparison Service

Partners

Reviews & Rankings



Two rootkit-like kernel level vulnerabilities discovered in Windows on x86 and Itanium

PDF Print E-mail
Software
By Rick C. Hodgin   
Tuesday, October 14, 2008 16:16
San Jose (CA) - A security company called SkyRecon Systems has uncovered two kernel-level vulnerabilities present in multiple versions of the Windows operating system, including server versions. These flaws occur not only on x86-based PCs in both 32-bit and 64-bit mode, but also on 64-bit Itanium machines. As is common with this kind of exploit, the vulnerabilities are the result of a flaw in the Windows design and are not the result of hardware features. SkyRecon is working with Microsoft to release patches for the vulnerabilities later this month.


CVE-2008-2252 and CVE-2008-3464

Affected operating systems include all versions of Windows XP Professional, Windows 2000 Server, Windows 2003 Server. CVE-2008-2252 also affects Vista.

These vulnerabilities leave the system open to a type of attack which allows invading code (a virus or worm) to achieve kernel-level access. This is a common exploit used by something called a root-kit, which is a way to achieve kernel-level access by normal user programs. Basically, the results of this exploit mean nothing inside the core operating system is left secure, and nothing would be potentially out of bounds for access if such an exploit were used.

To explain this further, consider the architecture of the x86 CPU.


RING0 - RING3

In the Windows operating system there are several levels of code execution. On the x86, these logical barriers exist in hardware via someting called RING0, RING1, RING2 and RING3. A newer level called RING-1 (negative one or minus one) was created for the hypervisor layer.

They're called rings because of the way hardware designers visualize security. The most secure portions are on the outside. In this context, being more secure means being able to do less. The further away from the core an application is, the less it can do.

The concentric rings end up at the RING0 layer, which looks like a bull's eye on a target. From inside RING0 nothing is truly secure. The only way security is maintained in RING0 code is by adhering to strict software protocols. That means a program doesn't do what a program's not supposed to do. It is literally the only defense there is against RING0 code.

A RING0 program, for example, can access all of memory - even memory running in other programs. It can also, of course, access all of the hardware on the machine. It is for these reasons that only the most trusted core algorithms operate in this ring. Everything else operates in RING1 or higher, which provides increasing levels of insulation against faulty programs taking the machine down.

Typical user applications run in RING3.


RING3 becomes RING0

These newly discovered vulnerabilities allow a RING3 application to achieve RING0 execution. As such, what begins initially as a normal user application running in Windows ultimately takes complete control over the machine. It is unlikely that such an exploit would be useful for any purpose other than taking the machine down or extracting information from it, both of which would be quite negative to the user.

One possible useful side-effect of this vulnerability would be for debugging code during software development. By introducing a high-level program into Windows, and then safely and without purposeful malice, achieving RING0 access, all of the system would be exposed and could be visualized by a regular user application. If someone were developing an application and needed access to inner-parts of the core OS that aren't normally present, then that information might be extremely useful. It's actually quite ironic because this week I am literally working on a problem that could benefit from using this exploit.


Security bulletins

Microsoft has issued security bulletins for these exploits: MS08-003. They have identified them as "important." Microsoft has four categories used for security issues, with important being a significant designation:

Critical
A vulnerability whose exploitation could allow the propagation of an Internet worm without user action.

Important
A vulnerability whose exploitation could result in compromise of the confidentiality, integrity, or availability of users data, or of the integrity or availability of processing resources.

Moderate
Exploitability is mitigated to a significant degree by factors such as default configuration, auditing, or difficulty of exploitation.

Low
A vulnerability whose exploitation is extremely difficult, or whose impact is minimal.
Comments (9)Add Comment
Oct 14, 2008 17:20     
Oct 14, 2008 19:14     
Oct 14, 2008 19:24     
Oct 14, 2008 20:43     
Oct 14, 2008 23:50     
Oct 15, 2008 01:54     
Oct 15, 2008 07:20     
Oct 15, 2008 09:56     
Oct 15, 2008 15:59     

Write comment
smaller | bigger

busy
Recommend article:
Slashdot
Digg
Delicious
Technorati
YahooMyWeb
Stumble
NewsVine
Ma.gnolia
Subscribe to the TG Daily Newsletter
Email:
 

Shop Keywords:

-view -software -140 --140
Powered By Page_Cache by Ircmaxell
Generated in 0.896484136581 Seconds