首页 > 其他分享 >20222303 2024-2025-1 《网络与系统攻防技术》实验四实验报告

20222303 2024-2025-1 《网络与系统攻防技术》实验四实验报告

时间:2024-11-05 21:59:54浏览次数:3  
标签:后门 exe RaDa 恶意代码 程序 2024 2025 主机 20222303

一、实验内容

(一)恶意代码文件类型标识、脱壳与字符串提取

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

(二)使用IDA Pro静态或动态分析crackme1.exe与crakeme2.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恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:

1:使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具
1.1先去学习通下载.rar压缩包并复制到虚拟机中,将文件提取出来后使用 file 命令查看RaDa.exe的文件类型
image

见RaDa.exe是一个Windows PE可执行文件,并且具有GUI(图形化界面)
1.2使用peid工具查看RaDa.exe的基本信息
image
文件格式:PE32说明该文件是32位的可执行文件。
运行平台:(GUI) Intel 80386, for MS Windows说明能在基于Intel 80386的Windows操作系统系统上运行。
加壳工具:UPX 0.89.6 - 1.02 / 1.05 - 2.90 -> Markus & Laszlo
3.使用超级巡警脱壳机脱壳,脱壳前后对比
通过strings RaDa.exe进行提取,没脱壳是有许多乱码
image

基本都是乱码,这是因为该文件被upx加壳的缘故,正常字符无法显示

2:使用超级巡警脱壳机等脱壳软件,对rada恶意代码样本进行脱壳处理
2.1对RaDa.exe进行脱壳
image

3:使用字符串提取工具,对脱壳后的rada恶意代码样本进行分析,从中发现rada恶意代码的编写作者是谁?
3.1再用strings命令查看脱壳后的RaDa.exe(RaDa_unpacked.exe)
image
image
image
image

这时就会有正常的字符信息了。通过查找发现该恶意代码的作者为:Raul Siles和David Perez
image

(二)使用IDA Pro静态或动态分析crackme1.exe与crakeme2.exe,寻找特定输入,使其能够输出成功信息

1:使用file命令查看crackme的文件类型
Linux环境下自带file命令,
Windows 版本可以去 http://gnuwin32.sourceforge.net/packages/file.htm 下载
image
如图可知,这两个文件都是Windows PE可执行文件,但没有GUI,是命令行程序。

2:对crackme1.exe进行破解
尝试运行该程序,试探其输入格式
image

文件时,后面带一个参数的情况与其它几种情况不同,可能输入格式就是这种。
使用IDA pro工具打开该文件,尝试阅读分析:

image

在这里发现了之前运行产生的两种情况,同时还有额外的两种情况。
点击其中一个,查看出现提示语的汇编语言:
image

发现这些提示语都需要函数sub_401280。点击functions页面找到sub_401280函数并双击:
image

倒数第二行cmp [ebo+arg_0],2 为判断程序是否有两个参数。
image

根据第二个参数匹配,进行相应的分支。可以看出当用户输入“I know the secret”的时候,程序口令输入正确,若当用户输入不为“I know the secret”则显示“Pardon? What did you say?”,其余情况则显示“I think you are missing something.”。
image

3:对crackme.exe2进行破解
根据破解crackme.exe1的方法,发现主要函数还是sub_401280:
image

该文件的输入仍是两个参数的形式,
判断条件:
第一个参数是否是“crackmeplease.exe”,是则进行下一步比较,不是则显示"I have an identity problem."
第二个参数是否是"I know the secret",是则"We have a little secret:Chocolate"(这个结果是unk_403080 中的字符串分别与0x42h 进行异或运算得来的)否则显示 “Pardon? What did you say?”
其余则显示"I think you are missing something."
image
image
进行试验,发现正确

(三)分析一个自制恶意代码样本rada,并撰写报告,回答以下问题:
1:提供对这个二进制文件的摘要,包括可以帮助识别同一样本的基本信息

