By: Robert Lemos
A stealthy attack that spreads through the auto-update mechanism of an operating system or software has long been a nightmare scenario for security researchers. On June 7, an analysis of the targeted attack, known as Flame, found that the espionage program could do just that.
Using a forged certificate for Microsoft's Windows Update service, the Flame malware can spread through a local-area network (LAN) using a man-in-the-middle attack. The program uses a valid code-signing certificate, a form of encryption that generally ensures that information or code comes from a valid source. In this case, a "world-class cryptoanalysis" effort had managed to create a certificate with the same signature-in cryptography parlance, a "collision"-that could be used to sign code so that it appeared to have come from Microsoft, Marc Stevens, a cryptoanalyst with Centrum Wiskunde & Informatica (CWI) in Amsterdam, said in an online analysis.
"It is able to mask itself as a valid Windows Update and thus ironically can spread itself as a security patch," Stevens wrote. "Flame's ability stems from the fact that it is signed by a fraudulent certificate appearing to be originating from Microsoft which was obtained by launching a cryptographic collision attack."
On June 6, Microsoft released a patch to revoke the certificate and change the process to disallow code-signing capabilities for Windows systems that use terminal services, and created a separate authentication chain.
The attack shows that some smart cryptographers were part of the effort to create the Flame malware, says Roel Schouwenberg, senior security researcher with Kaspersky Labs, which has conducted analyses of Flame, Stuxnet and Duqu, a trio of likely nation-state efforts.
"A completely new attack against MD5? That shows that you have some true crypto experts on the team," said Schouwenberg. "Only very few people in the world are able to pull this off."
CWI's Stevens should know about collisions and the threat they pose to security. In 2008, Stevens and a group of researchers created a way of generating such collisions and presented their research at the Chaos Communications Conference. Called the chosen-prefix attack, the method allows the creation of fake MD5 certificates that match the signature of a valid MD5 certificate. Using the attack, the researchers created a rogue certificate authority, which could have been used to allow attacks on major Internet browsers.
However, the Flame authors did not copy Stevens' research. Instead, they used a previously unknown way of generating a chosen-prefix collision, suggesting that the attackers had developed the method prior to 2009, said Stevens.
"The results have shown that, not our published chosen-prefix collision attack was used, but an entirely new and unknown variant," said Stevens. "Therefore, it is not unreasonable to assume that the particular chosen-prefix collision attack variant underlying Flame had already been in development before June 2009."
Companies need to assess what the cryptographic break means for their use of MD5, says Kaspersky's Schouwenberg.
"One of the major questions is, 'What does this mean for MD5 itself?'" asked Schouwenberg. "This may be the final nail in the coffin of the technology."