Gidwisedebrave-ui/Malware-Analysis-Lab

GitHub: Gidwisedebrave-ui/Malware-Analysis-Lab

这是一个完整的恶意软件分析实验室搭建指南,教你如何用VirtualBox、FLARE VM和REMnux构建隔离的安全分析环境。

Stars: 0 | Forks: 0

# 恶意软件分析实验室 受 HuskyHacks 课程启发的实用恶意软件分析实验室 我在此实验室中使用的工具 1. 实验室基础设施与网络 2. Oracle VirtualBox:用于托管隔离 VM 的 Hypervisor。 3. FLARE VM:基于 Windows 的逆向工程与分析发行版。 4. INetSim:在 REMnux 上用于模拟互联网服务(HTTP、DNS 等),使恶意软件表现出在线状态。 5. Wireshark:捕获网络流量以分析 C2(命令与控制)通信。 6. PEStudio:用于初步分类、检查文件哈希和查找可疑导入。 7. FLOSS (FireEye Labs Obfuscated String Solver):自动提取标准 "strings" 工具遗漏的混淆字符串。 8. Procmon (Process Monitor):Sysinternals 套件的一部分;用于监视实时文件系统、注册表和进程活动。 9. TCPView:监控来自分析机器的活跃网络连接。 我为启动实验室而下载的程序。 1. Virtual Box 2. Window 10 iso 3. Remnux 每次下载后,我都确保生成哈希值以验证其完整性 生成哈希值后,我将它们与官方网站上的哈希值进行比较,或者检查 VirusTotal 和 TalosIntelligence 验证哈希值后,我先安装虚拟机,然后是 Remux,最后是 Windows 注意: 安装完成后,虚拟机看起来是这样的 image 安装完成后 我拍摄了一个快照,为什么? 在恶意软件分析中,你需要为干净的 Windows VM(如 FLARE VM)拍摄快照,这样在你用恶意软件感染它之后,你可以在几秒钟内恢复到原始状态。如果没有快照,每次运行新样本时,你都必须删除并重新安装整个操作系统。 image 根据需要添加描述 image ## 设置 REMNUX 1. 打开 remnux 并启动终端 2. 然后我运行命令 sudo mkdir /media/cdrom 3. 这是一个空目录,用于挂载我将要运行的操作系统光盘 4. 然后运行 sudo mount /dev/cdrom /media/cdrom 接着我运行 ls /media/cdrom 以确保所有必要的文件都存在 image 运行 cd /media/cdrom, 然后运行 ./autorun.sh 来安装我需要的所有工具,之后重启 Remnux vm。 ## 安装 FLAREVM 1. 下载 google chrome 2. 下载 sysinternal(用于获取工具) 3. 下载 pestuido 和 procmon 然后拍摄快照,根据喜好命名和描述 ## 安装 Flare vm 以管理员身份打开 powershell,然后运行 Set-executionpolicy unrestricted, 将 Windows 上的 PowerShell 执行策略设置为 Unrestricted 将取消所有运行脚本的限制,允许任何脚本(本地创建或下载的)在无需数字签名的情况下运行。这主要用于消除运行自动化脚本或故障排除以及开发时的错误,但这会带来重大的安全风险。 然后运行 (New-Object net.webclient).DownloadFile('https://raw.githubusercontent.com/mandiant/flare-vm/main/install.ps1',"$([Environment]::GetFolderPath("Desktop"))\install.ps1") image 然后 install.ps1 脚本将被下载并显示在桌面上 image 要运行 install.ps1 脚本,我必须 cd 到桌面路径 image 之后 flarevm 将开始安装 这通常需要 2-4 小时 在这里拍摄一个快照,因为我们将处理恶意软件,我们需要一个在机器受损时可以还原的状态 现在我们将下载一个由 ##Huskyhacks 准备的恶意软件文件 image image 我们点击下载 zip。 然后在这里再拍摄一个快照 Windows 10 主页看起来应该是这样的 image ## 隔离网络 为什么我们需要隔离网络? 在恶意软件分析期间将网络与主机隔离可以防止恶意代码逃逸,从而保护你的物理机器、本地网络和互联网连接免受感染、数据被盗或破坏。 防止恶意软件从虚拟机(访客机)传播到主机或更广泛的公司/家庭网络。 阻止间谍软件或勒索软件窃取或加密分析人员机器或连接的网络驱动器上的文件。 我们设置网络,以便 Windows10 vm 和 remnux vm 可以通信,但不能与主机通信。 设置主机 我们进入工具,网络,然后创建 1. image 2. 启用 Ethernet 适配器 #2 3. image 4. 更改 ip 地址,使其看起来与家庭网络完全不同 image 5. 进入 DHCP 服务器 6. 设置 Ip 如下所示 image 7. 现在我们进入设置,默认网络通常是 NAT(这允许 FlareVm 路由到我的主机操作系统,这是我们不想要的),但我们会将其更改为 HOST ONLY ADAPTER(仅主机适配器),并将其放在 #2 适配器上(即我们刚刚创建的那个),并将其设置为仅主机。 image 我们对 windows 10 VM 做完全相同的操作 接下来我们在 Remnux 上运行 ip a,并在 windows CMD 上运行 ipconfig,以检查我们配置的 Ip image image ## 接下来,我们要确保无法离开网络或 ping 外部网络 例如,现在我们可以 ping google.com,它应该失败 image image ## 接下来是检查两个设备是否可以通信 所以我们从 Windows ping 10.0.0.3,并从 REMNUX ping 10.0.0.4,即两个设备的 IP 地址 image image image 现在我们有一个可以相互通信但不能与外部世界通信的虚拟机。 ## 设置假互联网以欺骗恶意软件,让其认为存在实际的互联网 (INETSIM)。 首先我们在 Remnux 上运行 Inetsim,它有很多很棒的服务,但我们需要激活 DNS 服务 image 要配置 dns, 我们运行 sudo nano /etc/inetsim/inetsim.conf 这个 nano 文件会打开,image 我们要做的第一件事是移除 start_service DNS 前面的 #(取消注释) image 接下来是取消注释 service_bind_address image 并将地址设置为 0.0.0.0,这将配置 INetSim 在所有可用的网络接口上监听连接。 这允许 INetSim 接受来自外部受害机器 的流量,而不是仅接受来自 localhost (127.0.0.1) 的连接,这对于本实验至关重要。 接下来是取消注释并将 dns_default_ip 更改为 10.0.0.3(我们的 Remnux IP 地址) image 这会强制 INetSim 将来自受监控恶意软件的所有 DNS 查询解析为 REMnux 机器的 IP 地址。这会将所有 HTTP、HTTPS 和其他网络连接重定向到 INetSim 的虚假服务,确保所有恶意流量都被记录和隔离。 然后我们保存,并再次运行 Inetsim。 现在 dns 正在运行 image
标签:AI合规, C2通信, DAST, FLARE VM, HTTP工具, INetSim, IP 地址批量处理, Oracle VirtualBox, PEStudio, REMnux, RFI远程文件包含, Sysinternals, Talent Intelligence, Windows 安全, Wireshark, 云安全监控, 云资产清单, 句柄查看, 威胁情报, 安全实验室, 开发者工具, 恶意软件分析, 情报收集, 教学实验, 数据包嗅探, 沙箱环境, 漏洞研究, 系统快照, 网络安全, 网络安全审计, 网络流量分析, 虚拟化安全, 逆向工程, 隐私保护, 静态分析, 黑客攻防