When the Flame malware was found a few months ago, it was characterized as “highly advanced,” “supermalware” and “the biggest malware in history.” These comments were immediately met with ridicule from experts who were quick to point out that there was nothing particularly new or interesting in Flame.
Suggestions that Flame was created by a government and, like Stuxnet and Duqu, would be the product of a nation-state were met with ridicule as well.
But let's have a look at what we've learned about Flame.
Flame has a keylogger and a screengrabber. The naysayers are unimpressed. “We've seen that before. Flame is lame.”
Flame has built-in secure shell (SSH), secure socket layer (SSL) and LUA [scripting language] libraries. “Bloated. Slow. Flame is still lame.”
Flame searches for all Office documents, PDF files, Autodesk files and text files on the local drives and on network drives. As there would easily be too much information to steal, it uses IFilters [a plugin] to extract text excerpts from the documents. These are stored in a local SQLLite database and sent to the malware operators. This way they can instruct the malware to home in on the really interesting material. “Flame is lame.”
Flame can turn on the microphone of the infected computer to record discussions spoken near the machine. These discussions are saved as audio files and sent back to the malware operators. “Flame is lame.”
Flame searches the infected computer and the network for image files taken with digital cameras. It extracts the GPS location from these images and sends it back to the malware operators. “Still, Flame is lame.”
Flame checks if there are any mobile phones paired via Bluetooth to the infected computer. If so, it connects to the phone, collects its address book and sends it to the malware operators. “Flame is still lame, kind of.”
The stolen information is sent out by infecting USB sticks that are used in an infected machine and copying an encrypted SQLLite database to the sticks – to be sent when they are used outside of the closed environment. This way data can be exfiltrated even from a high-security environment with no network connectivity. “Agent.BTZ [malware] did something like this already in 2008. Flame is lame.”
When Flame was finally detected, the attackers destroyed all evidence and actively removed the infections from the affected machines. “Doesn't prove anything. Lame.”
The latest research proves that Flame is indeed linked to Stuxnet. And just one week after Flame was discovered, the U.S. government was implicated in developing Stuxnet together with the Israeli Armed Forces. “You're just trying to hype it up. Still lame.”
Flame creates a local proxy which it uses to intercept traffic to Microsoft Update. This is used to spread Flame to other machines in a local area network. “Lame. Even if other computers would receive such a bogus update, they wouldn't accept it as it wouldn't be signed by Microsoft.”
But, wait. The fake update was signed with a certificate linking up to Microsoft root, as the attackers found a way to repurpose Microsoft Terminal Server license certificates. Even this wasn't enough to spoof newer Windows versions, so they did some cutting-edge cryptographic research and came up with a completely new way to create hash collisions, enabling them to spoof the certificate.
And suddenly, just like that, the discussion on whether Flame is lame or not …vanished.
Mikko Hyppönen is chief research officer at F-Secure, based in Helsinki, Finland. This column is adapted from a post to his company blog.