Microsoft issued an update June 3 to address a certificate issue exploited in the Flame malware attacks.
Flame, which was publicized by security researchers last week, is a cyber-espionage toolkit that incorporates a wide range of functionality, including intercepting Web traffic, recording audio and taking screenshots.
According to Microsoft, components of Flame use were signed with an unauthorized digital certificate that chained up to a Microsoft sub-certification authority issued under the Microsoft Root Authority. This happened via the Terminal Server Licensing Service, which Microsoft operates to issue certificates to customers for “ancillary PKI- [public-key infrastructure-] based functions” in their enterprise.
By signing malware with fake certificates, attackers can trick browsers and applications into trusting malicious content, enabling activities such as phishing and man-in-the-middle attacks.
“When we initially identified that an older cryptography algorithm could be exploited and then be used to sign code as if it originated from Microsoft, we immediately began investigating Microsofts signing infrastructure to understand how this might be possible,” explained Jonathan Ness, of Microsoft Security Response Center engineering team.
“What we found is that certificates issued by our Terminal Services licensing certification authority, which are intended to only be used for license server verification, could also be used to sign code as Microsoft. Specifically, when an enterprise customer requests a Terminal Services activation license, the certificate issued by Microsoft in response to the request allows code signing without accessing Microsofts internal PKI infrastructure.”
“As soon as we discovered the root cause of this issue, we immediately began building an update to revoke the trust placed in the ‘Microsoft Enforced Licensing Intermediate PCA’ and ‘Microsoft Enforced Licensing Registration Authority CA’ signing certificates,” Ness blogged.
“That update is available today through Windows Update and Automatic Updates. This update places three certificates into the Windows Untrusted Certificate Store. We have also discontinued issuing certificates usable for code signing via the Terminal Services activation and licensing process.”
The use of unauthorized certificates is another link between Flame malware and Stuxnet and Duqu, which both used fraudulent or stolen certificates. Just recently, researchers Moxie Marlinspike and Trevor Perrin outlined a proposal they called TACK, or Trust Assertions for Certificate Keys, which they contend can help address the problem of spoofed Secure Sockets Layer (SSL) certificates by enabling a site to sign its TLS server’s public keys with a TACK key.
“Having a Microsoft code signing certificate is the Holy Grail of malware writers,” blogged Mikko Hypponen, chief research officer at F-Secure. “This has now happened. I guess the good news is that this wasn’t done by cyber-criminals interested in financial benefit. They could have infected millions of computers. Instead, this technique has been used in targeted attacks, most likely launched by a Western intelligence agency.”
Editor’s Note: The headline and deck of this article was updated to reflect that Microsoft issued an update to revoke trust in certain certificate authorities.