2017-2018-2 20155303『网络对抗技术』Exp4:恶意代码分析

2017-2018-2 20155303『网络对抗技术』Exp4:恶意代码分析

————————CONTENTS————————


一.原理与实践说明

1.实践目标

  • 监控你本身系统的运行状态,看有没有可疑的程序在运行。
  • 分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽可能使用原生指令或sysinternals,systracer套件。
  • 假定未来工做中你以为本身的主机有问题,就能够用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。

2.实践内容概述

  • 系统运行监控
    • 使用如计划任务,每隔一分钟记录本身的电脑有哪些程序在联网,链接的外部IP是哪里。运行一段时间并分析该文件,综述分析结果。
    • 安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控本身主机的重点事可疑行为。
  • 分析该软件在(1)启动回连,(2)安装到目标机(3)及其余任意操做时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件
    • 读取、添加、删除了哪些注册表项
    • 读取、添加、删除了哪些文件
    • 链接了哪些外部IP,传输了什么数据

3.基础问题回答

  • 问:若是在工做中怀疑一台主机上有恶意代码,但只是猜测,全部想监控下系统一每天的到底在干些什么。请设计下你想监控的操做有哪些,用什么方法来监控。
    • 使用windows自带的schtasks指令设置一个计划任务,每隔必定的时间对主机的联网记录等进行记录。
    • 使用sysmon工具,经过修改配置文件,记录相关的日志文件。
    • 使用Process Explorer工具,监视进程执行状况。
  • 问:若是已经肯定是某个程序或进程有问题,你有什么工具能够进一步获得它的哪些信息。
    • 使用Wireshark进行抓包分析,监视其与主机进行的通讯过程。
    • 使用systracer工具分析恶意软件。

返回目录html


二.实践过程记录

1.使用schtasks指令监控系统

  • 使用schtasks /create /TN netstat5303 /sc MINUTE /MO 5 /TR "cmd /c netstat -bn > c:\netstatlog.txt"命令建立计划任务netstat5303,以下图所示:

其中,TN是TaskName的缩写,咱们建立的计划任务名是netstat5303;sc表示计时方式,咱们以分钟计时填MINUTE;TR=Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口。linux

  • 在C盘中建立一个netstat5303.bat脚本文件(可先建立txt文本文件,使用记事本写入后经过修改文件名来修改文件格式)

  • 在其中写入如下内容:
date /t >> c:\netstat5303.txt
time /t >> c:\netstat5303.txt
netstat -bn >> c:\netstat5303.txt

以下图所示:算法

  • 打开任务计划程序,能够看到咱们新建立的这个任务:

  • 双击这个任务,点击操做并编辑,将“程序或脚本”改成咱们建立的netstat5303.bat批处理文件,肯定便可。

  • 任务还有其余属性,点击“条件”选项卡,能够更改相关的设置。好比默认操做为“只有在计算机使用交流电源时才启动此任务”,那么使用电池电源时就会中止任务。这点须要格外注意,若是没有修改默认操做,任务不管如何都没法执行可能只是由于拔掉了电源。

  • 执行此脚本必定时间(如8小时),就能够在netstat5303.txt文件中查看到本机在该时间段内的联网记录:

  • 将每一个应用的联网状况作成饼状图,更加清晰直观:

  • 除此以外,还能够将全部的外网地址合并汇总,便于统计分析:

  • 或者,详细显示每个外网链接时,本机的IP及端口:

若有须要,查看这些可疑的外网IP便可。chrome

返回目录
shell

2.使用sysmon工具监控系统

  • sysmon是微软Sysinternals套件中的一个工具,使用sysmon工具前首先要配置文件。根据老师的要求,最少要记录Event 1,2,3三个事件。即进程建立、进程建立时间、网络链接,以下图所示:

  • 参考使用轻量级工具Sysmon监视你的系统这篇文章,建立配置文件Sysmon20155303.xmlwindows

  • 使用Sysmon.exe -i C:\Sysmon20155303.xml安装sysmon。网络

  • 对配置文件进行修改,将本身感兴趣的过滤器事件过滤器事件的选项写入。(使用xml文档,是由于其能够按照标签进行缩进和显示,使用Notepad++打开后一目了然。)我修改的配置文件以下:工具

<Sysmon schemaversion="3.10">
  <!-- 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>
      <Image condition="end with">firefox.exe</Image>
      <SourcePort condition="is">137</SourcePort>
      <SourceIp condition="is">127.0.0.1</SourceIp>
      <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">firefox.exe</TargetImage>
      <TargetImage condition="end with">svchost.exe</TargetImage>
      <TargetImage condition="end with">winlogon.exe</TargetImage>
      <SourceImage condition="end with">powershell.exe</SourceImage>
    </CreateRemoteThread>
    
    <ProcessCreate onmatch="include">
      <Image condition="end with">chrome.exe</Image>
      <Image condition="end with">iexplorer.exe</Image>
      <Image condition="end with">firefox.exe</Image>
    </ProcessCreate>
    
    <FileCreateTime onmatch="exclude" >
      <Image condition="end with">firefox.exe</Image>   
    </FileCreateTime>
    
    <FileCreateTime onmatch="include" >
      <TargetFilename condition="end with">.tmp</TargetFilename>       
      <TargetFilename condition="end with">.exe</TargetFilename>  
    </FileCreateTime>
    
  </EventFiltering>
