1、实验内容说明及基础问题回答html
2、实验过程linux
3、问题与思考算法
4、实验总结chrome
实验内容shell
系统运行监控(2分)windows
使用如计划任务,每隔一分钟记录本身的电脑有哪些程序在联网,链接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出全部连网的程序,连了哪里,大约干了什么(不抓包的状况下只能猜),你以为它这么干合适不。若是想进一步分析的,能够有针对性的抓包。安全
参考:schtask与sysmon应用指导 实际日志的分析还须要发挥下本身的创造力,结合之前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得你们会什么用什么了。
恶意软件分析(1.5分)网络
分析该软件在app
该后门软件tcp
读取、添加、删除了哪些注册表项
读取、添加、删除了哪些文件
该实验重点在“分析”,不是“如何使用某软件”。组长、课题负责人要求写细一点,其余人能够重点放在分析上。
基础问答
一、若是在工做中怀疑一台主机上有恶意代码,但只是猜测,全部想监控下系统一每天的到底在干些什么。请设计下你想监控的操做有哪些,用什么方法来监控。
使用windows自带的schtasks指令设置一个计划任务,每隔必定的时间对主机的联网记录等进行记录。
使用sysmon工具,经过配置想要监控的端口、注册表信息、网络链接等信息,记录相关的日志文件。
利用wireshark查看数据包
用TCPView也行,不过能获得的进一步信息较少
用Process Explorer或者Process Monitor
二、若是已经肯定是某个程序或进程有问题,你有什么工具能够进一步获得它的哪些信息。
使用Wireshark进行抓包分析,监视其与主机进行的通讯过程。
使用systracer工具分析恶意软件,进行快照的对比(注册表、文件等).
也能够用PEid查看的加壳状况
Task1 系统运行监控
schtasks /create /TN netstat5226 /sc MINUTE /MO 5 /TR "cmd /c netstat -bn > c:\netstatlog.txt"
建立计划任务其中,TN是TaskName的缩写,咱们建立的计划任务名是netstat5226;sc表示计时方式,咱们以分钟计时填MINUTE;TR=Task Run,要运行的指令是 netstat -bn,b表示显示可执行文件名,n表示以数字来显示IP和端口。
在C盘中建立一个netstat5226.bat脚本文件(可先建立txt文本文件,使用记事本写入后经过修改文件名来修改文件格式)
date /t >> c:\netstat5226.txt time /t >> c:\netstat5226.txt netstat -bn >> c:\netstat5226.txt
打开任务计划程序
(在计算机管理中),能够看到咱们新建立的这个任务
双击这个任务,点击操做并编辑,将“程序或脚本”改成咱们建立的netstat5226.bat
批处理文件,肯定便可。
任务还有其余属性,点击“条件”选项卡,能够更改相关的设置。好比默认操做为“只有在计算机使用交流电源时才启动此任务”,那么使用电池电源时就会中止任务。这点须要格外注意,若是没有修改默认操做,任务不管如何都没法执行可能只是由于拔掉了电源。
执行此脚本必定时间,就能够在netstat5226.txt文件中查看到本机在该时间段内的联网记录
选择分隔符号
分隔符号所有选上
列数据格式选择常规
完成生成表
当记录的数据足够丰富时,中止任务,将所得数据在excel中进行分析(详细操做参考学姐的博客)
将其作成饼状图(发现tcp最活跃)
用折线图来表示
使用sysmon监视系统
sysmon
微软Sysinternals套件中的一个工具,能够从码云项目的附件里进行下载,要使用sysmon
工具先要配置文件:<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> </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 -i C:\Sysmoncfg.txt
指令对sysmon
进行安装:
启动以后,即可以到事件查看器里查看相应的日志:
查看了其中一部分事件的详细信息,好比这个事件是以前作计划任务时所建立的
打开kali,运行木马文件,使其回连kali攻击机。查看日志,经过搜索关键字能够找到相关的后门文件
打开这个事件,能够看到其属于“NetworkContect”。查看详细信息,能够看到这个后门映像文件的具体位置、源IP和端口、目的IP和端口等
Task2 恶意软件分析
把生成的恶意代码放在VirusTotal进行分析
查看这个恶意代码的基本属性
能够看出它的SHA-一、MD5摘要值、文件类型、文件大小,以及TRiD文件类型识别结果。(注:TRiD经过读取文件头,根据特征码进行文件类型匹配。)
能够看到加壳状况
以及该恶意代码的算法库支持状况
动态分析1——使用TCPView工具
经过TCPView工具能够获取后门程序的网络链接信息,发现实验环境下攻击机的IP地址
但双击后只能获取少许信息,所以此软件不适合用来分析具体数据传输过程
动态分析2——使用Process Explorer
Process Explorer是由Sysinternals开发的Windows系统和应用程序监视工具,目前已并入微软旗下。不只结合了Filemon(文件监视器)和Regmon(注册表监视器)两个工具的功能,还增长了多项重要的加强功能。包括稳定性和性能改进、强大的过滤选项、修正的进程树对话框(增长了进程存活时间图表)、可根据点击位置变换的右击菜单过滤条目、集成带源代码存储的堆栈跟踪对话框、更快的堆栈跟踪、可在 64位 Windows 上加载 32位 日志文件的能力、监视映像(DLL和内核模式驱动程序)加载、系统引导时记录全部操做等。
靶机运行木马,回连攻击机时,咱们能够看到Process Explorer对其进行的记录
动态分析3——使用Process Monitor
Process Monitor 是一款由 Sysinternals 公司开发的包含强大的监视和过滤功能的高级 Windows 监视工具,可实时显示文件系统、注册表、进程/线程的活动。
打开软件,能够看出其对各个进程的详细记录
动态分析4——使用systracer
agreet
后选择第二个进行端口号的设置take snapshot
分别存储如下快照:
ls
指令,win7下再次快照getuid
而后getsystem
进行提权操做,win7下再次快照快照一和快照二:增长的后门程序,以及增减的键值、dll文件
快照二和快照三:除了增减不少键值、dll文件外,还能查找到后门程序的回连(能看到端口号,攻击方IP地址以及靶机IP地址)
植入后门并回连进行权限提取或其余操做
咱们能在双击此快照的基础上经过查看applications
中的Runnig Processes
找到后门程序,能清楚地看到本机地址和端口以及远程攻击方kali的地址及运行端口号
动态分析4——使用wireshark
经过上一步的操做得知攻击方以及受控方IP地址以及端口号以后使用wireshark进一步分析
三次握手
从序列号、确认号等能判断出三次握手过程,同时还能查看传输的数据
静态分析1——使用PEid查看加壳状况
未加壳时进行扫描
加壳后再次进行扫描
缺点是不能获取其余更多的信息
静态分析2——使用PE Explorer
PE Explorer是功能超强的可视化Delphi、C++、VB程序解析器,能快速对32位可执行程序进行反编译,并修改其中资源。
刚打开PE Explorer咱们就会看到后门程序的头部信息。
同时还能查看其依赖项
问题1:在安装sysmon时报错
问题1解决方案:以管理员身份运行cmd,从新执行命令进行安装,成功。
问题2:在进行数据收集时,出现一些问题,如没法自启动在文件中录入数据、能定时触发但只显示时间没有数据、不能定时触发但经过管理员运行bat文件能输出、不能生成txt文件、能定时触发但只显示结果没有日期和时间。。
在C盘中将bat文件的属性中全部权限更改成彻底控制
在任务管理中点开bat的属性,在常规中将只在用户登陆时运行
更改成无论用户是否登陆都要运行
,并在下面的框中打钩
问题3:导入表格时出现如图所示问题
问题3解决方案:使所选单元格从D31开始便可
问题4:在进行systracer中出现下图所示状况
问题4解决方案:将改程序卸载后重装便可