• 病毒分析第一讲,分析病毒注意事项,以及简单分析主要功能


            病毒分析第一讲,分析病毒注意事项,以及简单分析主要功能

    一丶认识木马和病毒的区别

    木马和病毒是两个不一样的,有人会把木马认为是病毒,但其实不是

    说下区别

    木马:

      木马没有破坏性,木马主要功能是收集用户信息,控制机器等等.

    病毒:

      病毒一般带有破坏性的行为,比如格式化盘符,修改电脑的文件,传染....

    二丶分析病毒的前提准备

    1.在分析病毒样本之前,首先要把病毒的名字修改一下.

    比如:

      ,加上.v后缀

    2.使用虚拟机进行分析(当然你可以用真机分析,^_^),并且建立虚拟机快照

    虚拟机软件

    3.建立快照

     建立快照之前,建议把所以该用到的工具进行配置.配置好了一切就可以开始正常操作了.

    -

    4.观察病毒行为

      1.第一种分析方式

          关键API下断点

        CreateFile  CreateProcess  OpenProcess, WriteProcessMemory  VirtualAllocEx,服务相关,注册表相关,网络相关,因为只要是病毒,肯定会操作的.

      2.第二种分析方式

        使用一种观察其行为的工具,在虚拟机中看看在怎么做.

        工具:

    工具会打包上传

    安装好之后的界面:

    设置:

      工具-选项-保护-设置保护模式

      1.学习模式, 可以检测特定程序的使用的关键API,比如: 创建文件,修改内存...但是不阻止

      2.正常模式,正常模式则会在调用这些关键API之后,则会问你是否允许操作

      3.安静模式,安静模式则不操作,不提示.

    三丶在学习模式下,观看病毒行为

    一丶分析病毒的基本行为

    此时,我们可以把我们的病毒样本放到虚拟机中运行了,如果建立了快照,则可以运行起来了,到时候恢复快照即可.

    病毒样本:

      

    拖放到虚拟机中运行,先打开Mal病毒分析工具

    并运行.

    第一步初次分析得到

     

      可以得出

      1. 主体样本会释放 SampleSrv.exe子体

      2.主体创建进行,运行SampleSrv.exe

      3.主体不断的修改其他进程内存

      4.子体SamPleSrv.exe释放DestToplayer.exe

      5.字体SamPleSrv.exe创建进行运行了DestToplayer.exe

      6.Desttoplayer.exe运行iexplore.exe

      7.Iexplore.exe修改注册表的值

      8.Iexplore.exe不断的修改文件

    由此得出流程图

      

     二丶根据第一次分析,分析具体怎么做.

      根据第一次的分析,我们发现Iexipore.exe (也就是IE浏览器)不断的修改文件(感染文件)

    1.附加感染文件

    那么此时,我们OD附加一下,然后在CreateFile下断点,因为感染文件肯定会打开文件.

    OD附加进程是存在的,因为创建进程的时候,窗口已经隐藏了.

    2.打开模块,关键api下断点

    ALT + E打开

    CTRL + N 查看CreateFile

    3.关键API下断点

    4.栈回溯看其谁调用

    5.查看节,看下属于哪个节

    属于一个堆内存

    节区开始是

    2001000

    大小是 D000

    我们跳转到这个节地址

    在内存中看到,它是一个EXE? MZ开头

    我们查看下OEP,然后在内存中DUM这块内存下来.

    B0开始是我们的PE头,那么 OEP的入口点是7C79

    直接DUp内存

    6.Dup内存

    首先用的这个工具是OD插件中带的.网上可以查到很多.(工具会打包)

    7.IDA分析dump出来的文件

    7.1,分析导入表,查看CreateFile被谁引用

    按X键看被谁引用

    一步一步往上跟

    第一次跟到这里,我们点击上面的注释哪里,可以继续网上跟,看谁引用了.

    注意,上面的注释没有我这么多我们要设置一下 

    中文:设置 - > 常规 - > 显示交叉参考 - > 设置你喜欢的数目

    英文: Options - > General - > Cross-references -> disassembly(Non-Graph) -> 设置你喜欢的

    一层一层的交叉引用展开,粗略的按下F5键看一下,其中一个是修改PE文件的,暂时可以将这个引用修改为 修改PE 节(ChangePE Sections)

    一层一层的往上跟可以看到遍历文件,所以我们修改一下函数名字

    继续网上跟可以看出获得磁盘驱动器的函数

    按下x,看下此函数谁调用的.我们发现它是一个线程开辟去做的事情,那么这个线程看下是谁用的.

    那么继续往下追则是DLLEntry了,也就是 DLL main DLL的入口点了.

    由此得出,这个是DLL,被注入的IE中的,然后执行程序,不断循环遍历文件,进行感染exe文件的.

    那么我们要知道怎么注入的,在上面的沙箱中也没看到,明天讲解.

     链接: https://pan.baidu.com/s/1eRSOjpK 密码: 19jt

  • 相关阅读:
    10. 王道考研-树与二叉树
    Shell基础论证实例
    关系型数据库与非关系型数据库区别
    中高级测试工程师面试题
    idea中cucumber环境搭建
    Java开发中对Redis的基本操作总结
    TestNG 单元测试框架(针对于testNG.xml配置)
    jmeter(四十五)常用Beanshell脚本
    Jmeter(二十一)_脚本两种参数化
    Jmeter(十五)_上传与下载
  • 原文地址:https://www.cnblogs.com/iBinary/p/7882980.html
Copyright © 2020-2023  润新知