2018-2019-2 网络对抗技术 20165328 Exp4 恶意代码分析
实验内容:
系统运行监控(2分)
使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。 参考:schtask与sysmon应用指导 实际日志的分析还需要发挥下自己的创造力,结合以前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得大家会什么用什么了。
恶意软件分析(.5分)
分析该软件在()启动回连()安装到目标机()及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。
该后门软件
读取、添加、删除了哪些注册表项
读取、添加、删除了哪些文件
连接了哪些外部IP,传输了什么数据(抓包分析)
报告评分(1分)
基础问题回答:
1. 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控
- 使用Windows自带的schtasks指令设置一个计划任务,指定每隔一定时间记录主机的联网记录或者是端口开放、注册表信息等;
- 通过sysmon工具,配置好想记录事件的文件,之后在事件查看器里找到相关日志文件查看;
- 使用任务管理器->进程,监视进程执行情况,查看是否有可疑程序运行。
2. 如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息
- Systracer分析注册表差异、文件、运行进程等的不同;
- virscan集合各种杀软,对指定文件进行分析定性。
- Threatbook也就是老师上课所说的沙箱的一种,感觉比virscan检测出的信息更多些,而且还是网页版的很方便。
实验步骤:
1、使用schtasks指令监控系统
- 通过
schtasks /create /TN 20165328netstat /sc MINUTE /MO 1 /TR "cmd /c netstat -bn > c:\netstatlog.txt"
命令,创建计划任务20165328netstat
,如下图所示:
- 在C盘中创建一个
netstatlog.bat
脚本文件(可先创建txt文本文件,使用记事本写入后通过修改文件名来修改文件格式):
- 在其中写入以下内容:
date /t >> c:\netstat5328.txt
time /t >> c:\netstat5328.txt
netstat -bn >> c:\netstat5328.txt
- 在"开始"中,打开任务计划程序,可以看到创建的任务20165328netstat:
- 双击打开这个任务,点击"操作",再进行编辑:
- 将"程序或脚本"内容改为刚才创建好的netstatlog.bat批处理文件。点击"确定":
- 在执行此批处理文件一段时间后,打开
netstatlog.txt
进行查看,发现已经记录了一段时间的联网记录:
- 记录此时已足够进行分析,将这些数据导入Excel中,导入方法见学长博客:
可以看出TCP连接最多,WPS次之,其余的联网次数都差不多
2、使用sysmon工具
- 首先创建配置文件20165328Sysmoncfig.txt,文件中包含指令(使用老师给的代码)如下:
<Sysmon schemaversion="3.10">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<EventFiltering>
<!-- Log all drivers except if the signature -->
<!-- contains Microsoft or Windows -->
<ProcessCreate onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
</ProcessCreate> <FileCreateTime onmatch="exclude" >
<Image condition="end with">chrome.exe</Image>
</FileCreateTime> <NetworkConnect onmatch="exclude">
<Image condition="end with">chrome.exe</Image>
<SourcePort condition="is">137</SourcePort>
<SourceIp condition="is">127.0.0.1</SourceIp>
</NetworkConnect>
<NetworkConnect onmatch="include">
<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>
</EventFiltering>
</Sysmon>
- 然后下载并解压sysinternals。下载地址:https://docs.microsoft.com/zh-cn/sysinternals/downloads/sysmon:
- 以管理员身份执行命令
sysmon.exe -i C:\20165328Sysmoncfig.txt
- 会提示出错,输入命令sysmon -accepteula -i -n;继续安装:
在事件查看器里查看日志
- 图标“计算机”右键,点击打开“管理”。点击左侧“系统工具”->“事件查看器”->应用程序和服务日志/Microsoft/Windows/Sysmon/Operational:
利用Sysmon具体分析日志
- 这里选择了实验二中生成的后门djw_upxd.exe进行分析:
3、恶意软件分析:
静态分析 文件扫描(VirusTotal、VirusScan工具等)
文件格式识别(peid、file、FileAnalyzer工具等)
字符串提取(Strings工具等)
反汇编(GDB、IDAPro、VC工具等)
反编译(REC、DCC、JAD工具等)
逻辑结构分析(Ollydbg、IDAPro工具等)
加壳脱壳(UPX、VMUnPacker工具等)
我主要选取以下几种方法和工具来进行分析
(1) 文件扫描(VirScan工具)
- 使用在线Virus Total工具对上次实验中生成的djw_upxed.exe文件进行扫描,有(33/72)个软件发现病毒:
- 将后门程序放到VirusTotal中进行分析,并得到SHA-1、MD5摘要值、文件类型、大小、TRiD文件类型识别结果和算法库支持情况:
(2)文件格式识别(peid工具):
下载Peid工具,对上次实验中用Veil生成的加壳的后门程序进行查壳:
- 未加壳:
- 加壳:
(3)、使用Process Monitor分析恶意软件
- 双击打开可执行文件,可以看到各个进程的详细信息,如下图所示:
(4)、使用Process Explorer分析恶意软件
(5)、使用systracer分析恶意软件
先在win7虚拟机安装SysTracer软件。
基本步骤如下:
打开未植入后门的win7虚拟机保存快照,命名为Snapshot #1
将木马植入win7,对win7注册表、文件等进行快照,保存为Snapshot #2
打开kali的msfconsle,win7运行木马,回连kali,win7下再次快照,保存为Snapshot #3
在kali中对靶机进行查看文件操作
ls
,win7下再次快照,保存为Snapshot #4在kali中对靶机进行屏幕截图操作,win7下再次快照,保存为Snapshot #5
实验总结与体会:
- 通过这次的实验,我对电脑中的联网活动有了更多的了解,掌握了能够检测出自己电脑是否被人攻击的一些方法。通过一些软件使用静态与动态检测的方法来追踪、分析,能检测出许多杀毒软件所没能查找出来的问题,总而言之,就是杀毒软件真的不靠谱,枉我以前还这么信任它······
2018-2019-2 网络对抗技术 20165328 Exp4 恶意代码分析的更多相关文章
- 2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165232 Exp4 恶意代码分析 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2或Exp3中生成后门 ...
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析
- 2018-2019-2 网络对抗技术 20165206 Exp4 恶意代码分析 - 实验任务 1系统运行监控(2分) (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP ...
- 2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165317 Exp4 恶意代码分析 实验要求 1.系统运行监控 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间 ...
- 2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165225 Exp4 恶意代码分析 实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或Exp ...
- 2018-2019-2 网络对抗技术 20165336 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165336 Exp4 恶意代码分析 1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行. 1.2是分析一个恶意软件,就分析Exp2或E ...
- 2018-2019-2 20165236 《网络对抗技术》Exp4 恶意代码分析
2018-2019-2 20165236 <网络对抗技术>Exp4 恶意代码分析 一.1.实践目标 1.1是监控你自己系统的运行状态,看有没有可疑的程序在运行; 1.2是分析一个恶意软件, ...
- 2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165316 Exp4 恶意代码分析 一.原理与实践说明 1.实践目标 监控你自己系统的运行状态,看有没有可疑的程序在运行. 分析一个恶意软件,就分析Exp2 ...
- 2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165228 Exp4 恶意代码分析 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪 ...
- 2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析
2018-2019-2 网络对抗技术 20165308 Exp4 恶意代码分析 实验过程 一.系统运行监控 (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一 ...
随机推荐
- ACM-自学之旅
分类 知识清单 数据结构 链式前向星 树状数组 线段树 线段树的区间合并 基于ST表格的RMQ 图论 最近公共祖先 树的直径.树的重心与树的点分治 树的最小支配集,最小点覆盖与最大独立集 求无向连通图 ...
- (BST 递归) leetcode98. Validate Binary Search Tree
Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is defined as ...
- codeforces-1131 (div2)
A.把右上角的凹缺口补上变成凸的就成了规则矩形 #include <map> #include <set> #include <ctime> #include &l ...
- 1x1的卷积核有什么作用
信道压缩~跨~信~减 一.1 X 1的卷积核作用 所谓信道压缩,Network in Network是怎么做到的? 对于如下的二维矩阵,做卷积,相当于直接乘以2,貌似看上去没什么意义: 但是,对于下面 ...
- nginx资料汇总
nginx docker 中的一些目录和 windows下是不同的, 静态内容目录: /usr/share/nginx/html 配置文件目录: /etc/nginx 日志输出目录: /var/log ...
- centos6 & centos 7 防火墙设置
转载:原文地址:http://blog.csdn.net/u011846257/article/details/54707864 Centos升级到7之后,内置的防火墙已经从iptables变成了fi ...
- Python——使用高德API获取指定城指定类别POI并实现XLSX文件合并
# 以下内容为原创,转载请注明出处 1 import xlrd # 读xlsx import xlsxwriter # 写xlsx import urllib.request # url请求,Pyth ...
- linxu下redis安装实战
redis官网地址:http://www.redis.io/ 最新版本:2.8.3 在Linux下安装Redis非常简单,具体步骤如下(官网有说明): 1.下载源码,解压缩后编译源码. $ wget ...
- 将驱动编译进Linux内核
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- 面试经验合集-Web前端<一>
面试一:MF时间:2019-1-2 试题一 // [mf: stringify-query-string] // 类型: x z // 时长: 15 分钟 // 姓名: // 日期: // 实现下面的 ...