20222806 2022-2023-2 《网络攻防实践》实践八报告

实践内容

本次课堂主要对几种不同的恶意代码进行学习分析,其一是RaDa的恶意代码样本去壳分析,其二是两个crackme.exe的汇编层面分析,其三是一次恶意代码攻击的监听包分析
恶意代码(Malware)是指具有恶意意图的计算机程序,旨在对计算机系统、数据或用户造成损害、盗取信息或进行非法活动。恶意代码是网络安全领域中的一个重要威胁,种类繁多,常见的恶意代码包括以下几种:
病毒(Virus):病毒是一种可以通过感染其他文件或程序来传播自身的恶意代码。一旦感染,病毒可以破坏、修改或删除文件,甚至感染整个系统。病毒通常需要人为介入或用户操作才能传播。
蠕虫(Worm):蠕虫是一种自我复制的恶意代码,可以通过网络传播到其他计算机,而无需人为介入。蠕虫利用系统漏洞、弱密码或网络共享等方式传播,可能导致网络拥塞、资源耗尽或信息泄露。
木马(Trojan horse):木马是指伪装成正常程序或文件,但在用户不知情的情况下执行恶意操作的程序。木马通常通过欺骗、社交工程或下载捆绑等方式传播,可以用于窃取信息、远程控制计算机、植入后门等活动。
间谍软件(Spyware):间谍软件是一种恶意程序,用于在用户计算机上搜集个人信息、浏览习惯或键盘记录等,并将这些信息发送给攻击者。间谍软件通常伴随着其他免费软件的安装,用户可能在不知情的情况下被感染。
广告软件(Adware):广告软件是指在用户计算机上显示弹出广告、植入广告或改变浏览器设置以显示广告的恶意程序。广告软件通常通过软件捆绑、下载来源不明的程序或恶意网站传播。
勒索软件(Ransomware):勒索软件是一种恶意程序,加密用户计算机中的文件,并要求用户支付赎金才能解密文件。勒索软件通过电子邮件附件、恶意链接或漏洞利用传播,严重影响用户数据和系统安全。
此外,还有其他类型的恶意代码,如钓鱼软件、恶意工具包、恶意脚本等,它们的目标和行为也各不相同。

实践过程

动手实践任务一:分析rada恶意代码样本

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

1、首先获取rada_dump_.exe的文件类型
输入代码file rada_dump_.exe,给出的信息可以得到为一个32位Windows的有GUI图形界面可执行文件
在这里插入图片描述
2、进行脱壳处理
打开WinXP自带的脱壳软件
在这里插入图片描述
RaDa.exe文件直接放到脱壳器中输出脱壳后的文件RaDa_unpacked.exe
在这里插入图片描述
使用Process Explorer软件监视解压后的RaDa_unpacked.exe,打开Strings选项对其进行分析
在这里插入图片描述
Strings中找到了其作者内容信息:Authors:Raul Siles & David Perez,2004
在这里插入图片描述

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

