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

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


实验内容(概要)

一、系统(联网)运行监控

1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且进行深入分析。

(1) 检查程序运行的合理性(他应不应该这时候运行);

(2) 检查程序占用资源的合理性(有没有不合理地、非法地占用资源);

(3) 综合分析结果,然后可以有目的地进行进行抓包。

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

二、恶意软件分析

1. 特征捕捉

捕捉恶意软件联网情况、回连情况、进程迁移操作、修改注册表、修改文件的情况。

2. 特征分析

分析、以及基于特征的防范。


实验步骤

一、系统(联网)运行监控

1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且进行深入分析。

这里主要用到的是schtasks命令,在网上有很多教程。在这里,为了先进行联网进程的监控,在命令行试运行如下:

schtasks /create /TN 5325netstat /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:
etstatlog.txt"

参数分析:/create创建定时任务;/TN设置taskname;/sc设置运行间隔;/MO设置周期;/TR设置runtask的命令;

任务计划创建成功,但是不一定能运行成功。因为可能c盘是保护盘,可能你需要权限才能创建文件balabala,所以在任务计划里面找到ta(看不见就在旁边刷新一下),设置为最高权限运行,看见c盘有生成的txt就可以了。

一次执行程序只能捕获此刻的联网情况。如果想在一段时间内持续监控,最好做一个bat文件。

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

以上是bat文件的内容(创建方法:新建txt —> 修改后缀名字)。

然后修改前面在cmd创建的任务计划参数,执行的程序不再是cmd,让任务计划指向这个文件。

当执行的时候电脑上会弹一个小黑窗,然后去c盘检查txt文件,能看见每一条日志有时间信息:

(可能一开始几条是cmd的任务计划生成的所以没有时间信息,查看的时候往下多拉一些)

运行大概有30分钟以后停止。如果需要更全面的监控,可以根据情况调整时间。

参考教程:https://www.cnblogs.com/zjy1997/p/8824717.html 。将数据导入Excel做成图表。

可以看见几个主要的联网进程分别是:

  • chrome.exe浏览器,暂时看不出来什么问题。

  • dlna_player.exe通过文件夹搜索发现是酷狗的程序。

经过上网查询发现这个是DLAN服务(手机投放功能):“可以在家庭局域网中将手机、平板、电脑、电视或者音响及其他音视频设备联通起来,互相之间可以访问其中的音乐、照片和视频。”

  • nvcontainer.exe看起来像是NVIDIA的东西,全部是本机连本机的,查找资料如下:

[Nvcontainer.exe]对于Windows不是必需的,并且经常会导致问题。Nvcontainer.exe通常是存放在C:Program FilesNVIDIA CorporationNvContainer)。它是服务“NvContainerLocalSystem”:NVIDIA根功能的容器服务。这是Verisign签名的文件。Nvcontainer.exe不是Windows系统文件。该程序没有可见的窗口。该文件具有数字签名。该过程使用端口连接到LAN或Internet。Nvcontainer.exe能够监控应用程序。nvcontainer.exe也可能是恶意软件所伪装,或造成的一些恶意软件。因此,您应该检查PC上的nvcontainer.exe进程,看它是否是威胁。

  • QQ.exe大腾讯的qq,暂时看不出什么问题。

  • svchost.exe查找资料:LocalSystemNetworkRestricted。可能长时间读写可能引起电脑卡顿。参考:https://www.cnblogs.com/highend/p/win10_disk_100_percent.html

  • ruby.exe脚本语言,联网原因未知,查看链接地址全部是本机连本机的,应该问题不大。

  • WpnService网上说是一个系统服务,为什么连到这里?????

有点小慌。。。。。想办法把他禁用了:

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

下载官方exe,安装:C:Users24771DesktopSysmon>Sysmon.exe -i C:sysmon5325.xml

文件sysmon5325.xml如下:

