zoukankan      html  css  js  c++  java
  • 2019-2020-2 20175330杨璟旭《网络对抗技术》Exp4 恶意代码分析

    <Sysmon schemaversion="10.42">
      <!-- Capture all hashes -->
      <HashAlgorithms>*</HashAlgorithms>
      <EventFiltering>
        <!-- Log all drivers except if the signature -->
        <!-- contains Microsoft or Windows -->
        <ProcessCreate onmatch="exclude">
          <Image condition="end with">chrome.exe</Image>
        </ProcessCreate>
    
        <ProcessCreate onmatch="include">
          <ParentImage condition="end with">cmd.exe</ParentImage>
        </ProcessCreate>
    
        <FileCreateTime onmatch="exclude" >
          <Image condition="end with">chrome.exe</Image>
        </FileCreateTime>
    
        <NetworkConnect onmatch="exclude">
          <Image condition="end with">chrome.exe</Image>
          <SourcePort condition="is">137</SourcePort>
          <SourceIp condition="is">127.0.0.1</SourceIp>
        </NetworkConnect>
    
        <NetworkConnect onmatch="include">
          <DestinationPort condition="is">80</DestinationPort>
          <DestinationPort condition="is">443</DestinationPort>
        </NetworkConnect>
    
        <CreateRemoteThread onmatch="include">
          <TargetImage condition="end with">explorer.exe</TargetImage>
          <TargetImage condition="end with">svchost.exe</TargetImage>
          <TargetImage condition="end with">firefox.exe</TargetImage>
          <TargetImage condition="end with">winlogon.exe</TargetImage>
          <SourceImage condition="end with">powershell.exe</SourceImage>
        </CreateRemoteThread>
      </EventFiltering>
    </Sysmon>
    

    解读:

    <Sysmon schemaversion="10.42">

    表示Sysmon的版本为10.42版本

     

    exclude表示白名单,即不对标签内的程序进行记录。

    include表示黑名单。onmatch表示匹配。

    ProcessCreate为进程创建

    NetworkConnect表示网络连接

    CreateRemote表示远程线程创建。

    FileCrete Time表示进程创建时间

    step4:以管理员身份打开cmd输入Sysmon.exe -i sysmon20175330.xml
    step5:查看事件查看器,在应用程序和服务日志/Microsoft/Windows/Sysmon/Operational中,可以看到记录的事件。

    3.恶意软件分析

    step1:运行之前实验三的后门程序:

    step2:在事件查看器中查看该后门程序的运行记录

    SearchProtocolHost.exe 和 SearchIndexer.exe 是 Windows Vista、Windows 7 的桌面搜索引擎的索引程序,它会在计算机空闲时自动扫描索引位置的文件名、属性信息和给定类别的文件内容,这些索引位置默认包括桌面、收藏夹开始菜单、系统目录,以及在 Windows 7 中添加到 Libraries 中的目录(Windows Vista 下的用户文件夹,如文档、图片、音乐、视频文件夹),同样也可以作为程序后门来执行。

    使用wireshark对后门软件进行分析

    后门程序使用的通信方式为TCP传输。在被植入后门的Windows主机入侵时,主机与虚拟机首先进行了完整的三次握手

    使用VirusTotal分析恶意软件

    将程序上传到VirusTotal即可获得详细的信息包括大小、 MD5、SHA-1、SHA-256数值以及加密壳类型。

    使用PEiD分析恶意软件

    PEiD(PE Identifier)是一款著名的查壳工具,其功能强大,几乎可以侦测出所有的壳,其数量已超过470 种PE 文档 的加壳类型和签名。

    扫描模式:

    正常扫描模式:可在PE文档的入口点扫描所有记录的签名;
    深度扫描模式:可深入扫描所有记录的签名,这种模式要比上一种的扫描范围更广、更深入;
    核心扫描模式:可完整地扫描整个PE文档,建议将此模式作为最后的选择。 PEiD内置有差错控制的技术,所以一般能确保扫描结果的准确性。前两种扫描模式几乎在瞬间就可得到结果,最后一种有点慢,原因显而易见。
    将实验三中加壳后的后门程序进行扫描
    扫描未加壳程序:
    描加壳程序:

    使用PE Explorer分析恶意软件

    功能极为强大的可视化汉化集成工具,可直接浏览、修改软件资源,包括菜单、对话框、字符串表等; 另外,还具备有 W32DASM 软件的反编译能力和PEditor 软件的 PE 文件头编辑功能,可以更容易的分析源代码,修复损坏了的资源,可以处理 PE 格式的文件如:EXE、DLL、DRV、BPL、DPL、SYS、CPL、OCX、SCR 等 32 位可执行程序。该软件支持插件,你可以通过增加插件加强该软件的功能, 原公司在该工具中捆绑了 UPX 的脱壳插件、扫描器和反汇编器.

    使用引入功能查看文件引用的动态链接库:

    其中系统的内存和管理数据的输入输出操作和中断处理由KERNEL32.dll控制。

    msvcrt.dll为微软编译软件的函数库
    后门程序都会使用KERNEL32.dll,当KERNEL32.dll被调用应当警惕。

    使用Systracer进行分析

    step1:下载并安装Systracer

    step2:点击take snapshot存储快照。

    • 快照一:未移植后门程序
    • 快照二:植入后门程序
    • 快照三:运行后门程序并在kali中实现回连
    • 快照四:执行dir命令

    step3:对快照进行对比

    对比快照一与快照二,可以看得出增加了后门文件20175330.exe

    对比快照二与快照三,发现在后门启动后程序20175330.exe出现在了正式运行的程序

    同多了许多后门程序增加的dll文件

    对比快照三与快照四,发现key_local_machine根键中的内容被修改了。

    实验中遇到的问题

    实验收获与感想

    这次的实验操作难度 不高,主要是在对后门程序的分析上有一些困难,这次实验的重点在于对程序的运行结果,事件日志的分析,开始根本不知道怎么办,后门看了好多同学的博客之后有了大概的方向,中体来说还是很有收获。

    问题回答

    (1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控

    • 将怀疑的程序上传到VirusTotal,全部传完即可
    • 通过PEiD查看程序是否加壳,加壳即有重大嫌疑
    • 通过PE Explorer程序是否引用有关后门的动态链接库
    • 通过wireshark查看传输信息时是否有值得怀疑的端口以及目的
    • 使用Systracer工具拍摄快照

    2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。

     通过systracer工具查看程序对注册表和文件的修改。

    通过Process Explorer工具监控相关进程。

  • 相关阅读:
    【LeetCode 15】三数之和
    【LeetCode 14】最长公共前缀
    【LeetCode 13】罗马数字转整数
    【LeetCode 12】整数转罗马数字
    【LeetCode 11】盛最多水的容器
    【LeetCode 10】正则表达式匹配
    【LeetCode 9】回文数
    【LeetCode 8】字符串转换整数 (atoi)
    【LeetCode 7】整数反转
    【LeetCode 6】Z 字形变换
  • 原文地址:https://www.cnblogs.com/waaaaa/p/12709933.html
Copyright © 2011-2022 走看看