2019-2020-2-20175332 张苗-《网络对抗技术》-exp4 恶意代码分析

目录


1.实践内容

(1)系统运行监控

使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
  • 创建计划任务schtasks /create /TN netstat5332 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:5332log.txt"
参数解释
  • TNTaskName的缩写,我们创建的计划任务名是netstat5332;

  • sc表示计时方式,我们以分钟计时填MINUTE

  • TRTask Run,要运行的指令是netstat

  • bnb表示显示可执行文件名,n表示以数字来显示IP和端口;

  • >表示输出重定向,将输出存放在c:5332log.txt文件中

  • 创建脚本文件netstat5332.bat用于显示记录的日期时间,内容如下:

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

  • 查看文本文件

  • 导入统计

  • 结果:

进程使用次数从大到小排列
[MicrosoftEdgeCP.exe]--------与浏览器关联进程

[svchost.exe]--------微软Windows操作系统中的系统文件

[360tray.exe]--------360安全卫士实时监控程序

[vmware-hostd.exe]-------虚拟机程序进程

[SearchUI.exe]-------Win10小娜搜索进程

[vmware.exe]-------虚拟机程序

[vmware-authd.exe]------虚拟机程序

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

  • 写配置文件,代码如下:

  <!-- 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>  
  • 以管理员身份运行Sysmon64.exe -i 20175332.xml

  • 打开计算机管理----查看事件查看器---应用程序和服务日志/Microsoft/Windows/Sysmon/Operational中,可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别以及详细信息。

(2)恶意软件分析

分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件

(3)读取、添加、删除了哪些注册表项

(4)读取、添加、删除了哪些文件

(5)连接了哪些外部IP,传输了什么数据(抓包分析)

  • 使用实验三中生成后门程序进行回连
在回连过程中无论是系统自带防火墙还是360都提示危险

  • 回连成功后进行简单的权限获取操作

行为分析主要基于程序快照、捕包和Windows任务管理器
任务管理器可以看到后门程序的运行

程序快照(回连前和回连后对比)
注册表由修改增加的痕迹,还有和cmd.exe程序相关的注册表修改

在后门应用程序下新增加的行为

回连后文件的改动

抓包分析

统计所有出现的端口和IP地址

2.实践问题回答

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

  • sysmon工具,设置合理的配置文件

  • 使用windows任务查看器,查看是否有可疑进程

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

  • 程序快照,将运行前后结果进行对比

3.实践总结与体会

在实验回连的过程中,虽然是自己生成的后门程序回连,但是在具体分析中还是很难找到响应的可疑行为,尤其在数据报的分析中,由此可见在平时使用时,对于未知的恶意代码我们更是难以发现。

原文地址:https://www.cnblogs.com/20175332zm/p/12696090.html