2018-2019 20165319 网络对抗 Exp4 恶意代码分析
基础问题回答
1. 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控
答:1、使用Windows自带的schtasks指令设置一个计划任务,指定每隔一定时间记录主机的联网记录或者是端口开放、注册表信息等
2、可以利用Sysmon,编写配置文件,记录与自己关心的事件有关的系统日志
2. 如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息
1、使用systracer工具分析恶意软件,进行快照的对比.
2、可以利用Wireshark等网络工具查看是否存在可疑连接
实验内容
系统运行监控(2分)
使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。
参考:schtask与sysmon应用指导
实际日志的分析还需要发挥下自己的创造力,结合以前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得大家会什么用什么了。
恶意软件分析(1.5分)
分析该软件在(1)启动回连(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。
该后门软件
读取、添加、删除了哪些注册表项
读取、添加、删除了哪些文件
连接了哪些外部IP,传输了什么数据(抓包分析)
该实验重点在“分析”,不是“如何使用某软件”。组长、课题负责人要求写细一点,其他人可以重点放在分析上。
报告评分(1分)
1、使用schtasks指令监控系统(使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述分析结果)
使用schtasks /create /TN netstat5319 /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt"命令创建计划任务netstat5319
TN是TaskName的缩写,我们创建的计划任务名是netstat5318;
sc表示计时方式,我们以分钟计时填MINUTE;
TR=Task Run,要运行的指令是 netstat
bn,b表示显示可执行文件名,n表示以数字来显示IP和端口;
表示输出重定向,将输出存放在c:\netstatlog.txt文件中
在C盘中创建一个netstat5319.bat脚本文件,写入以下内容
date /t >> c:\netstat5319.txt time /t >>
c:\netstat5319.txt netstat -bn >>
c:\netstat5319.txt
打开任务计划程序,可以看到新创建的这个任务

双击这个任务,点击操作并编辑,将“程序或脚本”改为我们创建的netstat5319.bat批处理文件,确定即可
还可以自行更改该任务的其他属性,如在"条件"选项卡中可以看到,电源选项中默认操作为“只有在计算机使用交流电源时才启动此任务”,那么使用电池电源时就会停止任务。这点需要格外注意,如果没有修改默认操作,任务无论如何都无法执行可能只是因为拔掉了电源。为了我们统计足够多的数据,最好把这个取消掉
可以在C盘的netstat19.txt文件中查看到本机在该时间段内的联网记录:

当记录的数据足够丰富时,停止任务,将所得数据在excel中进行分析,此过程要一直保持开机联网状态才能持续监控
等待一段时间(如一天),将存储的数据通过excel表进行整理,过程参考学姐的博客
统计数据如下:

数据透视图如下:

2.使用sysmon工具监控系统(安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。)
首先创建配置文件sysmon5319.txt,并输入如下的代码:
*
microsoft
windows
<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">5311</DestinationPort>
<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">svchost.exe</TargetImage>
<TargetImage condition="end with">winlogon.exe</TargetImage>
<SourceImage condition="end with">powershell.exe</SourceImage>
</CreateRemoteThread>
在官网上下载sysmon工具
以管理员身份打开命令行,使用指令Sysmon.exe -i C:\sysmon5319.txt安装sysmon

安装成功之后在事件查看器中的应用程序和服务日志下,查看Microsoft->Windows->Sysmon->Operational。
在这里,我们可以看到按照配置文件的要求记录的新事件,以及事件ID、任务类别、详细信息等等。

利用Sysmon具体分析日志
我用的自己的后门程序进行分析。
启动回连、安装到目标主机
输入getpid 查询进行数据筛选

在服务日志中发现了后门程序的痕迹

恶意软件分析
使用工具对上次实验中生成的.jar文件进行扫描

查看行为检测:

可知此恶意代码主要就是通过建立一个反弹连接,受害机一旦运行该程序,攻击机就会自动获取该受害机的控制权限,
并在受害机中创建进程、修改删除文件、创建事件对象等等,对受害机造成很大的威胁。
peid工具识别
下载peid工具,并将后门程序用它进行检测

检测加压缩壳,显示:

检测加密壳,无法查出:

2.2使用systracer工具分析恶意软件
启用回连后会修改注册表

根据观察发现,在使用回连后门程序进行音频,摄像头和屏幕捕捉的时候会反复出现下图这个HKLM\SYSTEM\CurrentControlSet\Enum注册表的修改

HKLM\SYSTEM\CurrentControlSet\Enum注册表树包含了系统的设备信息。即插即用(PnP)管理器为每个设备创建了一个名为HKLM\SYSTEM\CurrentControlSet\Enum\Enumerator\deviceID的子键。这些键值下面的每一项都是目前系统中存在的每个设备实例的子键。这些被称作设备的硬件键值的子键,拥有一些如设备描述,硬件ID,兼容ID和资源需求等信息。
枚举树被保留给操作系统组件使用,它们的排列也会随之改变。驱动程序和用户模式的设备安装组件必须使用系统提供的函数,比如IoGetDeviceProperty和SetupDiGetDeviceRegistryProperty,从这个树上获取信息。驱动程序和Windows应用程序不能直接访问该树,因此进程对这个注册树的改动应该引起注意。当调试驱动程序时,可以直接使用注册表编辑器查看这个树。
实践体会
这次实验需要抓一个长时间的包,我就体会到了什么叫最后一天再做实验的苦果了。只能一边抓包一边做别的实验。然后就看到后门程序的链接数量出奇的很多。
初期使用schtasks时出现了找不到列的问题

后来通过查询资料得知可以运行命令:chcp ,查看到当前系统的活动代码页编号为936,即中文编码。
错误原因是编码不支持,运行命令:chcp 437,修改活动代码页编号为437(英文)。
最后成功

2018-2019 20165319 网络对抗 Exp4 恶意代码分析的更多相关文章
- 2018-2019 20165237网络对抗 Exp4 恶意代码分析
2018-2019 20165237网络对抗 Exp4 恶意代码分析 实验目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp3中生成后 ...
- 2018-2019 20165235 网络对抗 Exp4 恶意代码分析
2018-2019 20165235 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件 ...
- 2018-2019-2 《网络对抗技术》Exp4 恶意代码分析 Week6 20165311
2018-2019 20165311 网络对抗 Exp4 恶意代码分析 2018-2019 20165311 网络对抗 Exp4 恶意代码分析 实验内容 系统运行监控(2分) 恶意软件分析(1.5分) ...
- 20155207 《网络对抗》exp4 恶意代码分析 学习总结
20155207 <网络对抗> 恶意代码分析 学习总结 实践目标 1.是监控你自己系统的运行状态,看有没有可疑的程序在运行. 2.是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件 ...
- 20155207王雪纯《网络对抗》Exp4 恶意代码分析
20155207 <网络对抗> 恶意代码分析 学习总结 实践目标 1.是监控你自己系统的运行状态,看有没有可疑的程序在运行. 2.是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件 ...
- 20155338《网络对抗》 Exp4 恶意代码分析
20155338<网络对抗>恶意代码分析 实验过程 1.计划任务监控 在C盘根目录下建立一个netstatlog.bat文件(先把后缀设为txt,保存好内容后记得把后缀改为bat),内容如 ...
- 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...
- 2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析
2018-2019-2 20165325 网络对抗技术 Exp4 恶意代码分析 实验内容(概要) 一.系统(联网)运行监控 1. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且 ...
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...
随机推荐
- 第五周博客作业<西北师范大学|李晓婷>
1.助教博客链接:https://home.cnblogs.com/u/lxt-/ 2.作业要求链接:https://www.cnblogs.com/nwnu-daizh/p/10527959.htm ...
- java.lang.IllegalArgumentException: There is no PasswordEncoder mapped for the id "null"报错
出现问题的原因: 内存用户验证时,Spring boot 2.0.1引用的security 依赖是 spring security 5.X版本,此版本需要提供一个PasswordEncorder的实例 ...
- go语言基础知识笔记(二)之数组和切片
数组和切片知识用的也是比较多,的给我们工作带来很大的便利 (一) 数组 定义:在golang中数组的长度是不可变,数组存放要求是同一种数据类型 //golang中数组定义的四种方法1.先声明,后赋值 ...
- 财务平台亿级数据量毫秒级查询优化之elasticsearch原理解析
财务平台进行分录分表以后,随着数据量的日渐递增,业务人员对账务数据的实时分析响应时间越来越长,体验性慢慢下降,之前我们基于mysql的性能优化做了一遍,可以说基于mysql该做的优化已经基本上都做了, ...
- JAVA开发环境搭建(Mac)
1. 打开Terminal, 执行命令: java -version 即可查看到我们所安装的jdk版本. 2.安装jdk成功之后,我们还需要配置jdk环境变量. 使用命令: /usr/libexec/ ...
- 更改MySQL密码
#安装MySQL5.7参考:https://blog.csdn.net/qq_23033339/article/details/80872136#MYSQL的基础操作参考:https://www.cn ...
- APP数据的爬取
前言 App 的爬取相比 Web 端爬取更加容易,反爬虫能力没有那么强,而且数据大多是以 JSON形式传 输的,解析更加简单.在 Web 端,我们可以通过浏览器的开发者工具监听到各个网络请求和响应过程 ...
- 转:Spring历史版本变迁和如今的生态帝国
Spring历史版本变迁和如今的生态帝国 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/bntX2jSQfEHy7/article/deta ...
- 软件测试-Svn服务器搭建全过程-基于Centos6.7-64bit
本文详细介绍了在CentOs6.7-64bit服务器上搭建SVN版本控制服务 工具准备 CentOs6.7-64bit操作系统:关闭linux防火墙:设置定固IP--DHCP(动态):安装系统过程中开 ...
- HDU - 1050
wa了5遍?!! (1)前4遍,思路没简化,企图模拟整个过程,但是调用sort函数时由于没有把奇数的屋子和偶数的屋子统一,排序出了问题. 思路:遍历n段,每次只扫未被标记过的一段,ans++并且从该段 ...