任务:在WinXP Attacker虚拟机中使用IDA Pro静态或动态分析crackme1.exe和crackme2.exe,寻找特定的输入,使其能够输出成功信息。
首先用file来分析这两个文件,发现都是PE32文件
在这里插入图片描述
因此打开IDA选择PE类型文件进行分析
在这里插入图片描述
在这里插入图片描述
打开Strings窗口:
在这里插入图片描述
可以看到这个程序的交互逻辑在上面
在这里插入图片描述
以此来根据代码段401280来查看汇编片段
在这里插入图片描述
查看函数中关于sub_401280的描述
在这里插入图片描述
在这里插入图片描述
点击view-graphs来查看总体逻辑图
在这里插入图片描述
由此可以知道在crackme1.exe中输入I know the secret可以通过
在这里插入图片描述
验证后确实通过,以此类推分析crackme2.exe
在这里插入图片描述
可以发现其关键代码片段同样是sub_401280
在这里插入图片描述
打开function对其chart化查看,发现整个程序的逻辑如下
在这里插入图片描述
发现在倒数第二行,cmp[ebp+arg_0],2 判断程序参数是否为两个
在这里插入图片描述
接着判断第一个参数是否为crackmeplease.exe
在这里插入图片描述
可以发现需要第二个参数为I know the secret
在这里插入图片描述
如果输出信息错误则会产生其他信息:
在这里插入图片描述
以下是所有输出的测试内容
在这里插入图片描述

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

  • 1、提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;
    md5sum可以看出RaDa.exe摘要
    在这里插入图片描述

  • 2、找出并解释这个二进制文件的目的;
    使用Process Explorer软件监视解压后的RaDa_unpacked.exe,打开Strings选项对其进行分析
    在这里插入图片描述
    首先先访问http://10.10.10.10/RaDaRaDa_commands.html复制到C:\RaDa\tmp
    在这里插入图片描述
    这里看出进行了Ddos攻击
    在这里插入图片描述
    并且在这里修改了注册表,使得每次机子启动的时候都能自动启动rada.exe
    在这里插入图片描述
    相当于是把这台机子修改了成为“肉机”

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

初次安装的时候会进行初始化的相关操作,添加注册列表、移动文件位置至C盘,建立网络连接接收指令。
持续运行阶段:维持与服务器的网络连接,解析网络指令,执行网络指令,等待一段时间继续执行。

  • 4、识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;
    通过自动脱壳器的信息可以锁定加壳范围为UPX 0.89.6 - 1.02 / 1.05 - 1.22
  • 5、对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;
    这段恶意代码没有进行传播的途径,因此不属于病毒和蠕虫的范围;同时没有对自己进行伪装和欺骗运行,因此不属于木马;整个程序的主要作用在于将目标机被远程控制,应该是僵尸程序
  • 6、给出过去已有的具有相似功能的其他工具;
    2004年发现的木马Bobax 、Setiri和同类型的GatSlag
  • 7、可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?
    可以发现这个作者的信息,在Strings中可以查到Authors:Raul Siles & David Perez,2004,在虚拟机的环境下(有点像沙盒)

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

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

  • 1、IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?
    IRC(Internet Relay Chat)是一种实时互联网聊天协议,用于在网络上进行即时文本通信。它允许用户通过客户端软件连接到IRC服务器并加入不同的聊天频道或私人聊天室,与其他用户进行交流。
    当IRC客户端申请加入一个IRC网络时,它将发送一条NICK(昵称)消息和一条USER消息给服务器。
    NICK消息用于指定用户的昵称,例如:NICK MyNickname
    USER消息用于提供用户的身份信息,例如:USER username hostname servername realname
    IRC一般使用以下TCP端口:
    6665 - 6669:常规IRC通信端口
    6697:加密的IRC通信端口(使用SSL/TLS)
    7000:IRC over SSL(加密)的端口
    194 - 196:另一种IRC通信端口

  • 2、僵尸网络是什么?僵尸网络通常用于什么?
    僵尸网络(Botnet)是由一组被恶意软件(通常是僵尸病毒或僵尸木马)感染的计算机组成的网络。这些被感染的计算机被控制在远程指挥下,成为攻击者(通常是黑客)的工具。
    僵尸网络通常用于以下目的:
    分布式拒绝服务攻击(DDoS):攻击者可以利用僵尸网络发起大规模的分布式拒绝服务攻击,通过同时向目标服务器发送大量的请求使其超负荷运行,从而导致服务不可用。
    垃圾邮件传播: 攻击者可以利用僵尸网络发送大量的垃圾邮件(垃圾广告、欺诈信息等),从而绕过反垃圾邮件机制和增加传播效率。
    黑客入侵和数据盗取: 攻击者可以使用僵尸网络作为跳板,通过攻击其他系统或网络来实施黑客入侵、窃取敏感数据或进行网络钓鱼等活动。
    恶意软件传播: 攻击者可以利用僵尸网络传播各种恶意软件,如病毒、木马、勒索软件等,感染更多的计算机并扩大僵尸网络规模。
    僵尸网络的危害性在于它的分布式性质和难以追踪性,攻击者可以通过远程控制指挥大量的僵尸计算机,从而造成广泛的网络攻击和破坏。为了防止和应对僵尸网络,网络安全专家和组织通常会采取措施来检测、清除和预防僵尸网络的存在。

  • 3、蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?
    由上可知其常规的通信端口是从6665-6669
    进行筛选,可以发现只有6667端口有数据出入
    由此条件为tcp.port == 6667 && ip.addr == 172.16.134.191,依次有209.126.161.2966.33.65.5863.241.174.144217.199.175.10209.196.44.172
    其中交互最多的服务器是209.196.44.172
    在这里插入图片描述

  • 4、在这段观察期间,多少不同的主机访问了以209.196.44.172为服务器的僵尸网络?
    在kali机上的tcpflow对监听包进行分析
    首先输入命令sudo tcpflow -r botnet_pcap_file.dat "host 209.196.44.172 and port 6667"
    生成报告report.xml
    在这里插入图片描述
    利用vim打开可以看到相关的信息
    在这里插入图片描述
    输入命令使用grep过滤sudo 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利用管道进行分析
    在这里插入图片描述
    可以看到有3462个主机进行通信了

  • 5、那些IP地址被用于攻击蜜罐主机?
    输入命令利用tcpdump进行分析: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 > result.txt;wc -l result.txt
    可以发现总共有165个ip地址
    在这里插入图片描述
    这些结果被存在result.txt中
    在这里插入图片描述

  • 6、攻击者尝试攻击了那些安全漏洞?
    首先分析tcp端口和udp端口
    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
    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
    在这里插入图片描述
    可以看到tcp有端口135、139、25、445、4899、80;udp端口有137
    首先对于udp的137进行分析可以发现其是用于NetBIOS
    接下来使用wireshark进行具体TCP端口的具体分析

