网络对抗 Exp4 恶意代码分析 20154311 王卓然

Exp4 恶意代码分析

一、实践目标

1.监控自己系统的运行状态,看有没有可疑的程序在运行。

2.分析一个恶意软件,分析Exp2或Exp3中生成后门软件。

二、实践步骤

1.系统运行监控

使用 netstat 定时监控

首先创建一个txt文件,用来将记录的联网结果按格式输出到netstatlog.txt文件中,内容为:

date /t >> c:\netstatlog.txt

time /t >> c:\netstatlog.txt

netstat -bn >> c:\netstatlog.txt

更改后缀名为bat(批处理文件),右键开始菜单打开命令提示符(管理员模式,不然权限不够)输入指令 schtasks /create /TN 20154311(任务名) /sc MINUTE /MO 2 /TR "c:\20154311.bat(上面创建的文件) 创建间隔2分钟的计划任务。

 

(或者在控制面板版—计划任务中创建一个触发器为”按预定计划“,重复间隔自己设定,操作中程序选中上面创建的文件的定时任务)。

过一段时间等收集到足够多的数据后,创建一个excel在数据选项卡中选择导入数据,选中保存的netstatlog.txt文件,设置使用 分隔符号 ,并勾选全部分隔符号。

单击数据透视表,选中进程那一列,创建到新的工作表中,把字段拉到行和值中,选为计数,就得到各进程的活动数了(注意把不需要统计的行勾掉)。

 

我们可以转化为柱状图,更为直观简洁

没有可以进程,我的电脑还是挺安全的(et.exe是wps表格进程)。

再看看外部网络连接

相比进程多了好多,应该是浏览器浏览不同地址造成的。

 

使用 sysmon 工具监控

首先配置sysmon,创建一个txt文件,输入配置信息,可根据个人需求增添删改。

 

管理员模式运行cmd,用cd指令转到sysmon目录,输入指令 sysmon.exe -i 20154311.txt(如果配置文件与sysmon.exe不在同一目录,需要输入配置文件的目录),跳出安装窗口后同意完成安装。

启动sysmon之后可以在 右键我的电脑——管理——事件查看器——应用程序和服务日志——Microsoft——Windows——Sysmon——Operational 查看日志文件。

 

找到了我自己启动自己制作的后门文件

然而从他给我提供的信息我感觉并看不出来有啥不一样的,并不知道如何判定为后门文件,就有一点它的PARENTIMAGE(源镜像?)那一栏写的是explorer.exe(程序管理和文件资源管理程序,没了他就没桌面了)和sysmon本身一样,百度了一下explorer是很多病毒喜欢伪装或感染的对象,可能我的后门程序主要就是通过explorer来达到控制的目的的吧。

添加端口号、进程创建、文件创建时间的监察,使用指令 sysmon.exe -c 20154311.txt 更新配置

 

除了自己的后门文件外,并没有其他的可疑进程,safe?!。

2.恶意代码分析

使用virscan分析恶意软件

在virscan网站上对上次实验中C语言调用shellcode直接编译的后门文件做行为分析

 

可以看到攻击方主机的部分IP及端口号,且说明了有删除注册表键和键值、检测自身是否被调试以及创建事件对象的行为。(还是可以的)。

使用SysTracer分析恶意软件

使用systracer工具建立4个快照,分别为:

  snapshot#1 后门程序启动前,系统正常状态

  snapshot#2 启动后门回连Linux

  snapshot#3 Linux控制windows在其D盘目录下创建一个文件

  snapshot#4 关掉后门,断开连接后,主机状态

先对比下1,2两种情况

把Only differences勾上,这样会只显示前后两种状态更改的内容,更方便我们查看。

 

可以看到打开后门后修改了以上三项注册表的内容,在应用(Application)——打开端口(Opened Ports)中能看到后门程序回连的IP和端口号。

接着对比下2,3两种情况

在原来的基础上原来的三个注册表都有修改,还多修改了一项HKEY_CLASSES_ROOT

增加了一个文件,就是我们操作创建的。

文件内容也和我们编写的一样(不过我的回车被吃了...)。

接着对比下3、4两种情况

 

注册表还有改动,难道是为了掩饰又改回去了?(变动太多,也看不太懂)其他的倒是没什么差别。

使用PEiD分析恶意软件

使用PEiD软件可以查看恶意软件的壳的相关信息,以及其所使用的编译器版本,我用上次实验upx加壳生成的后门文件为样本检测。

加壳信息一目了然,好废啊~~加壳~~。

使用Process Monitor分析恶意软件

 启动后会抓到非常多的进程数据,可以点出工具——进程树便利查看,多了堆栈信息,然而好像其他的具体内容不多。

不过能看出我的后门程序运行起来后确实与explorer.exe有很大的关系

在进程树中找到后门进程右键转到事件,可以在主窗口中找到程序,能直接看到回连的IP地址和端口号然而这次IP地址没显示,显示为bogon,百度了下说是不该出现在路由表中的地址,出现了则说明被攻击了或被蹭~网~了,有趣,总之有出现的话就小心点。

在进程信息中的模块里找到 advapi32.dll 百度说是包含函数与对象的安全性、注册表的操控以及与事件日志有关,还是很重要的一个dll文件,一个无关程序莫名与其挂钩,就很值得引起我们怀疑。

使用Process Explorer分析恶意软件

 打开process explorer后,接着运行后门程序回连,发现我的后门程序以紫色高亮身份显示(莫不是被查出来了?!)

双击点开进程,在TCP/IP选项卡中可以看到回连的Linux的IP地址和端口。

使用TCPView工具分析恶意软件

后门运行时直接打开 tcpview 工具,可以直接找到后门进程

可以直接看到后门程序连接的IP地址及端口号。

三、实验后问题回答

(1)如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么。请设计下你想监控的操作有哪些,用什么方法来监控。

         答:①可以通过设置定时计划任务,使用 netstat 指令将主机中的网络连接活动迹象都记录下来,逐一筛选

                ②可以使用sysmon工具,有选择的编写配置文件,将主机中各个进程的活动记录下来,能更加省时省力。

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

         答:①可以使用systracer工具,对比进程运行前后,系统中的变化情况,从而得知它的行为活动信息。

                ②可以使用process explorer工具,查看该进程的网络连接情况,以及线程、执行等信息。

四、实验心得与体会

          这次实验主要是需要学会看懂各个监控,分析工具中数据的代表意义,才能有效的分析和判断出是否为恶意程序,工具的使用本身倒不难,然而这些数据却也偏偏就是最大的难题,需要我们多查多理解,当然同时也对我们大有裨益。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

posted @ 2018-04-11 16:50  20154311王卓然  阅读(191)  评论(0编辑  收藏