</Sysmon>
  • 使用Sysmon.exe -c C:\Sysmon20155303.xml,将sysmon按照修改好的配置文件进行更新。性能

  • win10下,左下角开始菜单右击->事件查看器->应用程序和服务日志->Microsoft->Windows->Sysmon->Operational。在这里,咱们能够看到按照配置文件的要求记录的新事件,以及事件ID、任务类别、详细信息等等。学习

  • 打开kali,运行木马文件,使其回连kali攻击机。查看日志,经过搜索关键字能够找到相关的后门文件:

  • 打开这个事件,能够看到其属于“NetworkContect”。查看详细信息,能够看到这个后门映像文件的具体位置、源IP和端口、目的IP和端口等。

返回目录

3.使用VirusTotal分析恶意软件

  • 把生成的恶意代码放在VirusTotal进行分析,基本状况以下:

在66个杀软中,有24个报毒,可疑行至关高了。

  • 查看这个恶意代码的基本属性:

能够看出它的SHA-一、MD5摘要值、文件类型、文件大小,以及TRiD文件类型识别结果。(注:TRiD经过读取文件头,根据特征码进行文件类型匹配。)

  • 还能够看到加壳状况:

  • 以及该恶意代码的算法库支持状况:

返回目录

4.使用Process Monitor分析恶意软件

  • Process Monitor 是一款由 Sysinternals 公司开发的包含强大的监视和过滤功能的高级 Windows 监视工具,可实时显示文件系统、注册表、进程/线程的活动。

  • 打开软件,能够看出其对各个进程的详细记录:

返回目录

5.使用Process Explorer分析恶意软件

  • Process Explorer是由Sysinternals开发的Windows系统和应用程序监视工具,目前已并入微软旗下。不只结合了Filemon(文件监视器)和Regmon(注册表监视器)两个工具的功能,还增长了多项重要的加强功能。包括稳定性和性能改进、强大的过滤选项、修正的进程树对话框(增长了进程存活时间图表)、可根据点击位置变换的右击菜单过滤条目、集成带源代码存储的堆栈跟踪对话框、更快的堆栈跟踪、可在 64位 Windows 上加载 32位 日志文件的能力、监视映像(DLL和内核模式驱动程序)加载、系统引导时记录全部操做等。

  • 靶机运行木马,回连攻击机时,咱们能够看到Process Explorer对其进行的记录:

返回目录

6.使用PEiD分析恶意软件

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

  • 咱们先取一个上次实验生成的,没有加壳的木马,其检测结果以下:

  • 使用UPX加壳后,PEiD成功检测出了加壳的相关信息:

返回目录

7.使用systracer分析恶意软件

  • 此实验建议在两台虚拟机中进行,windows虚拟机文件少,进行快照时间短,且易于分析。

  • 基本步骤以下:
    • 在win7虚拟机安装SysTracer软件
    • 保存快照,命名为Snapshot #1
    • 将木马植入靶机,对靶机注册表、文件等进行快照,保存为Snapshot #2
    • 打开kali的msfconsle,靶机运行木马,回连kali,win7下再次快照,保存为Snapshot #3
    • 在kali中对靶机进行屏幕截图,win7下再次快照,保存为Snapshot #4
    • 在kali中对靶机进行提权操做,win7下再次快照,保存为Snapshot #5

  • 点击右下角“Compare”,比较五个快照的不一样之处。
  • 启动回连时,注册表发生了变化:

  • 能够看到它启用了不少dll文件:

  • 端口的链接状况以下:

  • 提取权限时,文件发生的变化:

返回目录


三.实践总结及体会

  • 本次实验的内容十分丰富,咱们尝试学习和使用了数款用于检测恶意代码的指令或是软件,例如SysTracer、SysinternalsSuite、ProceMonitor等。这些工具都能很好地辅助咱们对主机进行监控,以发现恶意行为并进行及时处理。
  • 经过学习了解到,恶意代码的分析方法主要分为静态分析方法和动态分析方法。这两种方法在本次实验中都有所涉及。静态分析方法是指在不执行二进制程序的条件下进行分析,如反汇编分析等,属于逆向工程分析方法。而动态分析方法是指在恶意代码执行的状况下,利用调试工具对恶意代码实施跟踪和观察,肯定恶意代码的工做过程,以便做进一步分析。
  • 虽然恶意代码的分析工具多种多样、日趋完善,但做为计算机用户的咱们更不能掉以轻心,而应该时刻保持警戒。要时常对电脑的行为进行监控,不要只寄但愿于杀毒软件,由于杀毒与免杀的博弈关系会使两者共同发展,并非全部的恶意代码都会被杀毒软件拒之门外。

返回目录


附:参考资料

相关文章
相关标签/搜索