首页站长新闻卡巴斯基:Duqu木马中发现未知编程语言

卡巴斯基:Duqu木马中发现未知编程语言

2012-03-10 32

    近日,卡巴斯基实验室反恶意软件专家表示,经过对Duqu进行不懈地调查,发现了更多关于此木马的细节信息和其复杂的工作原理,该恶意程序之所以如此受到关注,是因为它是一种新型的蠕虫,同去年著名的Stuxnet蠕虫有相似之处。

    代码实现Duqu的框架有几个鲜明的特性:

    一切都被封装成对象

    函数表是直接放在类的实例,运行后可以修改

    实用工具类(链表,哈希)和用户编写的代码之间的没有区别

    对象使用的方法调用,延迟执行队列和事件驱动的回调

    没有运行时库函数的引用,而是用来代替本地Windows API

    对象

    所有的对象都是某个类的实例,确定了60类。每个对象的构造“构造”函数分配内存,在功能表填写,并初始化成员。

卡巴斯基:Duqu木马中发现未知编程语言

    每个对象的布局取决于它的类。有些类似乎有二进制兼容的功能表,但没有任何迹象表明他们有共同的父类(如在其他面向对象语言)。此外,功能表的位置不是固定不变的:一些班级有偏移量为0的实例,但有些不。

卡巴斯基:Duqu木马中发现未知编程语言

    对象被销毁由相应的“析构函数”功能。这些功能通常销毁所有成员字段和无任何使用的内存引用的对象。

卡巴斯基:Duqu木马中发现未知编程语言

    成员函数可以被引用的对象的函数表(如C + +中的“虚拟”功能),或者他们可以直接调用。在大多数面向对象的语言中,成员函数收到“这个”参数,引用的实例的对象,是一个调用约定定义的参数的位置 – 无论是在寄存器中,或在堆栈。这是不是为Duqu框架类的情况下 – 他们可以接受任何登记册或“这个”参数在栈。

    事件驱动的框架

    对象的布局和实施在Duqu框架是绝对不是C + +编写的木马程序

    有特殊对象实施的事件驱动模型

    事件对象,根据本地Windows API的手柄

    线程上下文对象举行的事件和延迟执行队列列表

    与事件的回调对象

    事件监控器,每个监控事件的线程上下文中创建并执行回调对象

    线程上下文存储管理活动线程的列表,并提供每线程上下文对象的访问

    事件驱动模型类似于C和函数传递功能,但没有任何语言直接引用的代码,它看起来像与已知的Objective C编译器编译。

卡巴斯基:Duqu木马中发现未知编程语言

    每个线程上下文对象可以启动“主回路”,查找和处理名单中的新项目。大多数的Duqu代码遵循相同的原则:创建一个对象,几个回调绑定到内部或外部事件,并返回。回调处理程序,然后执行每个线程的上下文内创建事件监视器对象。

    这是一个未知的编程语言编写的Duqu框架。

    和一般的Duqu不同,它不是C + +,它也不是微软的Visual编译的C + + 。

    鉴于的Duqu项目的规模,创建该木马的一定是一个具备特定专业编程能力的人或团队所为。

    神秘的编程语言,明确不是C + +,C,JAVA,Python。

    相比Stuxnet(MSVC + +),这是特殊性定义的的Duqu框架之一。

    更多点击卡巴斯基实验室专家Igor Soumenkov发表的一篇文章

    本文编写:站长百科;转载时请注明来源                 (编辑:树叶)

  • 广告合作

  • QQ群号:707632017

温馨提示:
1、本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。邮箱:2942802716#qq.com(#改为@)。 2、本站原创内容未经允许不得转裁,转载请注明出处“站长百科”和原文地址。

相关文章