您的位置:首页 > 理论基础 > 计算机网络

20145316许心远《网络对抗》第四次实验:恶意代码分析

2017-03-30 00:44 183 查看

20145316许心远《网络对抗》第四次实验:恶意代码分析

实验后回答问题

请设计下你想监控的操作有哪些,用什么方法来监控

想要监控的操作

监控链接了哪些ip和端口

监控注册表信息

监控文件的增删

权限变动

想要用什么方法进行监控

-静态方法

virscan扫描

ip explorer分析属性

dependency walker分析

peid分析

-动态方法

wireshark抓包分析

sysmon监视记录系统活动,并记录系统日志

systracker查看注册表和文件信息

创建任务监控

如果已经确定是某个程序或进程有问题,你有什么工具可以进一步得到它的哪些信息

TCPview工具可以查看系统的TCP连接信息

wireshark进行抓包分析,查看系统到底进行了哪些网络连接

systracer查看注册表信息的改动是否合理

sysmon/netstat监视和记录系统活动,并记录到windows事件日志

实验体会

终于理解了老师上课时说的“前三次实验大家都做得挺舒服的”这句话了,这次实验刚开始真是“透心凉,心飞扬”,一直到现在其实做得都并不满意,很多东西没有做全分析全,这才感觉到网络对抗这门课不是简单的种后门种病毒玩游戏,还是有很多硬知识需要去消化理解。比如说再systracer的snapshot环节,明明都照出来了,可就是不懂这些删减的表项到底什么意思,哪个进程开动了改往哪儿找,这充分显示出理论学习的不扎实。

之前三次实验都是老师给出实验大体步骤,一步一步照着做下去,像按照说明书搭房子,锻炼的是动手能力,但这次实验几乎没有实验指导,怎么做都要自己去想,从地基到房梁结构都要自己设计,侧重于锻炼思维能力,收获了一种全新的学习体验。

实验过程

恶意代码是指没有作用却会带来危险的代码,一个最安全的定义是把所有不必要的代码都看作是恶意的,不必要代码比恶意代码具有更宽泛的含义,包括所有可能与某个组织安全策略相冲突的软件。

恶意代码的分析方式有两种:静态分析技术和动态分析技术。在这篇博客里我们静态分析选用的工具是:virscan、PE explorer、PEiD、dependency walker;动态分析选用的工具是:systracer、wireshark、netstat、sysmon。

本次实验采用的代码是第二次后门实验的代码,中途改过多个名20145316_backdoor、fool5316、exp4等都是,大家意会。

win10的ip:192.168.2.175(桥接模式)

虚拟机的ip:192.168.2.202(桥接模式)

virscan扫描

用上次实验的方法将虚拟机生成的后门传送到主机



上传至virscan的在线网页,进行扫描(因为一点问题,我改了文件名)扫描结果如下:



等待一会,点击“文件行为分析”,生成行为分析报告



另外还有一些不需要工具的简单方法,比如说直接右键属性,没有证书、文件信息缺失的文件多有问题



PE explorer

文件头信息菜单下可以看一些简单的时间戳等基本属性信息





导入表菜单下可以看这个程序都调用了哪些dll文件。下图中的
ADVAPI32.dll
文件是一个高级API应用程序接口服务库的一部分,调用这个dll可以实现对注册表的操控,而
WSOCK32.dll
WS2_32.dll
这两个DLL用于创建套接字,即会发生网络连接。这3个dll同时出现,难道不奇怪吗?



PEiD

直接导入文件,查看程序是否加壳

but这个却告诉我们“nothing found”,好像是一个乖巧软萌的程序啊



尝试过其他同学的做法,进一步展开,但等待我的仍然是“not packed”,不造为啥,可能版本太低或者64位系统的缘故吧。



dependency walker

dependency walker这个软件也是针对dll进行分析的,而且显然比PE Explorer更强大



哈哈,在这里我们可以找到一个这个恶意软件删除注册表键值的函数调用



systracer(我的2.6版本有点低,建议下2.10)

从这里开始我们的动态分析吧~建立4个快照snapshot

snapshot#1:什么都不做的情况

snapshot#2:kali生成后门并文件通过ncat传到主机上

snapshot#3:kali打开msf监听并回连成功

snapshot#4:kali在msf监听端对主机进行截屏



快照结果对比分析

1&2————新增了我们传输的文件exp4(显示有些乱码)



1&2————ncat.exe被调用



1&2————注册表发生变化





2&3————新增注册表项vitualdesktop,获得主机shell



2&3————注册表发生变化



3&4————注册表发生变化



wireshark抓包

我抓取了kali向主机传送后门程序、回连、抓屏过程的数据包,设置正确的过滤条件,可以很轻易的获取相关信息,这些数据包里面含有三次握手过程,比如下图前三行。



“TCP segment of a reassemble PDU”是大段报文分解成段发送,像这部分应该就是传送后门文件时的数据。



netstat

创建任务,设置任务计划里的触发器,每5分钟反馈



在C盘下创建文件夹:5316,在文件夹下创建netstat5316.txt,写一个脚本,内容如下:



保存后将后缀改为.bat

设置任务计划的“操作”选项栏,将启动程序设为我们的
netstat5316.bat
,参数为
>>c:\5316\netstat5316.txt
,这样我们的网络记录信息netstat5316.txt就会保存在C盘5316文件夹下



创建完成,运行任务,5316文件夹下出现我们的txt文件



txt截的图没啥分析价值,传一张之前在命令行执行netstat的图吧。可以看到kali回连成功那里的extablished。





sysmon

安装sysmon成功,xml文件内容复制老师的



查看系统进程







内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: