Live data from Hacker News

Kaspersky: Duqu Trojan uses 'unknown programming language'

zdnet.com

101–110 of 122 posts

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#101
post #13

Earlier quoted context omitted.

As a part-time Schemer this does not surprise me... Schemers have a tendency to craft their own languages. It's only natural.

I've having this vision of a Jedi being required to construct their own light sabre.

... more of a Lambda Knight writing his own lisp ;)

http://en.wikipedia.org/wiki/Knights_of_the_Lambda_Calculus

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#102
post #101

Earlier quoted context omitted.

I've having this vision of a Jedi being required to construct their own light sabre.

... more of a Lambda Knight writing his own lisp ;) http://en.wikipedia.org/wiki/Knights_of_the_Lambda_Calculus

http://xkcd.com/297/

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#103
post #28
post #6

The payload could have been modified (to obfuscate its origin / source language) using a product named codesurfer/x86. http://www.grammatech.com/research/products/CodeSurferx86.ht... If it has access to source code, it can instrument the build process, and obtain disassembly that is high quality enough to support rewriting. Using it's scheme API you can modify the CFG of each procedure directly, serialize the rewritt…

Also interesting that the CodeSurfer product referenced above is "sponsored by several government agencies, including the US Air Force, the US Navy, the Office of the Secretary of Defense, and the Department of Homeland Security", according to its own website. Looks like a cool product.

There are some similar products from sgvsarc called Crystal REVS from SGV Sarc (http://www.sgvsarc.com/products.htm). Does anyone know how they compare against Codesurfer and related products from GrammaTech ?

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#104
post #77

Earlier quoted context omitted.

That's the joke, e.g., "Ruby on Rails expert with 10 years of experience wanted"

Amusing joke, yes, but the parent was pointing out that 5 years experience in Duqu framework might not be impossible. 2012 - 2007 = 5

Ah, I misunderstood. Sorry.

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#105
post #39

This makes fairly little sense to me. Why wouldn't one write such a virus using straight ASM, or possibly write a VM in ASM and write the payload in the VM's bytecode (this option makes it particularly easy to do metamorphic code, though doing it with well-written ASM is also very possible)? It seems like creating a custom language -- or hacking up compiled C++ or whatnot -- is a bit of overkill considering that the…

Nobody does pure ASM anymore. And frankly, all you need for this level of obfuscation is a new compiler pass, something very easy to do in LLVM.

If I were to guess, from the description they gave, it sounds like someone compiled erlang. The two have already been combined: http://www.erlang-factory.com/conference/SFBay2011/speakers/...

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#106
post #50

I will be repeating a notion I read on YCombinator elsewhere - but I, too, find it incredibly cool that we live in a time when wars are fought online like that. We have online revolutionaries anarchists and REAL nation-wide revolutions, started on online networks (talking about Arabic Spring here); we got FBI agents, looking through IP addresses on IRC networks to catch a small group of bragging attackers; we got inv…

I find this theory by a commenter on the original Kaspersky blog post very interesting. I certainly don't really have the knowledge to judge if it has any merits, but I still find it amusing nonetheless.

http://www.securelist.com/en/blog/667/The_Mystery_of_the_Duq...

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#108
post #86

Earlier quoted context omitted.

See my comment below. I don't think you quite understood what I meant. I'm not saying the code was written in scheme. I'm saying there is a product that allows you to write scheme macros to manipulate a database of machine code IR derived from disassembly and then turn the modified database back into an executable. Hiding the source language makes identifying the origin of the malware difficult. There are obvious rea…

Hiding the source language makes identifying the origin of the malware difficult. How so? Knowing that it was written using VC would hardly help identifying the origin. That's not to say that you're wrong about the tool used, but I don't believe the goal was to cover their tracks, but some kind of optimization. Viruses often face space constraints.

I am not knowledgeable enough to say much on this topic, but I was wondering if maybe such rewriting would also serve to make it easy to mutate code to change its signature?

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#109
post #98

Earlier quoted context omitted.

Yeah, the author made a point of noting "this" could be in a register or the stack, but that to me just says "C". The functions moving around wouldn't necessarily mean it is written by hand, though. There just needs to be some rules governing the system and we don't know what those rules are (yet). I would just be very surprised if this is anything other than some convention developed on top of C.

I don't immediately see why it would be putting arbitrary data in front of the vtable unless it's done by a person. Do you have any ideas?

Perhaps if they posted more examples.. I could see it being useful to put the "data" before the vtable in certain types so that one could simply cast the type to get the value instead of having to call an accessor function. A string type could have the char* as the first member. A linked list could have the data void* as the first member. If they posted a complete list of all the types they have found and which ones had non-standard vtables, it might be easier to make a call on whether it was done by hand or not.

Re: Kaspersky: Duqu Trojan uses 'unknown programming language'

#110
post #51
post #50

I will be repeating a notion I read on YCombinator elsewhere - but I, too, find it incredibly cool that we live in a time when wars are fought online like that. We have online revolutionaries anarchists and REAL nation-wide revolutions, started on online networks (talking about Arabic Spring here); we got FBI agents, looking through IP addresses on IRC networks to catch a small group of bragging attackers; we got inv…

You seem to be pretty enthusiastic about rather worrying and even disturbing developments. This is not a science fiction novel, this is real life. One day it is Israeli hackers destroying Iranian centrifuges, perhaps the next day it will be nuclear reactor facilities that are sent into meltdowns.

>perhaps the next day it will be nuclear reactor facilities that are sent into meltdowns.

Considering some scientists were fearful that Stuxnet would cause a mini Chernobyl-like disaster, we can safety say that's not an unlikely scenario.

http://articles.nydailynews.com/2011-01-17/news/27087828_1_r...

Post reply on HN