在虚拟机中输入md5sum RaDa.exe查看MD5摘要值:
image

2:找出并解释这个二进制文件的目的

在学习通下载ProcessExplorer.rar并解压打开,随后双击运行unpacked的RaDa.exe文件,注意出现弹窗后不要点确定,在Process Explorer中双击进程,可以看到:
image

点击图片左侧的Strings页面查看文件的目的:
image
image
image
image
image

可以看出:运行该文件,会向http://10.10.10.10/RaDa发送请求,连接RaDa_commands.html进行上传或下载,放入文件C:\RaDa\tmp
运行RaDa.exe时,会自动复制该程序到C:\RaDa\bin中
image

Starting DDoSSmurf remote attack…说明还有分布式拒绝服务攻击
同时也会对注册表进行更改(读写和删除操作),相应的注册表(打开注册表编辑器)目录为HKLM\Software\Vlware, Inc.Vware ToolsiInstallPath和HKLM\Software"Hicrosoft\Windows\CurrentVersioniRun
image
image
还能控制电脑进行命令操作:get(下载),put(上传),screenshot(屏幕截屏),sleep(休眠)

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

(1)该二进制文件能对注册表进行读写和删除操作,添加了一个注册表项:实现了开机自启动RaDa。
(2)自我复制到C盘,将RaDa.exe复制在Rada\bin文件夹中。
(3)实现远程控制。
(4)实现入侵系统并操纵主机,能控制主机进行get、put、screenshot、sleep命令

4:识别并解释这个二进制文件中所采用的防止被分析或逆向工程的技术

使用了upx加壳来防止被分析。如以上所示,在没脱壳前,strings下看到的都是乱码,但脱壳后就能正常识别了。

5:对这个恶意代码样本进行分类(病毒、蠕虫等),并给出你的理由

其应该是一种后门。原因为它不会自主传播、复制,并且它没有进行伪装来获取权限,也不存在欺骗下载的操作。同时可以实现操控目标主机、提权的行为,是后门程序的主要特点,所以判定为后门。

6:给出过去已有的具有相似功能的其他工具

实验二的后门程序获取主机或虚拟机的shell,能获取目标主机音频、摄像头、击键记录等内容。

7:可能调查处这个二进制文件的开发作者吗?如果可以,在什么样的环境和什么样的限定条件下?

方法一:运行RaDa_unpacked.exe,打开ProcessExplorer,找到运行中的该文件双击,再点击strings页面:
image
方法二:在Windows的命令提示符中,输入RaDa.exe --authors即可查看作者(需关闭防火墙)
image
除此之外,应当还有别的方法查看作者,此处不赘述。

8.给出至少5种检测该恶意软件的方法,例如基于特征码的方法,需要详细介绍每种方法。

