20232804 2023-2024-2 《网络攻防实践》实践八报告

20232804 程家豪 2024-05-07 23:17:25

20232804 2023-2024-2 《网络攻防实践》实践八报告

1.实践内容

(1)对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者
(2)在WinXP Attacker虚拟机中使用IDA Pro静态或动态分析crackme1.exe和crackme2.exe,寻找特定的输入,使其能够输出成功信息
(3)分析一个自制恶意代码样本rada,并撰写报告
(4)Windows 2000系统被攻破并加入僵尸网络,用Snort工具收集的蜜罐主机5天的网络数据源,并通过编辑去除了一些不相关的流量并将其组合到了单独的一个二进制网络日志文件中,同时IP地址和其他特定敏感信息都已经被混淆以隐藏蜜罐主机的实际身份和位置

2.实践过程

2.1 动手实践任务一:rada恶意代码样本进行相关操作

下载7-zip32位压缩软件,将其拖入WinXP中,并从学习通下载rada.rar,也将其拖入WinXP中。并利用7-zip进行解压,在桌面可以查看

img

img

在控制台输入file Rada.exe,可以看到这是一个32位Windows的可执行文件,其中GUI表示有图形界面

img

在控制台输入strings Rada.exe,由于加壳导致看到的都是乱码

img

在WinXP系统内使用PEiD工具查看加壳类型,可以看到是UPX壳

img

使用超级巡警进行脱壳操作,可以看到在桌面生成了一个RaDa_unpacked.exe文件

img

img

输入strings RaDa_unpacked.exe,查看脱壳后的信息,但是没有作者的信息

img

使用IDA Pro Free工具,选择新生成的文件rada_unpacked.exe,可以看到作者和邮箱等信息

img

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

计算两个文件的md5值,同时查看文件类型,都为32位PE文件

img

img

分情况输入参数个数,发现只有一个参数的时候输出信息与其他情况不同,猜测该程序只有一个参数

img

使用IDA Pro软件对crackme1.exe分析
其中有I know the secret和You know how to speak to programs, Mr. Reverse-Engineer两个不同上图的回答。

img

在view中查看Function Cal
我们在sub_401280处发现,strcmp用作输入,print和fprint用作输出。

img

图中cmp [ebp+arg_0],2判断该程序是否参数数量为2
同时根据指令执行流程,可以判断输入I know the secret,可以得到回答口令You know how to speak to programs,Mr.Reverse-Engineer

img

执行crackme1.exe "I know the secret"进行验证

img

分析crackme2步骤类似,只是执行的程序名称发生了改变

img

修改crackme2.exe名称为crackmeplease.exe,并执行crackmeplease.exe "I know the secret"查看结果

img

2.3 分析实践任务一:分析自制恶意代码样本rada

(1)提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;
使用md5sum RaDa.exe命令计算其摘要

img

(2)找出并解释这个二进制文件的目的;
用process explorer软件对RaDa_unpacked.exe文件进行监视
该程序从10.10.10.10/RaDa中获取指令,而且该程序在C盘下创建了一个RaDa文件,其中有tmp和bin两个子文件,bin文件中存放RaDa.exe,tmp文件存放upload的文件,并且进行DDOS攻击,该程序还执行了read、write和delete操作

img

img

还查询了数据库和Mac地址等信息

img

(3)识别并说明这个二进制文件所具有的不同特性;
该程序会将自身留在bin文件中,也就是留下了后门攻击的可能,并且修改注册表使得这个攻击开机启动。
(4)识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;
采用了UPX加壳技术,使得文件不容易被解析或逆向。
(5)对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;
病毒、蠕虫等都一般都可以传播,但是该程序仅仅是采用了加壳技术使得不能被反汇编,因此不属于病毒、蠕虫等,可能是一个后门程序。
(6)给出过去已有的具有相似功能的其他工具;
木马Bobax
(7)可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?
可以查看作者信息,在strings中可以看到作者为Raul siles 和 David Perze

2.4 分析实践任务二:Windows 2000系统被攻破并加入僵尸网络

