对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:
(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;
(2)使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理;
(3)使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?
任务:在WinXP Attacker虚拟机中使用IDA Pro静态或动态分析crackme1.exe和crackme2.exe,寻找特定的输入,使其能够输出成功信息。
分析一个自制恶意代码样本rada,并撰写报告,回答以下问题:
(1)提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;
(2)找出并解释这个二进制文件的目的;
(3)识别并说明这个二进制文件所具有的不同特性;
(4)识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;
(5)对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;
(6)给出过去已有的具有相似功能的其他工具;
(7)可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?
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)那些攻击成功了?是如何成功的?
RaDa是32位PE文件,还是个GUI文件
打开PEiD查看运行平台和加壳工具
使用超级巡警脱壳机,对rada恶意代码样本进行脱壳处理,生成RaDa_unpaked.exe
打开RaDa.exe,发现是乱码
打开RaDa_unpaked.exe,有些可读内容,作者为:Raul Siles && David Perez
(1)crackme1.exe
使用IDA Pro打开crackme1.exe,View->Graphs->Function calls,打开函数调用图
strcmp是c语言中字符串匹配密码的函数,发现关键的程序段sub_401280,在IDA View-A查看程序段sub_401280
发现strcmp,猜测密码可能是“I konw the secret”
命令行传递参数以空格隔开,字符串用双引号引起来
输入crackme1 “I konw the secret”
得到正确的提示,以空格隔开输入多个参数提示其他消息
(2)crackme2.exe
使用IDA Pro打开crackme1.exe,View->Graphs->Function calls,打开函数调用图
打开发现五个明文字符串
strcmp是c语言中字符串匹配密码的函数,发现关键的程序段sub_401280,在IDA View-A查看程序段sub_401280查看程序段,观察到[ebp+arg_4]应该是一个程序名
将程序名改为crackmeplease.exe,测试得出只有一个参数,输入crackeplease.exe “I konw the secret”
,得到字符串明文中没有的信息
(1)提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息;
(2)找出并解释这个二进制文件的目的;
打开WinXPattacker的process explorer进行监听,执行rada.exe,发现其复制到C:\RaDa\tmp\并且新建了temp目录。
打开RaDa_unpaked.exe,查看Strings,分析发现rada.exe使用http连接到目标为10.10.10.10的主机下的一个名为RaDA_commands的网页上,然后分别下载和上传某些文件,并且在受害主机C盘目录下创建一个文件夹“C:\RaDa\tmp”来保存其下载的文件,之后进行了DDos攻击,修改注册表,执行了上传、下载、休眠、屏幕截图等命令
(3)识别并说明这个二进制文件所具有的不同特性;
自我复制到C盘下,修改注册表自启动项。
(4)识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术;
使用了加壳工具。
(5)对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由;
不能自主传播,不是病毒、蠕虫;
没有进行伪装,不是木马;
攻击者可以远程发送指令,所以大概率是后门程序。
(6)给出过去已有的具有相似功能的其他工具;
木马Bobax(使用HTTP协议从指定的服务器下载命令文件)、木马Setiri。
(7)可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?
将rada.exe脱壳后,就能发现二进制文件的开发作者
(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服务器进行了通信?
用wireshark打开botnet_pcap_file.dat文件,输入筛选条件ip.src == 172.16.134.191 && tcp.dstport == 6667,筛选源地址为蜜罐主机,目的端口为6667的包。可得到四个地址:
(4)在这段观察期间,多少不同的主机访问了以209.196.44.172为服务器的僵尸网络?
在kali终端输入tcpflow -r botnet_pcap_file.dat "host 209.196.44.172 and port 6667"
对样本进行分流,得到两个分流后的数据文件209.196.044.172.06667-172.016.134.191.01152、172.016.134.191.01152-209.196.044.172.06667和一份报告report.xml
可以通过report文件查看通信双方的ip地址,端口,mac地址等网络信息
使用一个超长的命令,来计算209.196.044.172.06667-172.016.134.191.01152文件中有多少主机访问了209.196.044.172。grep取出昵称,sed去除前缀,tr将空格转换为新行,tr -d去除\r,grep -v "^$"去除空行,sort -u排序并去重,wc计算行数。计算出来结果有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
(5)那些IP地址被用于攻击蜜罐主机?
使用wireshark的统计功能,统计->会话->IPv4
(6)攻击者尝试攻击了那些安全漏洞?
(7)那些攻击成功了?是如何成功的?
xxx xxx