(1)基于特征码检测
特征码检测(Signature-based Detection)是通过比对已知恶意程序的特征码来检测后门程序。特征码通常是程序代码的特定字节序列或哈希值,这些序列是已知的恶意软件的“指纹”。
工作原理:
数据库匹配:首先,建立包含已知恶意程序(包括后门程序)的特征码数据库。然后,对目标系统中的可执行文件进行扫描,提取其字节序列,并与特征码数据库中的已知恶意软件特征码进行比对。
检测方式:如果目标程序的特征码与数据库中的已知后门程序的特征码匹配,则可以标记该程序为可疑或恶意。
优缺点:
优点:实现简单、检测速度快,适用于已知恶意软件的检测。
缺点:只能检测已知的恶意程序,无法发现新的或变种的后门程序。
(2)行为分析法
行为分析法通过监控程序在执行过程中的行为来判断其是否具有恶意特征。后门程序通常会表现出异常的行为,例如:与外部服务器通信、修改系统配置或注册表、获取管理员权限等。
工作原理:
系统监控:实时监控系统中的程序活动,如文件访问、网络连接、注册表修改、系统调用等。
异常行为识别:通过与正常程序的行为进行对比,识别程序是否具有异常行为。如果某个程序尝试监听非标准端口、修改系统安全设置或进行网络通信等,可以标记为可疑后门。
沙箱技术:将程序在一个受控环境中执行,观察其行为是否符合正常应用程序的运行模式。
优缺点:
优点:能够发现未知的后门程序,通过行为特征来识别恶意程序。
缺点:需要较高的计算资源,实时监控可能会导致系统性能下降。此外,有些后门程序可能采用反监控技术,逃避检测。
(3)静态分析法
静态分析法是通过分析程序的源代码、二进制文件或可执行文件的结构来发现后门程序。该方法不需要执行程序,只通过对文件的内容进行深入的检查来检测潜在的后门。
工作原理:
二进制代码分析:分析程序的二进制代码,查找其中是否存在可疑的代码片段,比如与外部服务器通信的函数、特定的加密算法、恶意的系统调用等。
控制流分析:通过反汇编工具检查程序的控制流,寻找与恶意行为相关的指令或反常的代码路径。
字符串分析:扫描程序中的可识别字符串,寻找与后门功能相关的关键词(如网络地址、用户名、密码等)。
优缺点:
优点:不需要执行程序,适用于恶意程序的早期检测。
缺点:需要较强的分析能力,且面对复杂的加密和混淆手段,静态分析可能无法完全有效。
(4)基于网络流量分析
后门程序通常会与远程攻击者进行通信,因此通过分析网络流量可以发现潜在的后门行为。此方法通过监控和分析系统的网络流量,寻找异常的通信模式来检测后门程序。
工作原理:
流量监控:实时监控系统的所有网络通信,特别是外部连接和数据传输。
异常模式检测:通过分析流量的源IP、目的IP、传输协议、数据包大小等特征,识别是否存在与已知恶意行为模式相符的通信活动。比如,发现与外部命令控制服务器的可疑连接、加密的通信流量等。
流量行为关联:将流量模式与已知恶意网络活动的行为特征进行比对,发现潜在的后门通信。
优缺点:
优点:可以检测隐藏在网络中的后门行为,不需要直接分析本地文件。
缺点:可能会产生较大的数据流量,导致资源消耗较高。此外,一些后门程序可能使用加密、代理等手段隐藏其通信内容。
(5)内存分析法
内存分析法通过实时监控系统内存,检测是否存在恶意程序的后门代码。后门程序有时会在内存中加载自己并隐藏其踪迹,因此仅凭硬盘中的文件可能难以发现后门。
工作原理:
内存扫描:对系统内存进行扫描,寻找可疑的代码段、数据段或进程。恶意代码往往在内存中驻留且不被直接存储在磁盘上,因此内存分析可以帮助揭示这些隐秘的后门。
进程间通信监控:检查各进程之间的通信,是否存在异常的内存共享、注入或恶意的进程间操作。
动态分析:通过动态调试手段,可以追踪程序的内存加载过程,发现是否有后门代码通过注入或自加载方式进入内存。
优缺点:
优点:可以检测运行时的恶意代码,即使后门程序未存储在磁盘上也能被发现。
缺点:内存分析复杂,需要较强的技术支持,且可能会产生较大的计算负担。

(四)取证分析实践

Windows 2000系统被攻破并加入僵尸网络
问题: 数据源是Snort收集的蜜罐主机5天的网络数据源,并去除了一些不相关的流量,同时IP地址和其他敏感信息被混淆。回答下列问题:

1:IRC是什么?当IRC客户端申请加入一个IRC网络时将发送那个消息?IRC一般使用那些TCP端口?

IRC:IRC是英文Internet Relay Chat的缩写,中文意为“互联网中继聊天”。它是一种基于互联网的即时通讯协议,通过客户端软件连接到服务器上,用户可以在不同的聊天室中进行实时交流。与其他即时通讯工具相比,IRC具有开放性、稳定性和安全性等优势。
通常,IRC客户端在申请加入网络时,会发送一系列的消息与服务器进行握手和认证。而IRC使用的TCP端口通常是6667,但也可能因服务器配置的不同而有所变化。

