20155227《网络对抗》Exp4 恶意代码分析
20155227《网络对抗》Exp4 恶意代码分析
实践目标
1.是监控你自己系统的运行状态,看有没有可疑的程序在运行。
2.是分析一个恶意软件,就分析Exp2或Exp3中生成后门软件;分析工具尽量使用原生指令或sysinternals,systracer套件。
3.假定将来工作中你觉得自己的主机有问题,就可以用实验中的这个思路,先整个系统监控看能不能找到可疑对象,再对可疑对象进行进一步分析,好确认其具体的行为与性质。
实践内容(3.5分)
1.系统运行监控(2分)
(1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里。运行一段时间并分析该文件,综述一下分析结果。目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓包的情况下只能猜),你觉得它这么干合适不。如果想进一步分析的,可以有针对性的抓包。
(2)安装配置sysinternals里的sysmon工具,设置合理的配置文件,监控自己主机的重点事可疑行为。
参考:schtask与sysmon应用指导
实际日志的分析还需要发挥下自己的创造力,结合以前学过的知识如linux的文本处理指令等进行。分析的难点在于从大量数据中理出规律、找出问题。这都依赖对结果过滤、统计、分类等进一步处理,这就得大家会什么用什么了。
2.恶意软件分析(1.5分)
分析该软件在(1)启动回连,(2)安装到目标机(3)及其他任意操作时(如进程迁移或抓屏,重要是你感兴趣)。该后门软件
(3)读取、添加、删除了哪些注册表项
(4)读取、添加、删除了哪些文件
(5)连接了哪些外部IP,传输了什么数据(抓包分析)
实践内容及步骤
使用schtasks指令监控系统运行
先在
C盘
目录下建立一个netstatlog.bat
文件,用来将记录的联网结果格式化输出到netstatlog.txt
文件中,netstatlog.bat
内容为:date /t >> c:\netstatlog.txt
time /t >> c:\netstatlog.txt
netstat -bn >> c:\netstatlog.txt
然后打开
Windows
下命令提示符,输入指令schtasks /create /TN netstat /sc MINUTE /MO 2 /TR "c:\netstatlog.bat"
指令创建一个每隔两分钟记录计算机联网情况的任务
- 创建完成后,我运行这个任务,发现
netstatlog.txt
并没有显示出网络连接记录信息,而是请求的操作需要提升。然后发现是自己没有以管理员身份运行.
- 一段时间后查看
netstatlog.txt
文件,可以观察到运行的免杀的恶意程序5227test32.exe
,除此之外没什么不明联网情况。
监测了好几天之后,将txt
导入到Excel
中,整理发现最常见的是360se
即360游览器,360tray
即360安全卫士。
以及常见的进程[svchost.exe]
:Svchost.exe
是从动态链接库(DLL)中运行的服务的通用主机进程名称。这个程序对系统的正常运行是非常重要,而且是不能被结束的。
[conhost.exe]:微软的系统文件。
sysmon工具监控
- 用管理员身份运行
cmd
,配置文件,保存在sysmon.exe
同目录下就好。输入以下指令进行安装配置。
- 右键“我的电脑”选择管理,进入事件查看器,查看日志:
监测到进程创建:
监测到360对文件创建时间进行了修改:
- 监测到kali监听回连时的网络连接:
virscan网站分析
在上次用来查杀程序的网站上,等一段时间后会出现程序的行为分析,点击可以查看到对这个程序的行为描述,还有它对注册表是否有增删的情况等等:
systracer工具快照分析
我一共建立了3个快照,分别是:有后门程序但未回连时、后门程序回连时、执行指令操作时。
可以看到Kali回连成功后注册表发生变化:
对比未回连时和回连时可以发现后门程序建立了主机到Kali的tcp连接,进行了回连;后门程序对注册表项进行了修改:
对比回连时和输入指令时可以看到后门程序对文件、注册表等都进行了增改:
使用wireshark分析恶意软件回连情况
在Windows
主机上用netstat
命令可以查看TCP
连接的情况,其中就有后门程序所建立的TCP
连接:
使用wireshark
进行抓包后可以看到,其先进行了TCP
的三次握手,之后再进行数据的传输,如图所示,带有PSH,ACK
的包传送的就是执行相关操作指令时所传输的数据包:
使用PEiD分析恶意软件
PEiD是一个常用的的查壳工具,可以分析后门程序是否加了壳:
Process Monitor分析
使用Process Explorer分析恶意软件
打开Process Explorer
,在Process
栏点开explorer.exe
前面的小加号,运行后门程序5227test32.exe
,界面上就会出现它的基本信息。
双击后门程序那一行,点击不同的页标签可以查看不同的信息:
其调用的ntdll
库,ntdll.dll
是重要的Windows NT
内核级文件。描述了windows
本地NTAPI
的接口。当Windows
启动时,ntdll.dll
就驻留在内存中特定的写保护区域,使别的程序无法占用这个内存区域。
问题回答
(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。
- 可以使用
systracer
工具比较某个程序的执行前后计算机注册表、文件、端口的变化情况。 - 可以使用
Wireshark
进行抓包分析,然后查看该程序联网时进行了哪些操作。 - 使用
netstat
命令设置一个计划任务,指定每隔一定时间记录主机的联网记录等等。 - 可以通过
sysmon
工具,配置好想记录事件的文件,然后在事件查看器里面查看相关文件。
(2)如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息。
- 可以使用
systracer
工具比较某个程序的执行前后计算机注册表、文件、端口的变化情况。 - 可以使用
Wireshark
进行抓包分析,然后查看该程序联网时进行了哪些操作。
实验总结与体会
刚开始做实验时有点无从下手,参考了很多学长学姐的博客,通过这次实验,可以看到现在的恶意代码已经不能仅仅靠杀软来查杀了。我们需要了解使用不同软件来进行恶意代码分析的方法,希望以后也能运用这些知识来发现系统中的一些异常行为吧。
20155227《网络对抗》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 20165319 网络对抗 Exp4 恶意代码分析
基础问题回答 1. 如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控 答:1.使用Windows自带的schta ...
- 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. 使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,逐步排查并且 ...
随机推荐
- 排错-Ad Hoc Distributed Queries组件被禁用的解决办法
Ad Hoc Distributed Queries组件被禁用的解决办法 by:授客 QQ:1033553122 SQL Server 阻止了对组件 'Ad Hoc Distributed Queri ...
- phar 反序列化学习
前言 phar 是 php 支持的一种伪协议, 在一些文件处理函数的路径参数中使用的话就会触发反序列操作. 利用条件 phar 文件要能够上传到服务器端. 要有可用的魔术方法作为"跳板&qu ...
- js判断数组是否包含某个字符串变量
最近碰到一个这样的现象,后台返回的数据中,数组里面有一些有变量值,有一些没有变量值. 举个例子,比如后台返回的例子是这样的: var arr=[ { "status":" ...
- Unity Profiler Memory
当游戏出现闪退时很大概率是内存出现了问题,查找下代码中是否报错导致一直申请内存,还是申请的内存没有释放掉,比如图集等. 比如开着Profiler,一直开关界面看界面用到的图集是否被释放掉. 点击Mem ...
- Django 序列化三种方式 对象 列表 元组
1.xuliehua.html <html lang="en"> <head> <meta charset="UTF-8"> ...
- 8.2、常用模块介绍2:xml,configparser,hashlib
xml: 介绍:包含关于可扩展标记语言xml的函数 使用: python有三种方法解析XML--SAX,DOM,以及ElementTree,由于xml技术落后,所以这里不对sax,dom介绍: xml ...
- VMWare虚拟机安装Linux系统时安装界面显示不全的解决、Linux分区
1.只有最下面的按钮不全(可以显示字的一部分):可以用Tab键操控进行下一步 2.只有一半左右的界面:用Alt+鼠标左键移动安装界面 3.关于Linux分区:如果想用Linux进行深入操作,尽量不要选 ...
- Django开发笔记(一)
Django开发笔记(一) 标签(空格分隔): Django Python 1. 创建并运行Django项目 创建开发环境 安装Django pip install django==version 执 ...
- SQL 中常用存储过程xp_cmdshell运行cmd命令 (转载)
目的:使用SQL语句,在D盘创建一个文件夹myfile 首先查询系统配置 SELECT * FROM sys.configurations WHERE name='xp_cmdshell' OR na ...
- JBoss EAP应用服务器部署方法和JBoss 开发JMS消息服务小例子
一.download JBoss-EAP-6.2.0GA: http://jbossas.jboss.org/downloads JBoss Enterprise Application Platfo ...