(1)IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?
IRC(Internet Relay Chat)是一种即时通讯协议,用于在网络上进行实时文本通讯。它允许用户通过 IRC 客户端连接到 IRC 服务器,加入不同的频道(或房间),与其他用户进行实时交流。
当一个 IRC 客户端申请加入一个 IRC 网络时,它将发送一个消息,其中包含客户端的身份信息和请求连接到 IRC 服务器的详细信息。这个消息通常包括用户名、主机名、服务器密码(如果需要)、所希望连接的 IRC 服务器的地址和端口号等信息。
IRC 一般使用的 TCP 端口包括:
6667:标准的 IRC 端口,用于非加密的 IRC 通信。
6697:用于加密的 IRC 通信,通常使用 SSL/TLS 进行加密连接。
其他非标准端口:有些 IRC 网络可能会使用不同的端口,但通常这些是定制化的设置,而不是标准配置。
(2)僵尸网络是什么?僵尸网络通常用于什么?
僵尸网络是一种恶意计算机网络,由大量被恶意软件感染的计算机组成。这些被感染的计算机被控制者(通常是黑客或犯罪组织)远程操控,形成一个庞大的网络,这些计算机被称为"僵尸"。僵尸网络中的计算机可以被远程操控,执行各种恶意活动,而用户通常不知情。
僵尸网络通常用于以下活动:
分布式拒绝服务攻击(DDoS):攻击者可以利用僵尸网络中的大量计算机,向特定目标发动大规模的 DDoS 攻击,使目标系统或网络不可用。
垃圾邮件和恶意软件传播:僵尸网络可用于发送大量垃圾邮件或传播恶意软件,通过大规模的垃圾邮件攻击或恶意软件传播来获取利润或实施其他恶意活动。
黑客攻击:攻击者可以利用僵尸网络中的计算机执行各种黑客活动,包括入侵其他系统、窃取敏感信息等。
(3)蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?

img

img

可以看到蜜罐主机与209.126.161.29、66.33.65.58、63.241.174.144、217.199.175.10、209.196.44.172服务器进行了通信
(4)在这段观察期间,多少不同的主机访问了以209.196.44.172为服务器的僵尸网络?
安装tcpflow

img

安装好tcpflow后进行分析
使用命令如下:

tcpflow -r /home/kali/Desktop/botnet_pcap_file.dat ‘host 209.196.44.172 and port 6667

分析结果保存在report.xml中

img

使用命令如下查看访问僵尸网络的主机数为3461

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

img

(5)那些IP地址被用于攻击蜜罐主机?
利用tcpdump查找哪些IP地址被用于攻击蜜罐主机
使用如下命令将所有链接的IP地址存入cjh2804.txt中

 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 > cjh2804.txt;wc -l cjh2804.txt

img

然后我们可以看到有165个IP地址被用于攻击蜜罐主机,具体地址可打开生成的cjh.txt查看

img

(6)攻击者尝试攻击了那些安全漏洞?
使用如下命令查看攻击者尝试tcp攻击的漏洞
可以看到135(rpc)、139(netbios-ssn)、25(smtp)、445(smb)、 4899(radmin)、 80(http)等几个端口受到攻击

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

img

使用如下命令查看攻击者尝试udp攻击的漏洞
可以看到137端口受到了攻击,该端口是NetBIOS查点

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

img

(7)那些攻击成功了?是如何成功的?
对上述端口逐个进行分析
135端口:
利用ip.addr==172.16.134.191 and tcp.port==135作为过滤条件,在wireshark中查找数据包分析

img

可以看到只是进行了tcp连接并没有进行数据交换,所以攻击没成功

139端口:
利用ip.addr==172.16.134.191 and tcp.port==139作为过滤条件,在wireshark中查找数据包分析

img

img

可以看到进行了很多tcp连接并没有进行数据交换,但是出现了SMB协议,可能是SMB查点

25端口:
利用ip.addr==172.16.134.191 and tcp.port==25作为过滤条件,在wireshark中查找数据包分析

img

可以看到只是进行了tcp连接并没有进行数据交换,所以攻击没成功

445端口:
利用ip.addr==172.16.134.191 and tcp.port==445作为过滤条件,在wireshark中查找数据包分析

img

可以看到存在PSEXESVC.EXE文件,这个文件可以通过IRC进行通信,使得可以远程控制主机,所以攻击成功

4899端口:
利用ip.addr==172.16.134.191 and tcp.dstport==4899作为过滤条件,在wireshark中查找数据包分析

img

可以看到4899端口是一个远程控制软件radmin,攻击者通过上传radmin来控制主机

80端口:
利用ip.addr==172.16.134.191 and tcp.dstport==80作为过滤条件,在wireshark中查找数据包分析

img

可以看到发送了很多C,应该是缓冲区溢出攻击

img

可以看到在不停地用脚本攻击IIS服务器的漏洞来获取系统权限

img

可以看到一个蠕虫攻击c:\notworm
最后分析上述结果,发现蜜罐主机均以IIS服务器的默认页面作为回应,所以攻击失败。

3.学习中遇到的问题及解决

  • 问题1:解压rada.exe文件出来总是空文件夹
  • 问题1解决方案:下载7-zip 32位解压软件进行解压

4.实践总结

实验过程比较多,进行起来虽然不复杂,但是要理解每一步的原理还是有些难度,在实验过程中也发现了自身在网络攻防实践中存在的理论知识的不足,通过这次实验也学习到了很多分析数据包、分析攻击的方法和过程,总的来说收获很大。

...全文
51 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

55

社区成员

发帖
与我相关
我的任务
社区描述
网络攻防实践课程
网络安全 高校
社区管理员
  • blackwall0321
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