A bug in Microsoft's Java virtual machine (JVM), a part of Internet Explorer 4.0 and 5.0, could give hackers complete control of users' Windows systems, a group of security experts said on Monday.
The Princeton Secure Internet Programming team, in collaboration with Drew Dean at Xerox PARC and Dan Wallach at Rice University, discovered a security flaw in the versions of Microsoft's JVM that allows the creation of an attack applet that is attached to a HTML page.
"The bug is in Microsoft's Java virtual machine, so any software that could take Java code off the Net and feed it to that virtual machine would be vulnerable," said Ed Felten, associate professor of computer science at Princeton University.
Through the bug, a mobile code attack could be delivered over the Web via Internet Explorer or by e-mail via Outlook or other mail programs that use Microsoft's Java virtual machine. When the attack applet is executed, it can read, modify, or destroy any data on the computer, insert a virus, insert software to spy on the user's future online activities, or take any other malicious action.
The attack does not require the user to do anything beyond viewing the Web page or e-mail message, according to the Princeton group.
The group contacted Microsoft, and the software company issued a fix for the bug at http://www.microsoft.com/Security/Bulletins/ms99-031.asp The flaw is a programming error in one of the security-critical parts of Microsoft's Java class libraries. A malicious applet can exploit this error to violate Java's security rules, known as the Java Sandbox.
"Java is designed with security in mind, but the implementation doesn't always enforce what the design asks for," Felten said. The bug affects only Microsoft's JVM, as the coding is different for other companies' JVM technology, he added.
"Different vendors have different code. One particular feature was coded differently by Microsoft as opposed to Sun or Netscape," Felten said.
This attack has not been actually used by a hacker "in the wild" as far as Microsoft and the Princeton group can tell, but the potential is there.
"It just demonstrates the security risks inherent to the whole mobile code space," said Gary McGraw, vice president of corporate technology at Reliable Software Technologies, a software assurance consultancy, who co-wrote the book "Securing Java" with Felten. "So far the only people who have been finding these major holes in Java happen to be good guys."
However, the very nature of how hackers would make use of the bug to gain access to systems would behoove them to keep quiet about it, according to Mobile code security vendor Finjan.
"If your intent is to take advantage of vulnerabilities, you are going to keep this quiet for as long as you can," said Ron Moritz, chief technology officer at Finjan. "The patching model is great for Microsoft to turn around and say we've got a fix for the problem. But until that is actually deployed in large organisations, there is always going to be some machines that are vulnerable."
Microsoft has been working with the Princeton group and is "unaware of anyone that has been affected by this issue, but encourages users to download the update to ensure they are protected", according to a Microsoft spokesperson.