obfuscated-loop/wsb-malware-analysis

GitHub: obfuscated-loop/wsb-malware-analysis

基于 Windows Sandbox 的恶意软件分析环境自动化配置工具,通过预置脚本一键安装逆向与网络分析工具链。

Stars: 0 | Forks: 0

# wsb-malware-analysis **用于恶意软件分析的 Windows Sandbox (WSB) 入门项目**:自动配置一个开箱即用的 Windows Sandbox 环境,包括分析工具、预配置的 `.wsb` 文件以及辅助脚本/示例。 ### **请将 `analysis.wsb` 中的 `MemoryInMB` 条目修改为您的系统可承受的数值 - 默认占用 8GB 内存;专为 16GB 内存的机器设计。** ## 快速开始 1. 确保已启用 Windows Sandbox。 2. 使用本仓库中预配置的 `.wsb` 文件。 3. 启动 Sandbox 并让安装程序自动配置工具。(这将需要 10 分钟或更长时间,具体取决于网络连接/系统速度) ## 安装内容 安装程序使用 `winget` 安装以下工具: | 分类 | 工具 | Winget id | | ------------------------ | ------------------ | ------------------------------- | | 实用工具 | Everything | `voidtools.Everything` | | 压缩 / 归档 | 7-Zip | `7zip.7zip` | | 系统 / 进程工具 | Sysinternals Suite | `Microsoft.Sysinternals.Suite` | | 逆向工程 | x64dbg | `x64dbg.x64dbg` | | 逆向工程 | rizin | `Rizin.Rizin` | | .NET 逆向工程 | dnSpyEx | `dnSpyEx.dnSpyEx` | | 浏览器 | Helium | `ImputNet.Helium` | | 编辑器 / IDE | Zed | `ZedIndustries.Zed` | | 网络分析 | Wireshark | `WiresharkFoundation.Wireshark` | | 启动器 | Flow Launcher | `Flow-Launcher.Flow-Launcher` | ### 任务栏固定(安装后) 安装完成后,当这些二进制文件存在于其预期路径时,脚本会将它们固定到任务栏: - Helium (`chrome.exe`) - dnSpyEx (`dnSpy.exe`) - Sysinternals (`ProcMon64.exe`, `procexp64.exe`, `tcpview64.exe`, `Autoruns64.exe`) - x64dbg (`x64dbg.exe`) - Wireshark (`Wireshark.exe`) ## 项目布局 - `*.wsb`(预配置的 Windows Sandbox 文件) - `scripts/` - 包含 `Pin-Taskbar/` 功能辅助程序,作为 https://github.com/Freenitial/Pin-Taskbar 的子模块 - 安装脚本(`install-winget.ps1`, `install-deps.ps1`) - `samples/` - 用于存放恶意软件样本的占位文件夹 ## 安装程序如何运作 安装程序是一个 PowerShell 脚本,它会: 1. **创建一个简单的始终置顶的 UI** - 使用 WinForms 显示一个单一的“控制台风格”状态窗口。 2. **通过 `winget` 安装依赖项** - 定义一个 `WinGetPackages` 列表。 - 遍历每个包: - 更新 UI 文本:`Installing: ` - 运行: - `winget install --silent --force --accept-source-agreements --disable-interactivity --source winget` 3. **计算 Sandbox 配置文件内的安装路径** - 设置: - `$AppDataLocal = "C:\Users\WDAGUtilityAccount\AppData\Local\"` - 构建预期的二进制文件路径,位于: - `$AppDataLocal\imput\Helium\...` - `$AppDataLocal\Microsoft\WinGet\Packages\...` - 因为 winget 可能会将包内容放置在带有版本号的后缀文件夹下,脚本会捕获: - `$WinGetPackageTail = "_Microsoft.Winget.Source_8wekyb3d8bbwe"` - 它使用该后缀来形成指向 Sysinternals + dnSpyEx + x64dbg 可执行文件的路径。 4. **移除任务栏上固定的 Edge** - 删除: - `HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband` - (这是对任务栏带状设置的激进重置。) 5. **恢复经典上下文菜单并重启 Explorer** - 通过写入注册表值恢复传统的上下文菜单行为: - `HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32`(默认值) - 重启 Explorer: - `Stop-Process -processname explorer` - `sleep 3` 6. **将选定的工具固定到任务栏** - 使用 https://github.com/Freenitial/Pin-Taskbar 的 `Set-TaskbarPin` 函数 - 感谢他们的工作! 7. **启动 Flow Launcher 和 Helium** 8. **关闭 UI 并显示完成提示** ## 注意事项 - 请遵守 https://github.com/Freenitial/Pin-Taskbar 的许可协议,不要将他们的工具用于商业用途;您可以将我的作品用于商业用途, 但您需要移除他们项目的所有痕迹。 - 安装程序依赖于**特定的安装路径约定**(尤其是对于 Sandbox 配置文件内的 winget 包)。如果包布局有所不同,您可能需要调整 `install-deps.ps1` 中的 `$WinGetPackageTail` 和二进制文件路径。 - `.wsb` 文件被配置为将您的 `scripts/` 和 `samples/` 目录整合到 Sandbox 会话中。
标签:AI合规, DAST, Libemu, Windows沙箱, 云资产清单, 恶意软件分析, 系统分析, 网络分析, 自动化配置, 逆向工程