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

1.实践目标

1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行。

1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。

1.3假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。

2.实践内容

2.1系统运行监控

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

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

参考:schtask与sysmon应用指导

实际日志的分析还需要发挥下自己的创造力,结合以前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得大家会什么用什么了。

** 2.2恶意软件分析**

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

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

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

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

实验过程

实验一:使用schtasks指令监控系统

使用管理员权限创建任务,输入如下指令
schtasks /create /TN netstat5303 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt"
命令创建计划任务:netstat5337

1296836-20190407203826526-4905881.png

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

在C盘创建一个txt文件,然后写入下列代码:
date /t >> c:\netstat5337.txt time /t >> c:\netstat5337.txt netstat -bn >> c:\netstat5337.txt
然后将后缀名改为.bat
1296836-20190407204028362-846159156.png

打开我的电脑,右键单击管理,点击任务计划管理,再点击任务计划程序库就可以看到自己刚刚创建的任务计划

1296836-20190407204050781-1432965545.png

双击任务点击编辑,点击浏览将“程序或脚本”改为netstat5337.bat批处理文件,确定即可。添加参数那里需要把其他的数据都删掉,在首界面要点击使用最高权限运行,否则的话就可能在C盘中无法创建txt文件。

1296836-20190407204230242-1219160608.png

执行此任务一段时间后你就会在C盘里面看见自己创建的netstat5337.txt

1296836-20190407204307823-787923181.png

然后在Excel中把自己的数据进行系统性的分析,首先导入数据。

1296836-20190407204334444-591225149.png

1296836-20190407204407980-870107983.png

对表格进行统计做一些数据透视图,然后就可以更直观的看到那些应用程序进行了链接

1296836-20190407204433081-890320843.png

从中发现谷歌浏览器联网次数最多,因为经常使用,尤其做实验的时候来回开网页
之后是小娜和金山,都是后台运行联网
其他就是一些后台应用软件

然后就是本地链接的地址

1296836-20190407205222489-1713107989.png

192.168.1.226最多,可能是我的本机地址

外部地址:
1296836-20190407205319575-918378373.png

链接最多的两个是117.18.232.200和128.58.101.49
这俩地址一个是澳大利亚一个是美国

1296836-20190407205548740-1065805016.png

1296836-20190407205557461-11412591.png

实验二:系统监控——Sysmon工具

Sysmon是微软Sysinternals套件中的一个工具,能监控几乎所有的重要操作。
首先我们根据实验指导书中的链接下载一下Sysinternals套件,下载下来之后解压,这里一定要注意!!!千万不要直接解压到当前文件夹,一堆看不懂的文件安排的明明白白,一定要建个文件夹解压!!!
接下来,新建并编辑配置文件C:\20165337.xml exclude相当于白名单,里面的程序或IP不会被记录,include相当于黑名单,可以把自己想监控的写到黑名单中
这是xml文件内容

<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>
      <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>

1296836-20190407205903094-1813087803.png

使用命令sysmon.exe -i C:\20165337.xml进行Sysmon的配置更新与启动

1296836-20190407205942824-1502006643.png

之后在win10环境下,在我的电脑右键——管理——事件查看器——应用程序和服务日志——Microsoft————Windows——Sysmon——Operational。这里,我们可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别、详细信息等等。

1296836-20190407210110154-2029334442.png

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

观察一个事件识别码为1的详细信息,谷歌浏览器建立的进程

1296836-20190407210335373-436283492.png

观察一个事件识别码为5的详细信息,可以看到这是一个有关搜狗输入法的进程终止事件

1296836-20190407210405392-1272587730.png

观察一个事件识别码为2的详细信息,迅雷更改文件创建时间,不知道为什么...

1296836-20190407210504519-1410311217.png

之后打开kali虚拟机,然后使用我们实验三中的后门文件进行回连,然后观察回连成功后的日志

1296836-20190407210639975-2121161160.png

