ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

20212935 2021-2022-2 《网络攻防实践》 第八次实践

2022-05-06 18:31:06  阅读:245  来源: 互联网

标签:文件 exe rada 主机 20212935 端口 实践 2021 IRC


1 实验目的

学会文件类型识别、会使用IDS软件静态或动态分析。

2 实验环境

Kali、WinXP。

3 实验内容

3.1动手实践任务一

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

(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;
(2)使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理;
(3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?

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

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

3.3分析实践任务一

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

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

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

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

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

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

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

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

3.4分析实践任务二

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、那些攻击成功了?是如何成功的?

4 实验过程

4.1动手实践任务一

(1)进入rada,输入命令行file rada.exe,可以得到这是一个32为PE文件,并且还是GUI文件

(2)输入命令行strings查看可打印字符串,发现都是乱码,应该是加壳导致的:

(3)查壳:用PEID工具打开

(4)脱壳:使用超级巡警脱壳器,打开rada.exe后可以看到脱壳成功

(5)输入命令行strings rada_unpacked.exe,查看可打印字符串,可以看到不是乱码了。

(6)使用IDA Pro Free工具,选择脱壳后的文件,可以看到作者等信息。

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

4.2.1 分析Crackme1程序

(1)打开crackme1文件,输入参数

(2)打开IDA分析crackme1程序

(3)打开strings窗口,可以看到上边cmd中得到的回复命令

(4)打开函数调用图,查看401280函数段

(5)查看401280函数段的汇编代码,并查看

(6)进行验证:输入命令行crackme1.exe  “I know the secret”,可以看到验证成功

4.2.2 分析Crackme2程序

(1)打开crackme2文件,输入参数,试探输入格式

(2)打开IDA分析crackme1程序

(3)打开strings窗口,可以看到上边cmd中得到的明文字符串

(4)打开函数调用图,查看401280函数段

(5)查看401280函数段的汇编代码,并查看

(6)验证程序名错误的输出:输入命令行crackme2.exe “I know the secret”

(7)改名:输入命令行copy crackme2.exe crackmeplease.exe

(8)验证程序名正确,密码错误;输入命令行crackmeplease.exe 1

(9)验证程序名正确,密码正确:输入命令行crackmeplease.exe “I know the secret”,显示验证成功

4.3 分析实践任务一:

4.3.1 分析流程

(1)打开wireshark进行抓包,打开process monitor进行监听

(2)打开rada.exe使其运行,然后打开process monitor,可以看到显示这个已经被复制到C盘下新建的Rada文件夹里的bin目录下:

除此还可观察到进行了很多注册表的操作:

再分析wireshark抓包到的数据,可以看到端口号为80的10.10.10.10 IP地址经常与本主机进行访问

(3)输入命令行md5sum Rada.exe,得到其md5值:

(4)输入命令行file rada.exe,可以得到这是一个32位PE文件,并且还是GUI文件:

(5)查看process explorer,可以发现这个恶意程序用http连接到目标为10.10.10.10的主机下的一个Rada_commands的网页上,并下载和上传了一些文件,并且在受害者C盘rada下创建了一个tmp文件夹保护其下载的文件,除此外还对主机进行了读写和删除操

(6)用IDA软件分析动手实践一脱壳后的rada文件,打开strings窗口,将type改为unicode格式,可以找到作者信息如下:

(7)点击此条作者信息,可以找到函数sub_405E40

(8)function里点击查看sub_405E40,flow chart中查看此流程,可以发现这个函数应该是处理命令行参数的

(9)function calls中查看,发现sub_40B010函数

(10)function中找到40B010,用flow chart查看,可以找到作者信息

4.3.2 分析总结

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

此文件的md5摘要值为caaa6985a43225a0b3add54f44a0d4c7,这是一个UPX加壳文件,并且还是一个32位PE GUI文件。

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

这个文件下载和上传了一些文件,除此外还对主机进行了读写和删除操作。

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

这个文件在运行时,会将自身复制在受害者C盘rada下创建的一个tmp文件夹。

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

通过加壳及DDOs攻击。

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

这个文件不具有传播和感染的风险,所以应该不是病毒、蠕虫。此外这个文件没有把自己伪装成有用的程序,因此不是木马程序,可能是一个后门或僵尸程序。

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

查资料后,发现以往的木马Bobax、海阳顶端、木马Setiri等工具具有类似的功能。

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

这个二进制文件需要在脱壳处理后的文件中才能调查到。它是在2004年被Raul siles和David Perze开发。

4.4 分析实践任务二:

4.4.1 分析流程

(1)使用wireshark打开botnet_pcap样本文件,使用ip.src==172.16.134.191&&tcp.dstport==6667命令查找目标服务器IP地址,可以看到有如下服务器:209.126.161.29、66.33.65.58、63.241.174.144、217.199.175.10、209.196.44.172

(2)root权限下,使用apt-get install tcpflow命令安装tcpflow

(3)执行tcpflow -r botnet_pcap_file.dat 'host 209.196.44.172 and port 6667'命令,使用vim report.xml命令打开report.xml文件如下所示

可以看到有一部分是从目标服务器发出,还有一部分是从其他主机发送的

(4)执行export LC_COLLATE='C',export LC_CTYPE='C'命令,避免出现字符编码问题,使用管道命令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个

(5)执行tcpdump -n -nn -r botnet_pcap_file.dat 'dst host 172.16.134.191' | grep -a -v 'reply' | cut -d '.' -f 10 |cut -d ':' -f 1 |sort |uniq |more >1.txt; wc -l 1.txt指定IP地址收集被攻击的端口写入1.txt,执行命令统计

使用vim 1.txt命令查看此文件,可以看到有148个被攻击的端口

(6)使用tcpdump -n -nn -r botnet_pcap_file.dat 'dst host 172.16.134.191' | awk -F " " '{ print $3 }' | cut -d '.' -f 1-4 | sort | uniq | more > 2.txt;wc -l 2.txt 命令,通过snort获取所有可能链接的主机IP地址,将内容输出到2.txt

查看此文件,可以看到有165个主机可能被用于入侵蜜罐

(7)使用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端口如下:

使用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 命令,筛选出相应的UDP端口如下:

查资料后可以得到TCP响应端口分别为:135(rpc)、193(netbios-ssn)、25(smtp)、445(smb)、4899(radmin)、80(http);UDP响应端口为:137(netbios-ns).

(8)分析udp137号端口:

137端口的主要作用是在局域网中提供计算机的名字或IP地址查询服务,访问这个端口的话一般是安装NetBIOS协议后,该端口会自动处于开放状态。

(9)分析tcp135号和25号端口:

Wireshark中使用tcp.port == 135 || tcp.port == 25进行筛选数据包,可以看到这两个端口进行了交接,没有数据间的相互传输,所以攻击者可能只是做了connect扫描

(10)分析tcp80号端口:

使用tcp.dstport==80&&ip.dst==172.16.134.191命令进行筛选数据包。

①24.197.194.106:可以看到这个IP有许多条数据包,都是在攻击IIS服务器漏洞,从而获得系统权限。

②210.22.204.101:有许多C ,应该是攻击者想通过缓冲区溢出攻击获得一个命令行。

③218.25.147.83:会看到C:\notworm字符样,判断这是一个红色代码蠕虫攻击。

④是否攻击成功:使用tcp.srcport==80&&ip.src==172.16.134.191&&http 命令进行筛选,选择第238条数据包,追踪其tcp流,可以看到主机做的回应都是默认界面,所以80端口的攻击失败。

(11)分析tcp139号端口:

使用tcp.dstport==139&&ip.dst==172.16.134.191命令进行筛选,发现有许多空白的会话,推测应该是没有成功的SMB查点。

(12)分析tcp445号端口:

使用tcp.dstport==445&&ip.dst==172.16.134.191命令进行筛选,发现有一个PSEXESVC.EXE文件,查资料得知这个文件是一种通过IRC进行通信的Dv1dr32蠕虫,而且发现每个都有回应,推断攻击成功。

(13)分析tcp4899端口:

使用tcp.dstport==4899&&ip.dst==172.16.134.191命令进行筛选,发现只有一个210.22.204.101 IP访问过,另查资料可知4899端口是一个远程控制软件radmin服务端监听端口。

4.4.2 分析总结

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

①IRC(Internet Relay Chat)是互联网中继聊天。

②当IRC客户端申请加入一个IRC网络时需要发送的消息有口令、昵称和用户信息。格式分别为:USER <username> <hostname> <servername> <realname>、PASS <password>、NICK <nickname>。注册完成后,客户端就使用JOIN信息来加入频道,格式如下:JOIN <channel>。

③一般使用6667端口。

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

①僵尸网络 Botnet 是指采用一种或多种传播手段,将大量主机感染bot程序(僵尸程序)病毒,从而在控制者和被感染主机之间所形成的一个可一对多控制的网络。攻击者通过各种途径传播僵尸程序感染互联网上的大量主机,而被感染的主机将通过一个控制信道接收攻击者的指令,组成一个僵尸网络。

②僵尸网络往往被黑客用来发起大规模的网络攻击,如分布式拒绝服务攻击(DDoS)、海量垃圾邮件等,同时黑客控制的这些计算机所保存的信息也都可被黑客随意“取用”。

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

与209.126.161.29、66.33.65.58、63.241.174.144、217.199.175.10、209.196.44.172共5个服务器进行了通信。

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

3457个主机。

(5)哪些IP地址被用于攻击蜜罐主机?

209.126.161.29、66.33.65.58、63.241.174.144、217.199.175.10、209.196.44.172

(6)攻击者尝试攻击了哪些安全漏洞?

尝试攻击了TCP135(rpc)、193(netbios-ssn)、25(smtp)、445(smb)、4899(radmin)、80(http)及UDP137(netbios-ns)这些端口。漏洞如上4.4.1分析。

(7)哪些攻击成功了?是如何成功的?

红色代码蠕虫攻击、通过IRC进行通信的Dv1dr32蠕虫等,具体分析如上4.4.1。

5 实验中遇到的问题及解决方法

分析实践二中跟着示范视频使用grep命令时,出现grep: (standard input): binary file matches 0错误,查资料后加一个-a就没错误了,如原本是grep hello,改为grep -a hello就好了。

6 实验感想

这一次敲得代码量相对于之前的实践来说多了不少,特别考验细心程度,以后要多练习敲点代码,降低出错率。

标签:文件,exe,rada,主机,20212935,端口,实践,2021,IRC
来源: https://www.cnblogs.com/dkl68696/p/16221911.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有