• 病毒分析第二讲,分析病毒的主要功能


    ---恢复内容开始---

                 病毒分析第二讲,分析病毒的主要功能

    经过昨天病毒分析第一讲,得出一个被注入的DLL

    开始分析DLL主要功能

    PS: IDA中,DLL会有各种初始化的代码,和释放资源,所以不再看,只看重要的API

    一丶行为分析(创建命名互斥体,防止病毒多开)

    进入函数去看,从DLLmain入口点分析.

    得出,第一步,病毒为了防止重复注入IE,创建命名互斥体.

    名字是:  "KyUffThOkYwRRtgPP"

     二丶拼接字符串,创建文件,写入系统当前时间

    进入DLLmain第二个函数查看.

    PS:分析到哪里都已经改名字了,原名字不是Init,这个是根据分析里面的函数调用的出来的.

    点击进入,查看具体怎么做了

     

     根据分析,可以分为四部分去看

    1.初始化各种数据

    2.经过一些列自己写的算法运算

    3.获取磁盘和驱动器的信息,并且处理文件

    4.写入系统时间(需要跟随大里面去看)

    虚拟机动态调试查看.

    第一次,通过动态分析,得出会拼接一个字符串,为

    当前的: C:Documents and settingsAdministrator桌面xxxxdmiconf.data

     第二此分析,得出,在目录下面创建这个文件

    写入的内容是时间

    得出第二次行为:

    创建文件dmlconf.dat在当前目录,并且写入文件内容为当前时间

    三丶分析行为三,写入注册表,实现开机自启动

    继续分析DLLmain下面的API

    点击API进去查看.

     

    里面还有一层,进去查看.没有命名的函数都是无关紧要的,这些都是实现命名过了.

    进去一层则看到

    1.打开注册表

    2.遍历注册表的值

    3.修改注册表的值

    4.关闭注册表

    此时我们需要动态查看是进入是修改的那个注册表了.

    1.找到线程回调

    2.线程回调进入下段点,并设置为新的EIP

    设置的快捷键是 Ctrl + * 键

    3.进入Call查看 

     4.查看注册表操作

    得出了要操作注册表

    HEEY_LOCAL_MACHINE SoftwareMicrosoftWindows NTCurrentVersionWinlogon

    这个正好是开机启动项

    经过上面和下面的分析,得出先获取注册表的值,然后申请内存

    写入我们的内容

    时间关系,不一步一不的跟了.

    其实跟进去看的话她会设置自己的子体到里面,这样就会开机自启动了.

    四丶网络相关

     此病毒还涉及到网络相关,但是现在这个病毒现在也链接不了服务器了.所以网络相关的掠过

    如果想明白原理,建议自己跟一下看下也可以.

    五丶修改PE文件,修改Html

    此功能昨天已经快速定位到了.

    鉴于时间关系不一步一步的分析了.此次样本分析完毕.

    得出行为:

      1.使用命名互斥体,防止多开

      2.创建文件在dmlconf.dat在C盘目录下,并写入时间

      3.写入注册表开机自动启动

      4.链接服务器,发送和接受数据

      5.修改PE,以及html

  • 相关阅读:
    debian7安装oracle11g
    unix fopen和fopen_s用法的比较
    QT的三种协议说明
    Qt之遍历文件夹
    Debian 7 安装配置总结
    用户不在sudoers文件中的解决方法 .
    QT断点续传
    QFtp类参考
    FTP服务器简易有效的访问方法
    Java爬虫搜索原理实现
  • 原文地址:https://www.cnblogs.com/iBinary/p/7898188.html
Copyright © 2020-2023  润新知