返回新闻列表

卡巴斯基实验室专家确认Duqu木马中所使用的神秘编程语言;对编程社区的支持表示感谢

        卡巴斯基实验室最近呼吁编程社区帮助识别Duqu木马中恶意有效负荷DLL文件中包含的一段未知代码,从而揭开Duqu木马的疑团。其中的未知代码段被称作“Duqu架构”,是该恶意软件有效负荷DLL文件的一部分,其主要功能是同命令控制中心(C&C)服务器进行交互。

        在收到大量来自编程社区的反馈后,卡巴斯基实验室的专家几乎可以肯定,Duqu架构包含由Microsoft Visual Studio 2008编译的“C”源代码,并且对代码体积和代码嵌入进行了优化。源代码还采用了定制的扩展名,便于利用C进行面向对象的编译,通常称作“OO C”。

        这类内部编程方法非常复杂,经常应用于内部软件项目中。在当代恶意软件中并不常见。

        虽然很难解释为什么网络罪犯会利用OO C编程,而没有采用C++编写Duqu架构。推测其原因主要如下:

  • 对源代码更好的控制:当C++最早发布时,很多资历较老的编程人员并没有立刻就采用这一语言。因为他们对C++的内存分配以及其它编程特性不信任,可能导致代码无法直接执行。而OO C架构则更可靠一些,产生不可预测的行为几率较低。
  • 极高的可移植性:大约10-12年前,C++还没有完全标准化。所以,当时的C++代码可能无法同所有的编译程序互通。使用C的话,编程者所写程序的可移植性大大加强,因为C能够面向当时所有的平台,而不受C++各种限制的影响。

        “上述两个原因表明,Duqu架构的代码是由经验丰富的“老派”编程团队所开发的。目的是创造一个可定制的架构,从而确保其成为具有高度灵活性和可扩展性的攻击平台。这些源代码可能之前用于其他网络行动中,之后才被重新定制,集成到Duqu木马中,”卡巴斯基实验室的恶意软件专家Igor Soumenkov解释说,“但是,有一点我们可以确认。即该恶意软件所使用的这些技术一般只存在于精英软件开发者中,很少应用于当今的恶意软件中。”

        在此,卡巴斯基实验室向那些帮助识别Duqu木马中未知代码的所有人表示感谢。

        想要阅读由Igor Soumenkov撰写的分析报告全文,请访问Securelist

        分析报告包括该木马架构的技术详情、识别手段以及卡巴斯基实验室收到的编程社区技术反馈,帮助我们对该木马进行分析。