可以看到20165337.exe后门程序创建了网络连接,这应该就是后门回连的时候创建的网络连接使用tcp连接。

1296836-20190407210739771-429353314.png

接下来我输入照相指令看一下又创建了哪些进程,从图上看到,启动了driver。我猜是启动了相机的驱动程序,而且事件识别码也是6:已载入驱动程式

1296836-20190407210814520-598142244.png

接下来进行截屏的操作,从图上看出来进行了网络连接,应该是截了屏之后把数据传过去了,所以才会有网络连接,事件识别码3 :网络连接

1296836-20190407211002380-1952150134.png

实验三:恶意软件分析

先把自己的后门软件上传的网站上看一下,很容易被检测到

1296836-20190407211459372-470193699.png

使用systracer进行分析

首先下载systracer
之后运行程序

1296836-20190407211712723-728605548.png

我分别创建了四个快照:
1.初始状态,2.成功回连,3.远程操作,4.结束链接:

1296836-20190407211849769-898474852.png

点击右下角的比较,查看变化
这是注册表,在进行kali回连的时候对很多注册表项都进行了改变

1296836-20190407211935039-93402534.png

再看文件,不少文件发生变动,尤其是exp4.exe,是我这次的后门文件

1296836-20190407212101907-425760575.png

应用程序的变化,主要的还是我的后门程序exp4.exe

1296836-20190407212132796-1077020198.png

接下来用wireshark抓包分析连接了哪些外部IP,传输了什么数据

设置主机host为192.168.1.184我的kali虚拟机的IP地址,然后回连看抓到了哪些东西

1296836-20190407212333104-862617732.png

发现大部分的包都是请求的tcp三次握手请求建立的包,可能他是在大量的发送请求命令然后进行连接

1296836-20190407212347632-1330372303.png

然后打开一个命令包,发现就是三次握手请求建立

1296836-20190407212425284-668211659.png

然后进行截屏或者录像等操作

1296836-20190407212453914-1332639425.png

发现还只是一堆tcp包,打开一个

1296836-20190407212523062-2055132626.png

正常的三次握手

使用Process Monitor进行分析

Process Monitor一款系统进程监视软件,总体来说,Process Monitor相当于Filemon+Regmon,其中的Filemon专门用来监视系统 中的任何文件操作过程,而Regmon用来监视注册表的读写操作过程。 有了Process Monitor,使用者就可以对系统中的任何文件和 注册表操作同时进行监视和记录,通过注册表和文件读写的变化, 对于帮助诊断系统故障或是发现恶意软件、病毒或木马来说,非常 有用。 这是一个高级的 Windows 系统和应用程序监视工具,由优秀的 Sysinternals 开发,并且目前已并入微软旗下,可靠性自不用说。

运行后门程序进行回连后打开软件,找到后门程序

1296836-20190407212650831-1077605884.png

进程的详细信息

1296836-20190407212719702-490053614.png

1296836-20190407212730672-1711244131.png

实验中的问题:

1.在任务计划程序库里配置完成后不能点击确定,出现任务出错,错误消息,一个或多个的指定的参数无效窗口,百度了之后解决了。问题链接:https://zhidao.baidu.com/question/1383075504353290300.html?fr=iks&word=%C8%CE%CE%F1%B3%F6%B4%ED%2C%B4%ED%CE%F3%CF%FB%CF%A2%2C%D2%BB%B8%F6%BB%F2%B6%E0%B8%F6%B5%C4%D6%B8%B6%A8%B5%C4%B2%CE%CA%FD%CE%DE%D0%A7&ie=gbk
2.sysmon那一栏没有,重启电脑之后好了

心得体会

通过这次实验我学会了检测自己电脑里的软件都干了些啥,能搞明白自己的网速,性能都去哪了,这种了解自己电脑的过程感觉很美好,感觉自己终于能对自己的电脑有所掌控了

转载于:https://www.cnblogs.com/y963976867/p/10666897.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值