Alien programming language used in Duqu Trojan

By | March 9, 2012

Malware experts from Kaspersky Lab have asked the programming community for help identifying the programming language, compiler or framework that was used to write an important part of the Duqu Trojan, in the hope that it could reveal clues about who created it or why.

“When we checked Duqu it looked totally unknown and that was very curious, because it’s unclear why something very custom was developed and used,” said Vitaly Kamluk, chief malware expert with Kaspersky Lab’s global research & analysis team.

Understanding how a piece of malware was created can offer clues about where to look for it next or the level of resources required for its development, the security expert said.

Some parts of the Duqu payload DLL, the component responsible for interacting with the command and control servers, downloading and executing additional modules, and performing other tasks, were written in standard C++, but a big chunk of it was not.

“This slice is different from others, because it was not compiled from C++ sources. It contains no references to any standard or user-written C++ functions, but is definitely object-oriented,” said Kaspersky Lab expert Igor Soumenkov in a blog post that describes the particularities of the unfamiliar code.

Kaspersky researchers refer to this portion of the Trojan as “The Duqu Framework” and believe that it might have been created by a different programming team. The unusual code is also particular to Duqu and doesn’t exist in Stuxnet, unlike some other parts that were directly borrowed from the infamous industrial sabotage malware.

“The mysterious programming language is definitively NOT C++, Objective C, Java, Python, Ada, Lua and many other languages we have checked,” Soumenkov said, adding that Kaspersky’s research team has spent countless hours analyzing the code.

The company’s researchers even discussed it with third-party experts, but didn’t get any closer to solving the mystery. “It looks absolutely alien,” Kamluk said.

Finally, Kaspersky Lab appealed to the entire programming community in the hope that someone might recognize the code constructions and figure out what was framework, toolkit or language was used.

The company has received various suggestions in comments on its blog, that range from F, D, Iron Python, High-Level Assembly, Common LISP, Forth, Erlang, Vala, to more exotic tools like RoseRT, which one user claims was used in secure government projects.

“It took us several weeks to check commonly used programming languages and various compilers,” Kamluk said. “So, I guess it may also take some time to check other suggestions.”

via Researchers can’t identify programming language used in Duqu, ask for help.

Duqu authors sprinkle humor in dangerous code

… For all of the concern around Duqu, the most discussed piece of malicious software since Stuxnet, the latest analysis of its code shows its writers have a sense of humor.

Wrapped in the code used to infect computers is an “Easter egg,” or a hidden message. Easter eggs have long been inserted in computer code, often seen only by those who enjoy browsing computer code.

Duqu’s exploit, the code used to take advantage of a software vulnerability, contained the line: “Copyright (c) 2003 Showtime Inc. All rights reserved. DexterRegularDexter.”

The reference to the television show “Dexter” is meant as a joke. The shellcode of the exploit is contained in an embedded font called “DexterRegularDexter,” which is processed by Windows’ Win32k TrueType font parsing engine, wrote Aleks Gostev, a senior analyst with the Global Research and Analysis Team for Kaspersky Lab.

“This is another prank pulled by the Duqu authors,” he wrote.

There actually is no font called Dexter, though, and it is just a name the malware authors assigned to the file, said Costin Raiu, director of Kaspersky’s Global Research and Analysis Team.

Kaspersky and many other computer security companies have been analyzing Duqu since it surfaced. Duqu shares some similarities with Stuxnet, the malware believed to have been created with the intention of disrupting Iran’s nuclear program by tampering with centrifuges used to enrich uranium. But experts remain uncertain if there is a connection between the developers of the two pieces of malware.

Gostev’s latest write up is an analysis of a version of Duqu that came from Sudan’s CERT (Computer Emergency Response Team), which had a sample of Duqu from an unnamed organization that was infected.

Victims are infected by an exploit delivered via a tampered Microsoft Word document, which, if opened, delivers Duqu. Gostev’s post includes a screenshot of the simple email purporting to come from a marketing manager, “Mr. B. Jason,” requesting that the receiver open a Word document and answer a few questions such as “Do you supply marine shipping?”

Other clues in the code have indicated that Duqu could be as much as 4 years old. A driver loaded by Duqu’s exploit into the Windows kernel has a date saying it was compiled on Aug. 31, 2007, Gostev wrote. But that may not be accurate, since Duqu has different components that could have been created at different times.

Another oddity discovered by Kaspersky is how often attacks occurred on Wednesdays.

“The Duqu gang has an affinity for Wednesdays,”Raiu said. “They have repeatedly attempted to steal information from these systems on Wednesdays. This probably indicates a strong routine, almost military type.”

The attackers also took a lot of care when they struck to avoid being detected. They used separate command-and-control servers for each unique set of files. They also crafted a unique Word file for each victim and sent the malicious files from anonymous e-mail accounts, probably on compromised computers, Gostev wrote. They even modified the shellcode for different attacks….

via networkworld

Leave a Reply