• 2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析


    2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析

    1、如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
    监控注册表和文件改动、端口占用、进程驻留等操作。可使用本次实验的netstat记录网络连接情况然后分析,当然wireshark等工具也可以使用。

    2、如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
    可通过查看sysmon日志找到该进程邻近或同一时刻的进程动态,源IP、目的IP,端口号和进程号等,以及进一步分析它所创建的子进程。

    实验内容

    任务一:使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。

    1、在windows命令行下输入命令schtasks /create /TN 20165228netstat /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c: etstatlog.txt"创建名20165228netsta的任务计划

    > TN:Task Name,本例中是netstat
    > SC: SChedule type,本例中是MINUTE,以分钟来计时。本例中设置为1分钟
    > MO: MOdifier
    > TR: Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口
    


    2、通过notepad创建netstatlog.bat
    内容如下:

    date /t >> c:
    etstatlog.txt
    time /t >> c:
    etstatlog.txt
    netstat -bn >> c:
    etstatlog.txt
    

    然后将其放到C盘根目录下(需要管理员权限)
    3、编辑任务操作

    • 进入管理工具,在任务计划程序中找到刚创建的任务20165228netstat
    • 操作页面里的启动程序修改为netstatlog.bat,并且在常规页面里开启以最高权限执行以防权限不够无法在C根目录创建.txt文件


      4、由于是每隔一分钟就记录网络情况,所以此时可以看到netstatlog.txt里已经有更新的内容。(然后等待很长一段时间)

      5、用excel生成图表分析

    任务二:安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为

    1、创建20165228monconfig.txt作为sysmon的配置文件
    内容如下:

    <Sysmon schemaversion="3.10">
      <!-- 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>
    
        <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">winlogon.exe</TargetImage>
          <SourceImage condition="end with">powershell.exe</SourceImage>
        </CreateRemoteThread>
      </EventFiltering>
    </Sysmon>
    

    2、进入sysmon解压后的路径,执行sysmon.exe -i C:20165228monconfig.txt开始安装sysmon

    3、安装完成

    4、如果修改了配置文件,需运行sysmon.exe -c C:20165228monconfig.txt
    5、进入事件查看器查看日志

    • 应用程序和服务日志/Microsoft/Windows/Sysmon/Operational路径下可以找到sysmon日志文件

    • 运行之前制作的后门回连我的kali

    • 查询得到进程号为21672

    • 在日志中以进程号为关键词搜索相关信息

    • 首先找到了我的后门程序

    • 然后发现它还创建了一个子程序conhost.exe

    任务三:恶意软件分析

    分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件
    (3)读取、添加、删除了哪些注册表项
    (4)读取、添加、删除了哪些文件
    (5)连接了哪些外部IP,传输了什么数据(抓包分析)

    1、使用VirusTotal分析恶意软件

    • 将后门程序丢到VirusTotal中进行分析,并得到SHA-1、MD5摘要值、文件类型、大小、TRiD文件类型识别结果和算法库支持情况

      2、使用Process Monitor分析恶意软件
    • 先反弹连接kali,并且得到进程号15152
    • 发现有很多记录,找出需要的很不容易。我发现它有filter功能,于是我以pid is 15152为条件进行了过滤
    • 得到结果

      所以我的后门应该是修改了我的注册表
      3、使用Process Explorer分析恶意软件

      4、使用PEiD分析恶意软件
    • 加壳:
    • 不加壳:

      5、使用systracer分析恶意软件
      保存了两个快照:正常运行和成功回连
    • 通过compare发现注册表里出现了改动
    • 查看后门软件的“opened handles”来对比
    • 查看后门软件的"open port"来对比
      其中192.168.43.219是win10 IP 192.168.43.171是kali IP

    问题

    • 在安装system monitor时,在按照博客编写配置文件开始执行安装后,提示incorrect or unsupported schema version 3.10 . current sysmon schema version 4.20意思是当前sysmon schema 版本为4.20,即3.10为不支持或不正确的版本号。
      解决:我猜测与编写的配置文件有关,刚好在其中找到了有关版本的那一项,该为4.20即可成功安装。

    实验感想

    • 在此次实验中,我使用了许多恶意代码分析软件,从网络连接和端口、系统注册表变化等多方面的监控,然后具体定位到某一个或某一些进程后进入深入分析。一定程度上增加了我们自己排查恶意代码的能力,不再那么依赖杀软,并且对恶意代码的运行情况也有了一些理解。
  • 相关阅读:
    大道至简伪代码形式读后感
    大道至简读后感
    使用类型转换生成六位验证字符,实现用户输入验证码的功能
    flex弹性布局的基本介绍
    清除浮动的方法以及为什么清除浮动
    :target伪类制作tab选项卡
    div中的内容水平垂直居中
    setTimeout和setInterval的区别以及如何写出效率高的倒计时
    margintop影响父元素定位
    关于页面中弹窗的定位问题
  • 原文地址:https://www.cnblogs.com/cloud795/p/10655710.html
Copyright © 2020-2023  润新知