20192401 王麦齐 2021-2022-2 《网络与系统攻防技术》实验四实验报告
1.实验内容
一、恶意代码文件类型标识、脱壳与字符串提取
二、使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息。
三、分析一个自制恶意代码样本rada,并撰写报告,回答问题
四、取证分析实践
2.实验过程
任务一:恶意代码文件类型标识、脱壳与字符串提取
(1)在kali中使用file指令查看文件类型
查壳
string查看字符串
(2)使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理;
脱壳过程(采用机器脱壳)
(3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析
找到作者名字如下
2、使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息。
- crackme1.exe导入
- 调用关系如下
函数返回汇编结果如下
猜测“I know the secret”为继续执行口令
- 验证成功
- crackme2.exe导入
- 调用关系如下
函数返回汇编结果如下
我们可以看出需要判断程序名加密码
验证成功
3、分析一个自制恶意代码样本rada
(1)提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;
- process explorer监听,执行RaDa.exe
通过HTTP协议请求10.10.10.10\RaDa\RaDa_commands.html
下载并更新cgi-bin,修改注册表自启动项
将文件 RaDa.exe 复制到了 C:\RaDa\bin 目录下
starting DDos smurf remote attack猜测为DDos攻击
读写和删除操作
(2)找出并解释这个二进制文件的目的;
作为后门程序伪装起来让用户运行,用户打开web后就会令攻击者获得控制权
(3)识别并说明这个二进制文件所具有的不同特性;
请求一个html页面
(4)识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;
使用了加壳工具
(5)对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;
由上述分析判断这是一个后门程序
(6)给出过去已有的具有相似功能的其他工具;
特洛伊木马
(7)可能调查处这个二进制文件的开发作者吗?
Raul siles和David Perze于2004年编写
4、取证分析实践
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 的命令,免去用户记忆和考虑命令的各种格式以及参数的烦恼。IRC服务器明文传输通常在6667端口监听,也会使用6660—6669端口。SSL加密传输在6697端口。
(2)僵尸网络是什么?僵尸网络通常用于什么?
僵尸网络(英文名称叫Botnet),是互联网上在网络蠕虫、特洛伊木马、后门工具等传统恶意代码形态的基础上发展、融合而产生的一种新型攻击方法。往往被黑客用来发起大规模的网络攻击,如分布式拒绝服务攻击(DDoS)、海量垃圾邮件等,同时黑客控制的这些计算机所保存的信息也都可被黑客随意“取用”。
(3)蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?
使用Wireshark分析文件botnet_pcap_file.dat,并设置的过滤条件ip.src == 172.16.134.191 and tcp.dstport == 6667 and tcp.flags.syn==1(由前面问题可知,IRC服务器明文传输通常在6667端口监听,所以条件包括6667端口)
可以看到蜜罐主机与以下服务器进行了通信:209.126.161.29、66.33.65.58、63.241.174.144、217.199.175.10、209.196.44.172
使用wireshark打开botnet_pcap_file.dat,首先查看TCP的135和25端口,筛选条件为tcp.port135 || tcp.port25
TCP 139端口
我们发现大部分都是链接,没有数据交换
TCP 445端口
在61.111.101.78发起的请求中发现了PSEXESVC.EXE,这是一种Dv1dr32蠕虫,通过IRC进行通信
TCP 4899端口
这是一个远程控制软件Radmin服务端监听的端口,是不是可以用来干一些事情呢?
TCP 80 端口
CCCCCC->210.22.204.101向蜜罐发送了一长串C,可能是在进行缓冲区溢出攻击
UDP 137端口 IP地址查询服务
137端口主要用于“NetBIOS Name Service”(NetBIOS名称服务),我们猜测这里主要用来进行NetBIOS查点
3.实验问题
问题一:在进行strings操作时,仍然出现很多排列不齐的代码,是没有脱壳完全吗?
并没有进行数据交互,暂时可以推测为对端口进行了connect扫描
4.实验感想
经过这次实验,对于恶意代码部分知识了解更加深入,正好配合这学期开设的恶意代码分析课程,但是经过这次的实验我发现我对于恶意代码的认知仍处于初级阶段,并没有很好地全面的掌握,而且这次实验项目众多,体现出这一大类的详细种类,只能说在这次的实验中我们只是学习了部分的知识和得到了部分的经验,还是要继续将理论和实践相互结合,才能总结出好经验。