20212916 2021-2022-2《网络攻防实践》实验八报告

1.实验内容

动手实践任务一

对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:

(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;

(2)使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理;

(3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?

动手实践任务二:分析Crackme程序

任务:在WinXP Attacker虚拟机中使用IDA Pro静态或动态分析crackme1.exe和crackme2.exe,寻找特定的输入,使其能够输出成功信息。

分析实践任务一:

分析一个自制恶意代码样本rada,并撰写报告,回答以下问题:

1、提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;

2、找出并解释这个二进制文件的目的;

3、识别并说明这个二进制文件所具有的不同特性;

4、识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;

5、对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;

6、给出过去已有的具有相似功能的其他工具;

7、可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?

分析实践任务二:

Windows 2000系统被攻破并加入僵尸网络

任务:分析的数据源是用Snort工具收集的蜜罐主机5天的网络数据源,并通过编辑去除了一些不相关的流量并将其组合到了单独的一个二进制网络日志文件中,同时IP地址和其他特定敏感信息都已经被混淆以隐藏蜜罐主机的实际身份和位置。回答下列问题:

1、IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?

2、僵尸网络是什么?僵尸网络通常用于什么?

3、蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?

4、在这段观察期间,多少不同的主机访问了以209.196.44.172为服务器的僵尸网络?

5、那些IP地址被用于攻击蜜罐主机?

6、攻击者尝试攻击了那些安全漏洞?

7、那些攻击成功了?是如何成功的?

2.实验步骤

2.1动手实践一

下载压缩包,并将其复制在winxp攻击机桌面上。

clip_image002

进入命令提示符,并在里面打开复制好的文件,查看文件夹中的内容以及指定文件的信息

clip_image004

输入命令 strings RaDa.exe查看可打印字符串(命令页截图没有成功)

clip_image006

根据上图显示的信息,推测是加壳导致(因为全部都是乱码),所以开始查壳。

如下图方式打开打开软件

clip_image008

点击此处添加文件

clip_image010

选择文件单击打开

clip_image012

点击扩展信息(上一步用的是英文版的,现在切换回中文版软件)

clip_image014

查看完毕后开始脱壳

clip_image016

打开脱壳工具,点击下图红框处添加文件,然后脱壳

clip_image018

成功后文件保存至如下路径

clip_image020

成功脱壳后我们再查看可打印字符串,注意此时的文件名已经有了更改,命令如下图所示

clip_image022

回车后查看信息

clip_image024

打开IDA Pro Free选择脱壳后的文件

clip_image026

clip_image027

clip_image029

clip_image031

之后点击下一步,完成即可

clip_image033

再上图红框中可以看见作者的信息

2.2动手实践二

2.2.1分析Crackmel1.exe

将其复制到桌面,尝试用命令提示符打开,但是没有密码,打不开,随机试一试,发现反馈了不同的信息,具体操作与信息如下图所示。发现输入应该为一个参数。

clip_image035

利用IDA分析程序

与动手实践一的打开方法一致,打开string查看显示第一个为参数错误,第二个是数量正确,但是内容错误的情况

clip_image037

查看函数调用图

clip_image039

查看其汇编代码

clip_image041

猜测是密码,密码错误的时候输出

clip_image043

当密码正确的时候输出

clip_image045

进行验证,输入crack1.exe “I know the secret” 发现验证正确

clip_image047

2.2.2分析Crackmel2.exe

试探输入参数的格式,发现第一个的回复与其余两个回复有所不同

clip_image049

接下来在IDA中打开,查看string,其中标红的两项为实验密码时出现的

clip_image051

查看函数调用图

clip_image053

查看此函数的函数图

clip_image055

下面为程序名匹配

clip_image057

程序名字正确与否的区别

clip_image059

程序名正确但是密码正确与否的区别

clip_image061

首先更改名字,然后根据上述内容更改,并输入,发现验证通过

clip_image063

实验输入错误的密码,并查看其输出

clip_image065

对比之前查看的结构图

clip_image067

2.3分析实践一

问题1解答

caaa6985a43225a0b3add54f44a0d4c7 *RaDa.exe

RaDa.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit

打开process monitor的filter

clip_image069

选择病毒文件 rada.exe

clip_image071

问题2解答

打开rada.exe文件,发现C盘创建了临时文件

clip_image073

clip_image075

问题2解答

并且进行了注册表操作

clip_image077

查看wireshark抓包

clip_image079

查看rada.exe的md5值

clip_image081

使用file RaDa.exe识别这个程序是PE32位的GUI文件。

clip_image083

打开process explorer中的rada.exe,点击strings,发现软件连接了了10.10.10.10这个IP的rada_commands.html网站下载和上传了一些文件。

clip_image085

双击打开,查看string,发现其向一个地址发送了信息

clip_image086

问题3解答

并且在C盘创建了一个tmp文件用于放置下载的文件

clip_image087

问题3解答

开始DDOS攻击

clip_image088

发现对注册表进行了读写和删除

clip_image089

可以看见注册表中无任何有关它的信息

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

clip_image091

接下来执行了上传、下载、休眠、截图的命令

clip_image092

查看作者信息

Raul Siles & David Perez

clip_image093

使用数据库查询语句查询可用网络适配器。

clip_image094

问题4解答(下图显示了加壳具体信息)

使用查壳工具查壳

clip_image095

实验一已经完成了脱壳的操作

将已经脱壳的文件用IDA打开并且在IDA VIEW-A中查找aAuthors和sub_405E40

clip_image097

双击打开sub_405E40

clip_image099

clip_image101

查看函数的flow chart

clip_image103

打开FUNCTION CALLS

clip_image105

打开sub_40B010

clip_image107

问题7回答

看到作者信息

clip_image109

clip_image111

补充问题5回答:

通过分析得知这个病毒对特定的ip地址进行DDOS攻击,所以为后门。

补充问题6回答:

NvBackControl 此工具与恶意代码具有相同的功能。

2.4分析实践二

问题1回答:

IRC(Internet中继聊天)提供了一种与来自世界各地的人们进行实时通信的方式。它由IRC服务器(允许用户连接到IRC的计算机)的各种独立 网络(或“网络”)组成。最大的网络是EFnet (原始IRC网络,通常一次有32,000多人), Undernet,IRCnet, DALnet和NewNet。

注册时需要发送的消息有三种,分别是口令,昵称和用户信息。格式如下:USER 、PASS 、NICK 。注册完成后,客户端就使用JOIN信息来加 入频道,格式如下:JOIN 。

6667(明文传输,如irc://irc.freenode.net)、6697(SSL加密传输,如ircs://irc.freenode.net:6697)等。

问题2回答:

“僵尸网络 Botnet 是指采用一种或多种传播手段,将大量主机感染bot程序(僵尸程序)病毒,从而在控制者和被感染主机之间所形成的一个可一对多控制的网络。攻击者通过各种途径传播僵尸程序感染互联网上的大量主机,而被感染的主机将通过一个控制信道接收攻击者的指令,组成一个僵尸网络。之所以用僵尸网络这个名字,是为了更形象地让人们认识到这类危害的特点:众多的计算机在不知不觉中如同中国古老传说中的僵尸群一样被人驱赶和指挥着,成为被人利用的一种工具。”

在kali虚拟机里打开文件

clip_image113

问题3:蜜罐主机(IP172.16.134.191)与那些IRC服务器进行通信

输入命令筛选,查看与主机通信的IP地址,筛选后发现共有下图所示五个IP地址

clip_image115

问题4:查看有多少不同的主机访问了以201.196.44.172为服务器的僵尸网络。

clip_image117

查看文件vim report.xml 显示一部分是从目标服务器发送出来的,一部分是从其他主机发送到目标主机的

clip_image119

输入命令export LC_COLLATE='C',export LC_CTYPE='C'

clip_image121

再输入

cat 209.196.044.172.06667-172.016.134.191.01152 | grep -a "^:irc5.aol.com 353" | sed "s/^:irc5.aol.com 353 rgdiuggac @ #x[^x]*x ://g" | tr ' ' '\n' | tr -d "\15" | grep -v "^$" | sort -u | wc -l

统计主机个数为3457

clip_image123

问题5:那些IP被用于攻击蜜罐主机

输入命令如下:

Tcpdump -n -nn -r /home/kali/<e6><a1><8c><e9><9d><a2>/botnet_pcap_file.dat 'dst host 172.16.134.191' | awk -F " " '{print $3}' | cut -d '.' -f 1-4 | sort | uniq | more > tcpdump.txt;wc -l tcpdump.txt

clip_image125

查看如下

clip_image127

问题6:攻击者尝试攻击了那些安全漏洞使用命令查看流量分布

输入命令如下

sudo snort -r botnet_pcap_file.dat -c /etc/snort/snort.conf -K ascii

clip_image129

clip_image131

查看响应的TCP包:tcpdump -r botnet_pcap_file.dat -nn 'src host 172.16.134.191 and tcp[tcpflags]== 0x12' | cut -d ' ' -f 3 | cut -d '.' -f 5 | sort | uniq

如图所示TCP响应端口为135(rpc)、139(netbios-ssn)、25(smtp)、4899(radmin)、80(http)。

clip_image133

查看UDP响应的端口:

tcpdump -r botnet_pcap_file.dat -nn 'src host 172.16.134.191 and udp ' | cut -d ' ' -f 3 | cut -d '.' -f 5 | sort | uniq

clip_image135

UDP只有137响应,打开wires hark查看135和25端口

发现没有数据传输因此猜测位端口扫描

clip_image137

查看tcp80端口:

命令如下

tcp.dstport==80&&ip.dst==172.16.134.191

查看图中这条TCP流,猜测为缓冲区溢出攻击。

clip_image139

查看下图所示,发现为蠕虫攻击

clip_image141

查看80端口是否攻击成功:命令如下

tcp.srcport==80&&ip.src==172.16.134.191&&http。

显示tcp返回默认值,所以失败

clip_image143

查看139端口,输入筛选命令如下

tcp.dstport==139&&ip.dst==172.16.134.191

clip_image145

存在大量空会话,猜测为SMB查点

clip_image147

问题7:哪些攻击成功了,是如何成功的。

查看TCP445端口:

输入筛选命令

tcp.dstport==445&&ip.dst==172.16.134.191。

发现一个PSEXESVC.EXE文件,是一个DV1DR32蠕虫,通过IRC进行通信

clip_image149

clip_image151

找出口流量,发现每个IP地址的都有响应,并且返回信息包含\PIPE\ntsvcs,这是一个远程调用,所以成功了。

clip_image153

查看TCP4899端口:tcp.dstport==4899&&ip.dst==172.16.134.191

4899是远程控制软件radmin服务端的监听端口,这个软件不是木马,攻击成功后上载这个软件方便控制。并且只有一个IP访问过主机210.22.204.101,

因此可以判断SVCCTL服务漏洞攻击成功,PSEXESVC蠕虫攻击成功。

clip_image155

实验问题:

问题一:利用kali抓包分析的时候,命令一直错误,语法错误,但是输入确实没有问题。

解决:我的kali安装的是中文版,识别不了路径,需要输入全部路径,最后可以成功,以后还是尽量不要安装中文版,会很麻烦。

问题二:命令输入没有反应

解决:没有下载相应软件,下载之就可以了

感想

本次实验内容比较多,而且综合性比较强,实践的内容还是需要自己多动手,错误次数多了也就回了,而且,遇到问题实在不能解决的时候可用找同学帮忙,大家互相讨论,可用更快解决问题。

posted @ 2022-05-08 21:15  20212916  阅读(45)  评论(0编辑  收藏  举报