How Stuxnet Malware Used AutoRun Trick to Infect PCs

Early versions of Stuxnet abused Windows' AutoRun feature in a bid to infect industrial control systems, security company Symantec reveals.

More details about the Stuxnet worm trickled out Sept. 24 as security researchers continue to peel back the layers of the complex malware.

According to Symantec researcher Liam O Murchu, early versions of Stuxnet were targeting industrial control systems without the help of a vulnerability at all. Instead, the malware abused Windows' AutoRun feature to compromise machines through infected USB devices.

"The worm's trick was to create an autorun.inf file in the root of removable drives that served two different purposes," blogged O Murchu, manager of operations for Symantec Security Response. "The specially crafted file could be interpreted as either an executable file or as a correctly-formatted autorun.inf file.

"When Windows parses autorun.inf files the parsing is quite forgiving," he continued. "Specifically, any characters that are not understood as being part of legitimate AutoRun commands are skipped as garbage and parsing continues. Stuxnet uses this fact to its advantage by placing the MZ file first within the autorun.inf file. When Windows parses the autorun.inf file all of the MZ content will be ignored as garbage until the legitimate AutoRun commands that are appended at the end of the file are encountered."

The AutoRun commands specify that the autorun.inf file itself to be executed, which in turn executes the worm's code, he explained. In case that doesn't work, there was an "Open" command added to the context menu. If a user chooses to open the drive with the malicious Open command, the worm will execute, O Murchu wrote.

Revelations about the Stuxnet worm have kept coming in the months since the worm was first unmasked. The code to exploit the .lnk vulnerability first linked to the malware was added around March, Murchu wrote. But in addition to that bug, Stuxnet has been observed exploiting three other Windows vulnerabilities, including two privilege escalation bugs that are yet to be patched. The other vulnerability exists in the Windows print spooler service, and was patched earlier in September.

Despite initial reports, only three of the four Windows bugs were zero-days; as it turns out, the print spooler issue was first discussed by Vupen Security in an article in a 2009 edition of Hakin9 magazine. Microsoft said it was not told of the vulnerability then, however.

The sophistication of the attack has lead some to speculate about the involvement of a national government, especially since the malware was designed to go after industrial control systems. But whatever the original target or purpose, Stuxnet has spread out and infected computers all over the world, and the security community has been working to keep up.

Though Eric Knapp, director of critical infrastructure markets for NitroSecurity, said there is no hard evidence to support the claim of state-sponsorship for Stuxnet, he added that there is no arguing the worm's sophistication.

"It's widely recognized as one of the most sophisticated pieces of malware in a long time," Knapp said. "It's built using intimate knowledge of the target systems; uses stolen certificates; is being propagated using multiple zero-day vulnerabilities; it has the ability to update itself peer-to-peer; and it can inject malicious code into a PLC [programmable logic controller]. Taken as a whole, Stuxnet is extremely sophisticated and well-orchestrated. This isn't hype."