分析1:TCP端口135、25

tcp.port == 135 || tcp.port == 25
可以看到只存在连接的握手数据包,并没有实质性的数据交互
在这里插入图片描述

分析2:TCP端口80

ip.dst==172.16.134.191 && tcp.dstport==80
在这里插入图片描述
由此可以判断是想利用缓存区溢出进行攻击
在这里插入图片描述
在这里插入图片描述

最后同样是采用缓冲区溢出攻击
在这里插入图片描述
在这里插入图片描述

继续分析80端口的流量流向
tcp.srcport == 80 && ip.src == 172.16.134.191 && http
在这里插入图片描述
说明并未攻击成功,没有出现命令行
在这里插入图片描述

分析3:TCP端口139

tcp.port == 139 && ip.dst == 172.16.134.191在这里插入图片描述
通过类型可以发现有NBSS包和SMB包以及TCP包,且ip地址不止一个,没有成功

分析4:TCP端口445

tcp.port == 445 && ip.dst == 172.16.134.191
发现存在打开PSEXESVC.EXE的文件,查阅资料可得这是一种蠕虫病毒,利用IRC进行通信
在这里插入图片描述
分析端口tcp.dstport == 445 && ip.dst == 172.16.134.191
在这里插入图片描述
通过这张图可知已经被攻击成功了
在这里插入图片描述

分析5:TCP端口4899

tcp.port == 4899 && ip.dst == 172.16.134.1915
在这里插入图片描述
只有一个初始ip地址210.22.204.101,应该就是远程控制的主机
其中4899是radmin的控制软件使用端口

  • 7、那些攻击成功了?是如何成功的?
    由上述分析中得知只有蠕虫病毒攻击成功,利用的是PSEXESVC.EXE蠕虫文件,IP地址为61.111.101.78

学习中遇到的问题及解决

对于监听包的分析尚不熟练,需要查阅资料才可以顺利进行

学习感想和体会

通过本节课对于恶意代码的学习和分析,对恶意代码的攻击方式新的理解

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值