<Sysmon schemaversion="4.20">
  <!-- Capture all hashes -->
  <HashAlgorithms>*</HashAlgorithms>
  <EventFiltering>
    <!-- Log all drivers except if the signature -->
    <!-- contains Microsoft or Windows -->
    <DriverLoad onmatch="exclude">
      <Signature condition="contains">microsoft</Signature>
      <Signature condition="contains">windows</Signature>
    </DriverLoad>
    
    <NetworkConnect onmatch="exclude">
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">iexplorer.exe</Image>
      <SourcePort condition="is">137</SourcePort>
      <SourceIp condition="is">127.0.0.1</SourceIp>
    </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>

成功。

右键win,打开事件查看器,左侧的应用程序和服务日志中,通过Microsoft->Windows->Sysmon->Operational找到配置文件所记录的全部信息。

每一个事件id对应着不同的事件类型:

1   :  进程建立 
2   :  进程更改了文件创建时间 
3   :  网络连接 
4   :  Sysmon服务状态已变更 
5   :  进程已终止 
6   :  已载入驱动程式 
7   :  已载入影像 
8   :  创建远程线程 
9   :  RawAccessRead 
10  :  进程访问 
11  :  文件创建 
12  :  注册事件(创建和删除对象) 
13  :  注册事件(值集) 
14  :  注册事件(键和值重命名) 
15  :  文件创建流哈希 
255 :  错误

这里的事件实在是太多了,不利于分析。建议修改xml的值,对后门程序进行定向分析。

<Sysmon schemaversion="4.20">
  <!-- Capture all hashes -->
  <HashAlgorithms>*</HashAlgorithms>
  <EventFiltering>
    <!-- Log all drivers except if the signature -->
    <!-- contains Microsoft or Windows -->
    <DriverLoad onmatch="exclude">
      <Signature condition="contains">microsoft</Signature>
      <Signature condition="contains">windows</Signature>
    </DriverLoad>
    
    <NetworkConnect onmatch="exclude">
      <Image condition="end with">iexplorer.exe</Image>
      <SourcePort condition="is">137</SourcePort>
      <SourceIp condition="is">127.0.0.1</SourceIp>
    </NetworkConnect>

    <NetworkConnect onmatch="include"> 
      <DestinationPort condition="is">5325</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>

Sysmon.exe -c C:sysmon5325.xml重新进行配置。

能清楚地看到回连的状态。

二、恶意软件分析

1. 使用virscan进行扫描。

为什么没有行为分析,我看同学的博客里面有哈勃文件分析什么的(可能是我眼瞎没看见)。

2. Process Monitor工具

工具的作用是实时显示文件系统、注册表、进程/线程的活动。它是windows自己开发的,官方软件,值得信赖。

设置过滤器以后,能找到shellcode.exe,追踪到后门程序的运行。

双击能看到进程的详细信息。

3. 使用SysTracer工具进行快照对比

建议在win7虚拟机里面运行(系统小文件少,快照生成时间短)

生成4个快照,分别是:

  • 运行后门之前;
  • 运行后门时;
  • 输入dirpwd命令之后。
  • 结束运行之后。

比较能发现差异——运行时发生了修改、新增注册表项的操作。(具体什么意思我也看不懂啊)

文件和新增和删除了很多,看文件路径,我猜他想伪装成为一个Microsoft的程序吧??(HSA意思是生成了隐藏的文件)

当执行指令时,能发现没有修改注册表或者生成新的应用程序,只是进行增删了一些文件。

4. 抓包

后门启动以后,攻击机向靶机发送了很多tcp数据包,猜测MSF需要的指令全部都在这里面,后门程序本身只是用于回连。

5. 分析

综上所述,恶意软件执行的主要操作包括修改增加注册表,生成新的文件,从攻击机接受大量的文件,因此可以从行为和网络情况进行监控。

一方面,对注册表项进行严格的监控,所有修改的进程最好要经过管理员权限的允许(UAC控制)

另一方面,恶意软件可能是在用户不知情的情况下运行的(例如在熄屏是启动),所以防范的另一方面在于:监控网络流量情况。禁止程序在不正常的情况下启动操作接受/发送大量数据。

原文地址:https://www.cnblogs.com/maxeysblog/p/10662649.html