2:僵尸网络是什么?僵尸网络通常用于什么?

僵尸网络(Botnet)是指通过一种或多种传播手段,感染大量计算机或其他设备,使其变成“僵尸”主机,进而组成一个由恶意控制者管理的网络。这些被感染的设备(通常称为“僵尸”或“bot”)会通过特定的控制通道与攻击者之间进行通信,接受指令并执行恶意活动。僵尸网络的名称源于它的特征——大量的计算机像“僵尸”一样被远程操控,执行攻击者的命令,通常没有用户的知情或同意。
僵尸网络的工作原理:
攻击者通过多种方式将恶意的“僵尸程序”(也称为bot)传播到互联网上的各类设备,包括个人电脑、服务器、路由器等。一旦感染了bot程序,这些设备就会加入僵尸网络,变成攻击者的遥控工具。感染后的设备通常会等待来自指挥控制服务器(C&C)的指令,然后执行各种恶意活动。
这些恶意活动可能包括但不限于:
分布式拒绝服务攻击(DDoS攻击):僵尸网络可以利用大量被感染的计算机发起联合攻击,对目标网站或服务器进行海量流量轰炸,导致目标服务器超载,甚至宕机,造成服务不可用。
垃圾邮件传播:僵尸网络还可以被用来发送大量垃圾邮件,邮件中可能包含恶意软件、钓鱼链接或其他诈骗内容,用于诱骗受害者下载病毒、泄露个人信息或进行其他欺诈行为。
数据盗窃:僵尸网络中的感染设备可以用来窃取存储在用户计算机中的敏感信息,如个人身份信息、信用卡信息、银行账号、甚至企业的商业机密。
恶意软件分发:攻击者还可以通过僵尸网络传播恶意软件,例如勒索病毒、间谍软件或其他类型的恶意代码,进一步感染更多设备或实施勒索攻击。
恶意挖矿:攻击者利用被感染的设备进行非法的加密货币挖矿。通过僵尸网络,攻击者可以在不被注意的情况下使用受害者的计算资源来挖掘比特币或其他加密货币,从而牟取不正当的经济利益。

3:蜜罐主机(IP地址:172.16.134.191)与那些IRC服务器进行了通信?

将下载好的botnet_pcap_file.dat文件拖入打开的wireshark,输入:
ip.src == 172.16.134.191 && tcp.dstport == 6667ip.src == 172.16.134.191 && tcp.dstport ==
6667
image
发现蜜罐主机与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为服务器的僵尸网络?

首先在虚拟机中输入sudo apt install tcpflow安装tcpflow,再将文件botnet_pcap_file.dat拖到虚拟机中,然后命令行中输入
tcpflow -r botnet_pcap_file.dat 'host 209.196.44.172 and port 6667:
使用命令来获取访问该服务器的主机数量
cat 209.196.044.172.06667-172.016.134.191.01152 | grep --text "^:irc5.aol.com 353" | sed "s/^:irc5.aol.com 353 rgdiuggac @ #x[^x]*x

标签:后门,exe,RaDa,恶意代码,程序,2024,2025,主机,20222303
From: https://www.cnblogs.com/bbg0523/p/18528958

