代码改变世界

Exp 4 恶意代码攻击 20154315 李惠航

2018-04-14 07:53  20154315李惠航  阅读(266)  评论(0编辑  收藏

一、实践目标

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

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

二、实践步骤

1.系统运行监控

1.1 使用 netstat 定时监控

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

date /t >> c:\netstatlog.txt

time /t >> c:\netstatlog.txt

netstat -bn >> c:\netstatlog.txt

更改后缀名为bat(批处理文件),右键开始菜单打开命令提示符,右键点击选择“使用管理员权限”(注意:此处必须是管理员权限,否则权限不够将无法执行本步骤)输入指令 schtasks /create /TN 20154315(任务名) /sc MINUTE /MO 2 /TR "c:\20154315.bat(上面创建的文件) 创建间隔2分钟的计划任务。

过一段时间,等收集到足够多的数据后,netstatlog.txt如下图:

创建一个excel,在“数据”选项卡中选择“导入数据”,选中保存的netstatlog.txt文件,设置使用分隔符号 ,并勾选全部分隔符号。

 

 

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

 

 我们还可以转化为数据透视图,观察起来会更加直观。

 

1.2使用 sysmon 工具监控

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

管理员模式运行cmd,用cd指令转到sysmon目录,输入指令 sysmon64.exe -i 20154315.txt,跳出安装窗口后同意完成安装。

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

 

我感觉并看不出来有啥不一样的,并不知道如何判定为后门文件,就有一点它的PARENTIMAGE那一栏写的是explorer.exe(程序管理和文件资源管理程序,没了他就没桌面了)和sysmon本身一样,可能我的后门程序主要就是通过explorer来达到控制的目的的吧。

 

 

 

2.恶意代码分析

2.1 使用virscan分析恶意软件

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

 

非常危险!!!

2.2 使用SysTracer分析恶意软件

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

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

  snapshot#2 启动后门回连Linux

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

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

先对比下Snapshot #1和Snapshot #2两种情况,选中快照,然后点击“compare”按钮

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

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

 

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

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

增加了一个文件,就是刚刚我创建的。

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

注册表还有改动

2.3 使用PEiD分析恶意软件

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

可见加壳真的没啥用...........

2.4 使用Process Monitor分析恶意软件

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

 

2.5 使用Process Explorer分析恶意软件

打开Process Explorer,运行后门程序20154315_backdoor.exe,在Process栏可以找到20154315_backdoor.exe

双击后门程序20154315_backdoor.exe那一行,点击不同的页标签可以查看不同的信息:
TCP/IP页签有程序的连接方式、回连IP、端口等信息。

Strings页签有扫描出来的字符串,有些有意义,有些无意义。我发现了一个wxf.c文件在里面,我估计是他运行20154315_backdoor.exe所依托的代码。

 

三、实验后问题回答

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

答:

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

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

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

答:

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

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

四、实验心得与体会

这次实验,在于使用不同的工具分析系统中程序/进程,通过对其行为的分析来证实该程序/进程是否为恶意代码,分析的方法有好多,像抓包、查看日志、统计网络使用情况等,通过对比,找到一段时间内使用不正常的程序/j进程,再进行行为分析,确定是否是恶意代码。最重要的是,要养成一个良好的上网习惯,尽量去避免恶意代码的入侵,保护我们的隐私和数据,保护我们自己的计算机,这是这个实验更深层次的意义所在。