2019-2020 网络对抗技术 20175207 Exp4 恶意代码分析

目录

实验内容

使用schtasks指令监视系统

  1. 使用命令schtasks /create /TN netstat5207 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt" 创建计划任务nestat5207
  2. 在C盘要目录下建一个文件netstatlog.bat
  3. 任务计划程序编辑计划任务
  • 找到计划任务nestat5207,右键→属性,做如下更改。



4. 任务计划程序中运行任务nestat5207
5. 分析数据

  • WPS表格:数据→导入数据(除下列设置,其余均默认即可)


  • 选中协议一列
  • 数据透视表(默认选项即可)
  • 插入→数据透视图

使用Sysmon工具监视系统

  1. 下载SysinternalsSuite.zip并解压
  2. 在Sysmon所在的目录下创建相应的配置文件sysmon20175308.xml
    注意:xml文件的第一行注明了当前Sysmon的版本,可单击Sysmon64.exe,右键→属性查看
<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>

可选择的事件过滤器有

  • ProcessCreate 进程创建

  • FileCreateTime 进程创建时间

  • NetworkConnect 网络链接

  • ProcessTermina 进程结束

  • DriverLoad 驱动加载

  • ImageLoad 镜像加载

  • CreateRemoteTh 远程线程创建

  • RawAccessRead 驱动器读取

  • ProcessAccess 进程访问

  • FileCreate 文件创建

  • RegistryEvent 注册表事件

  • FileCreateStre 文件流创建

  1. 以管理员身份运行cmd,进入到Sysmon64.exe所在目录,输入:Sysmon64.exe -i Sysmon5207.xml

  2. 计算机→管理→事件查看器→应用程序和服务日志→Microsoft→Windows→Sysmon→Operational
    我们可以看到最早的一条日志是找到我们创建的Sysmon5207.xml配置文件

使用Sysmon进行恶意软件分析

1. 使用实验二中生成的后门程序回连Kali虚拟机,日志中出现了下面两条记录: ![](https://img2020.cnblogs.com/blog/1268742/202004/1268742-20200417223210006-1891052785.png) ![](https://img2020.cnblogs.com/blog/1268742/202004/1268742-20200417223334208-1603292028.png)
  1. Kali中执行dir,主机事件查看器中出现了下面的日志:

  2. Kaili中执行webcam_snap获取摄像头,WireSharke捕捉到的第一条主机向虚拟机的通信在21:48:13

同时间主机事件查看器中出现了下面的日志:
注:MSKSSRV.sys是Windows驱动程序;
MSPCLOCK.sys是用于音频同步的驱动程序,从Windows启动,并作为后台进程运行。

  1. Kaili中执行getsystem进行提权,WireSharke捕捉到两条主机向虚拟机的通信:

事件查看器中第一条日志:
注:Runtimebroker.exe是Win10系统的一个核心进程,用来进行Metro App权限管理的一个进程

第二条:

使用Systracer进行恶意软件分析

  1. 下载并安装Systracer(网址:http://www.blueproject.ro/systracer/)
  2. 点击take snapshot存储快照
  • 快照1(Snapshot #1):未移植后门程序前
  • 快照2(Snapshot #2):运行后门程序并在kaili中实现回连后
  • 快照3(Snapshot #3):kali中执行webcam_snap命令后
  • 快照4(Snapshot #4):kali中退出msf且主机删除后门程序后
  1. 对比快照1和快照2(点击右下角compare,然后可以选择上面不同的选项卡查看结果)
    看到了增加了我们的后门程序,除此之外还增删了不少


4. 对比快照2和快照3
增删了许多dll文件,而且我发现一些软件并没有使用,但仍然在运行???😳

5.对比快照3和快照4
可以看到移除了后门程序,并且有大量的dll程序被删除

问题回答

  1. 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
  • 使用schtasks指令监视系统,根据统计数据可以得到系统一天的使用状况
  • 使用Sysmon对事件进行记录,分析日志,判断有没有可疑行为
  • 使用Systracer拍摄快照,对比系统的变化
  • 使用Wireshark抓包,分析流量变化
  1. 如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
  • 使用Wireshark抓包,进一步有根据性地分析
  • 使用Systracer对比分析,查看其对注册表和文件的修改
  • 利用专业软件查杀分析

实验总结

在实验中遇到的最大问题就是检测到的数据太多,没法进行有效的剪枝,除此之外,得到的数据很多也看不明白,反而给自己造成了困扰,不知某个进程是敌是友,很是头大。但还是有收获的,至少在面对此类问题时会多少有点头绪~😉

posted @ 2020-04-19 12:08  20175207冷南  阅读(350)  评论(0编辑  收藏  举报