# 20192418张曦 2021-2022-2 《网络与系统攻防技术》实验四实验报告
作者:互联网
20192418张曦 2021-2022-2 《网络与系统攻防技术》实验四实验报告
1.实验内容
一、恶意代码文件类型标识、脱壳与字符串提取
对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:
(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;
(2)使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理;
(3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?
二、使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息。
三、分析一个自制恶意代码样本rada,并撰写报告。
四、取证分析实践
Windows 2000系统被攻破并加入僵尸网络
2.实验过程
任务一:恶意代码文件类型标识、脱壳与字符串提取
kali系统中file指令查看文件类型
PEiD查看
使用超级巡警脱壳
strings指令查看RaDa.exe的字符串:
脱壳前全是乱码
strings指令查看脱壳后的RaDa_unpacked.exe的字符串:
脱壳后可以看到一些信息
在脱壳后的文件中找到作者信息:
任务二:使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息。
-
crackme1
file指令查看文件的文件类型
随机输入指令,可以看到一些输出:
用IDA pro工具打开creakme1文件,点出函数调用图:
查看主函数的汇编代码,可以发现一行“I know the secret”
在cmd中执行该指令:
函数通过继续执行
-
crackme2
该文件分析过程与crackme1.exe相似,查看其函数调用图:
可以看到有三次判断,第一次判断参数个数和2的关系,jz是条件转移指令,相等则跳转。第二、三次判断均是用strcmp进行字符串比较,Str1是以eax寄存器里存的值作为地址的单元里的值,可以看到两次eax值相差4,作为地址指向的单元分别为程序名和第一个参数,Str2分别是"crackmeplease.exe"和"I know the secret"。
此时需要创建crackmeplease文件,再输入"I know the secret"指令
任务三:分析一个自制恶意代码样本rada,并撰写报告,回答以下问题
(1)提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;
生成md5摘要
打开wireshark和process explorer监听,执行RaDa.exe,在process explorer的Strings窗口可以看到恶意代码对进程所做的修改等信息。
首先看到恶意代码与10.10.10.10连接,访问了/RaDa/RaDa_commands.html,下载并更新cgi-bin,修改注册表自启动项修改了注册表自启动项HKLM\Software\Microsoft\Windows\CurrentVersion\Run,在C盘新建了文件夹RaDa,还有一句Starting DDos Smurf remote a attack,猜测为DDos攻击,还有读写和删除操作。
这里还能再看到一次作者的名字:
(2)找出并解释这个二进制文件的目的;
建立连接10.10.10.10的后门,用户打开web后就会让攻击者获得主机的控制权。
(3)识别并说明这个二进制文件所具有的不同特性;
自我复制到C盘下,修改注册表自启动项。
(4)识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;
使用了加壳工具。
(5)对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;
不能自主传播,不是病毒、蠕虫;
没有进行伪装,不是木马;
攻击者可以远程发送指令,所以大概率是后门程序。
(6)给出过去已有的具有相似功能的其他工具;
木马Bobax(使用HTTP协议从指定的服务器下载命令文件)、木马Setiri。
(7)可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?
可以看到,Raul siles & David Perze
任务四:取证分析实践
Windows 2000系统被攻破并加入僵尸网络
问题: 数据源是Snort收集的蜜罐主机5天的网络数据源,并去除了一些不相关的流量,同时IP地址和其他敏感信息被混淆。回答下列问题:
(1)IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?
IRC是英文Internet Relay Chat的缩写,1988年起源于芬兰,已广泛应用于全世界60多个国家,它是“talk”的替代工具但功能远远超过“talk”,IRC是多用户、多频道的讨论系统,许多用户可以在一个被称为“channel”的地方就某一话题交谈或私谈。它允许整个Internet的用户之间即时交谈,每个IRC 的使用者都有一个nickname,所有的沟通就在他们所在的channel内以不同的nickname交谈。
IRC在明文传输时一般使用6667端口,ssl加密时一般使用6697端口。
(2)僵尸网络是什么?僵尸网络通常用于什么?
僵尸网络(英文名称叫Botnet),是互联网上在网络蠕虫、特洛伊木马、后门工具等传统恶意代码形态的基础上发展、融合而产生的一种新型攻击方法。往往被黑客用来发起大规模的网络攻击,如分布式拒绝服务攻击(DDoS)、海量垃圾邮件等,同时黑客控制的这些计算机所保存的信息也都可被黑客随意“取用”。
(3)蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?
使用“ip.src == 172.16.134.191 and tcp.dstport == 6667” 过滤规则进行查找,发现与5台IRC服务器进行了通信,分别为: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 -r 20192418.dat "host 209.196.44.172 and port 6667"
得到report文件
可以通过report文件查看通信双方的ip地址,端口,mac地址等网络信息。
搜索有多少台主机进行过连接:
(5)哪些IP地址被用于攻击蜜罐主机?
查看端口并输出到1.txt中(tcpdump -nn: 指定将每个监听到的数据包中的域名转换成IP、端口从应用名称转换成端口号后显示;grep -v:排除指定字符串;cut -d '.' -f 10:截取以'.'为分隔符的第 10 列;uniq命令用于检查及删除文本文件中重复出现的行列; wc -l 用于统计文件的行数):
查看1.txt
将连接IP地址输出到2.txt中
查看2.txt
6.攻击者尝试攻击了那些安全漏洞?哪些成功了?如何成功的?
snort查看网络流的分布情况
可以看到全是UDP和TCP包
查看TCP响应端口
(7)那些攻击成功了?是如何成功的?
wireshark查看135端口:
只是进行了连接,但是是没有数据的交互。
wireshark查看25端口:
只是进行了连接,也没有进行数据的交互。
135和25端口只进行了TCP连接。
wireshark查看139端口:
发现了NBSS包和SMB包(两者都跟NetBIOS有关)以及一些TCP流,大量的空会话。
wireshark查看445端口:
我们可以发现用这样一个叫PSEXESVC.EXE的可执行文件,这是可以利用远程控制运行被害主机,并且获取其权限,常用于内网渗透:
wireshark查看4899端口:
这个端口是一个远程控制软件radmin服务端监听端口
wireshark查看80端口:
猜测攻击者想要利用缓冲区溢出攻击来获取主机权限,查看源地址为218.25.147.83,在tcp流中可以发现蠕虫攻击。
3.问题及解决方案
-
问题1:XP虚拟机突然无法传输文件
-
问题1解决方案:本来重装了Xp系统,但是还是无法传输文件,于是决定使用win10进行实验。
-
问题2:IDA pro无法使用
-
问题2解决方案:热心的麦齐同学给我发了一个7.0版本的IDA。
-
问题3:ProcessExprorer中无法找到RaDa的进程
-
问题3解决方案:在之前的操作中以为运行rada的弹窗是发生错误,每次都关掉。其实rada运行后就是弹出这个弹窗。。保持弹窗不关闭即可。
-
问题4:无法运行snort
-
问题4解决方案:多次安装后终于安装上了
4.学习感悟、思考等
本次实验难度适中,用的软件太多,在刚开始做的时候很迷茫无从下手。在同学的一一解惑下,自己实际做起来并不是很难,wireshark的不熟练使用让我感觉很头疼。本次实验中,让我对恶意代码部分知识了解更加深入,同时伴随着这学期的恶意代码分析专业选修课程,让我对恶意代码的产生,运行,原理有了更加深入的理解。本次实验在多个软件的综合运用和分析下完成,使我受益匪浅。
标签:脱壳,张曦,20192418,查看,恶意代码,端口,2021,IRC,rada 来源: https://www.cnblogs.com/zhangxi2418/p/16155246.html