相关文章

  • 20222417 2024-2025-1 《网络与系统攻防技术》实验四实验报告
    1.实验内容1.1恶意代码文件类型标识、脱壳与字符串提取对提供的rada恶意代码样本,进行文件类型识别,脱壳与字符串提取,以获得rada恶意代码的编写作者,具体操作如下:(1)使用文件格式和类型识别工具,给出rada恶意代码样本的文件格式、运行平台和加壳工具;(2)使用超级巡警脱壳机等脱壳软件,对......
  • .NET周刊【11月第1期 2024-11-03】
    国内文章.NET9AOT的突破-支持老旧Win7与XP环境https://www.cnblogs.com/lsq6/p/18519287.NET9引入了AOT支持,使得应用程序能够在编译时优化,以在老旧Windows系统上运行。这项技术通过静态编译,消除运行时的JIT编译,加速程序执行。尽管Windows7和XP已不再主流,它们......
  • CSP-S2024 山 西 迷 惑 行 为 大 赏
    前作CE之家A人叉叉人丢饭碗的车万人万事开头难人定义头文件人透气人逆行人系统治疗人多系统治疗人windows操作系统单推人缺失符号人转义人读入分号人零个小于人一个小于......
  • CSP2024 - J/S 年度总结大会报告
    CSP2024-J/S年度总结大会报告J组预估和总分都为:\(100+100+100+15=315.\)\(T_1,T_2\)还挺弱智的,就是没有\(15\min\)内\(A\)掉。\(T_3\)想了\(1h\)的完全背包做法加上\(1h\)的调试,真的慢(本质是对于\(dp\)没有深刻理解)。\(T_4\)是一个\(dp\),考场上没有想出来......
  • P10764 [BalticOI 2024] Wall
    更好的阅读体验首先可以枚举一个位置的水量\(w\),求\(c_{w}\)表示其方案数,答案为\(\sumc_{w}\)。那么可以设\(c_{i,j}\)表示位置\(i\)水量\(\gej\)的方案数,答案为\(\sumc_{i,j}\)。一个位置\(i\),墙高为\(a_i\),要求其有至少\(j\)单位的水,那么左右的\(\maxh\)......
  • CSP2024 前集训:NOIP2024加赛 1
    前言赛时本来rk3,赛后自己加hack卡自己于是成rk4了。因为这场是假做法大战,T1假贪心有\(92pts\);T2\(O(n^2m)\)能过(是因为数据里\(m\le10\));T3相当抽象,赛时我打的爆搜只加了一个剪枝能得\(70pts\),赛后发现无解的时候会跑满,于是提前判掉无解就过了甚至最优解\(30ms\)......
  • 2024年深受用户喜爱的桌面工作安排软件——6款工具精选
    一、引言在当今数字化办公时代,桌面工作安排软件已成为提升工作效率和组织管理能力的关键工具。该类软件通过集成日历、任务管理和项目管理功能,为用户提供了一个清晰、有序的工作规划平台,使得日常工作中的复杂性和不确定性得以有效转化和管理。它们的核心价值在于,能够协助用户......
  • HTC Vive SDK:空间定位与追踪技术教程_2024-07-26_09-12-46.Tex
    HTCViveSDK:空间定位与追踪技术教程HTCViveSDK概览HTCViveSDK(SoftwareDevelopmentKit)是为开发者提供的一套工具和API,用于创建与HTCVive虚拟现实头盔兼容的应用程序。该SDK的核心功能之一是空间定位与追踪技术,它允许开发者在虚拟环境中精确地追踪用户的头部和手部......
  • 2024年备受推荐的数据可视化平台——团队管理必备利器
    一、引言在当今数字化飞速发展的时代,数据已经成为企业和团队决策、管理以及运营的核心要素之一。然而,原始的数据往往是繁杂且晦涩难懂的,呈现为海量的数字、文本等形式,单纯依靠人工去解读和分析这些数据不仅效率低下,而且很难从中快速准确地提取出有价值的信息。这时候,数据可视......
  • HTC Vive SDK:手柄控制与输入技术教程_2024-07-26_09-21-37.Tex
    HTCViveSDK:手柄控制与输入技术教程HTCViveSDK概览SDK下载与安装在开始开发HTCVive虚拟现实应用之前,首先需要下载并安装HTCVive的SDK。以下是详细的步骤:访问官网:打开HTCVive的官方网站,找到开发者中心。下载SDK:在开发者中心页面,找到并下载适用于你操作系统的......