标签:blob 图片 变化 实时 时间类 上网 com shell 访问
一、实践目标
1.是监控你自己系统的运行状态,看有没有可疑的程序在运行。
2.是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。
3.假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。
二、实践内容
1.系统运行监控
(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。
2.恶意软件分析
三、实践过程与步骤
(一)系统运行监控
(1)输入命令:
schtasks /create /TN netstat4314 /sc MINUTE /MO 2 /TR "cmd /c netstat -bn > c:\netstat4314.txt"
实现每2分钟记录一下有哪些程序在连接网络
(忘记截图了···)
其中,TN是TaskName的缩写,这里计划任务名是netstat5330;sc表示计时方式,以分钟计时填MINUTE;TR=Task Run,要运行的指令是netstat -bn
,b表示显示可执行文件名,n表示以数字来显示IP和端口。
(2)在C盘要目录下建一个文件c:\netstat4314.bat
(可以先在桌面新建txt文本文件,使用记事本写入后在修改后缀为.bat,复制到C盘中),写入内容如下:
date /t >> c:\netstat4314.txt time /t >> c:\netstat4314.txt netstat -bn >> c:\netstat4314.txt
(3)通过“Windows->控制面板->管理工具->任务计划程序”,找到我的任务
(4)双击这个任务,点击操作
-编辑
,将其中的程序或脚本
改为我们创建的netstat4314.bat
批处理文件,参数可选项
为空,点击确定。
(注意:一定要勾选使用最高权限运行
,否则可能导致文件不能自主更新或者记录里出现权限问题)
(5)打开记录文件netstatlog.txt记事本,可以看到每隔2分钟记录并且能够显示日期和时间
(6)统计分析数据(两小时的数据信息)
导入数据:
选择一部分数据,使用数据透视工具分析得到直观的数据透视图
第一个选取了程序接入网络的次数:
上网查询了解了以下几个联网次数较多和我不熟悉的进程:
dlna_player.exe应该是音乐播放器的程序;
upc.exe应该是uplay平台的一个程序;
sesvc.exe是360浏览器的广告程序;
svchost.exe 是从动态链接库(DLL) 中运行的服务的通用主机进程名称。这个程序对系统的正常运行是非常重要,而且是不能被结束的。
第二个选取了程序接入网络的IP:
看到最多的是127.0.0.1即本机地址,后来经查询得知,127.0.0.1是绑定在loopback接口上的地址没如果服务端套接字绑定在它上面,你的客户端程序就只能在本机访问。
上网查了一些IP:
不知道这个美国的IP是个什么情况·······
(二)使用Sysmon工具
Sysmon是微软Sysinternals套件中的一个工具,首先进入微软官网下载sysmon(下好后我把文件放到了D盘)
(1)确定监控目标为网络连接。
(2)配置文件:
<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.exe</Image> </NetworkConnect> <NetworkConnect onmatch="include"> <DestinationPort condition="is">80</DestinationPort> <DestinationPort condition="is">443</DestinationPort> <DestinationPort condition="is">4314</DestinationPort> </NetworkConnect> <FileCreateTime onmatch="exclude" > <Image condition="end with">chrome.exe</Image> </FileCreateTime> <ProcessCreate onmatch="exclude" > <Image condition="end with">chrome.exe</Image> </ProcessCreate> <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>
相关释义:
(3)把配置文件放入c盘;
(4)以管理员身份运行cmd,执行命令
接着输入命令:
sysmon.exe -i c:\sysmon20164314.xml
提示版本不同,将“20164314.xml”文件中 <Sysmon schemaversion="3.10"> 改为 <Sysmon schemaversion="4.20">
输入上一步中的命令,执行,此时会弹出一个窗口,点击agree;
安装成功如下:
(5)在事件查看器里查看日志
依次点开应用程序和服务日志→Microsoft→Windows→Sysmon→Operational。
(6)分析实验二生成的后门程序,按步骤进行回连
查找事件
找到事件
打开详细信息,可以看到这个后门映像文件的具体位置、源IP和端口、目的IP和端口等
(三)恶意软件分析
(1)静态分析
使用VirusTotal分析恶意软件
算法库支持
(2)动态分析
安装SysTracer工具,监听端口选择4314
使用SysTracer工具动态分析我是在两台虚拟机上进行的,一台是win10虚拟机,一台是Linux的虚拟机
(1)点击右侧的take snapshot,存储快照
dir
指令,保存为Snapshot #3record_mic
指令,保存为Snapshot #4
(2)通过右下角的 compare
键或者 View Differences Lists
比对各快照,可以选择 Only Difference
只查看不同的项
①对比快照一和快照二(后门启动前与启动后):
如上图所示,一些Systracer未授权的地方我们是没法查看的
HKEY_CURRENT_USER、HKEY_LOCAL_MACHINE和HKEY_USER无法查看
②对比快照二和快照三:Linux上执行 dir
指令
不是很懂为啥又是查看不了·····(难道因为是虚拟机?)
③ 对比快照三和快照四:Linux上执行 record_mic
指令
Apache HTTP Server
四、实验后回答问题
(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
(2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
五、实验感想
在当了多次的“小偷”后,我们这次实验终于到了一次“警察”,对过去自己的所作所为进行分析,知道了不少小却十分方便的工具,也知道了Windows自带的一些很方便的服务。通过这些工具,可以查看“小偷”对我们的电脑做了些什么,从而对“小偷”进行管理。
( 就是感觉好多Systracer未授权的地方呀·······)
标签:blob 图片 变化 实时 时间类 上网 com shell 访问
原文地址:https://www.cnblogs.com/ICe-s/p/10659493.html