5 步搭好 FLARE-VM 逆向工程环境:一份带检查清单的实操记录
【免费下载链接】flare-vmA collection of software installations scripts for Windows systems that allows you to easily setup and maintain a reverse engineering environment on a VM.项目地址: https://gitcode.com/GitHub_Trending/fl/flare-vm
FLARE-VM 是一套 Windows PowerShell 脚本,作用是把整套逆向工程工具链批量装进一台虚拟机。它底层依赖两个组件:Chocolatey(Windows 的包管理器,管的是一堆 .nupkg 安装包)和 Boxstarter(负责 Windows 环境自动化,处理中途重启与失败重试)。装完后,x64dbg、Ghidra、WinDbg 等 111 个工具已经在虚拟机里就位,你需要准备的只是一台 Windows 10 虚拟机。
装之前要确认的事:FLARE-VM 虚拟机配置清单
第一条规则没有商量余地:只装虚拟机,不要碰物理宿主机。install.ps1 自己会做虚拟机检测(看硬件型号里有没有 VirtualBox、VMware、Hyper-V 字样),但真装到宿主机上是无法完整回滚的——脚本会让你确认,但这个确认别接。
以下前置条件在动手前要逐项过一遍,脚本的预检查也会对其中几项直接拦截:
- 系统:Windows 10 及以上;PowerShell 5.0+(32 位 PowerShell 会被脚本直接拒绝退出)
- 资源:磁盘至少 60GB、内存至少 2GB
- 账户:用户名不能含空格或特殊字符,含空格的账户会让安装直接中断
- 安全:关闭篡改保护(Tamper Protection)和 Windows Defender,建议走组策略,否则工具下载过程会被拦截、隔离
- 系统:先禁用 Windows 更新,至少撑到安装结束
- 网络:能正常出网,脚本会预先探测三个站点是否可达
让 install.ps1 跑起来的三步
虚拟机满足要求后,先打一个快照——后面任何环节出问题,退回这里重来即可。然后用一条命令拿到仓库,安装脚本 install.ps1 和默认配置 config.xml 都在里面:
# 获取安装脚本与默认配置 git clone https://gitcode.com/GitHub_Trending/fl/flare-vm cd flare-vm # 解除文件封锁,放行脚本执行 Unblock-File .\install.ps1 Set-ExecutionPolicy Unrestricted -Force # 以管理员身份运行安装脚本 .\install.ps1脚本属于"外来文件",Windows 默认封锁它,所以要先Unblock-File再放行执行策略。如果第二条命令报策略被更高层级覆盖,就改成Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force,再用Get-ExecutionPolicy -List查各层级的实际生效值。
跑起来之后是一串预检查:PowerShell 版本、管理员权限、是否虚拟机、磁盘空间、Defender 状态,逐项打钩。任何一项报红,先回到上一节把 VM 修好,别硬按 Y。脚本中途会要一次账户密码,那是给 Boxstarter 重启后自动登录用的,直接用-password <密码>参数带上可以省一次手动输入。
安装器 GUI 里选包和目录
预检查通过、Boxstarter 与 Chocolatey 装好之后,会弹出一个定制窗口——这是整个安装过程中唯一需要你操作的地方。
左列 Available to Install 是源里全部可用的包,右列 To Install 是即将安装的清单,默认的 111 个包都在右侧。用中间那组按钮可以单个或整批剔除不需要的包——只做动态分析的话,把静态反编译全家桶剔掉能省出不少磁盘。
窗口上半区设置三个环境变量,决定工具落盘的位置:
%VM_COMMON_DIR%:共享配置与日志目录,默认%ProgramData%\_VM%TOOL_LIST_DIR%:工具分类与快捷方式目录,默认在桌面%RAW_TOOLS_DIR%:原始安装包解压目录,默认C:\Tools;系统盘吃紧时建议挪到数据盘
点 OK 后 GUI 会把改动写回内存里的 config.xml 再开始装。全量安装时间不短,脚本提示全程需要盯着控制台,有失败要及时处理。
装完之后的环境调整
安装结束第一件事是把虚拟机网络模式切到host-only,掐断 guest 直连外网的路——这是动态分析恶意样本的硬性要求,避免样本偷偷外联。接着再打一个快照,把这个可用状态固定下来。
想再深一层,看 config.xml。文件里的每个标签对应一类系统操作,安装器会在装完包后逐项执行:
<apps>:移除预装的 AppX 应用<services>:把指定 Windows 服务改成手动启动<registry-items>:注册表调整,比如显示文件扩展名<custom-items>:执行任意 PowerShell 命令
用-customConfig <路径>指定自己的配置文件即可,本地文件、URL 都支持;任务栏布局同理,用-customLayout替换。VirtualBox 用户还有一个顺手的地方:virtualbox/ 目录放了三个现成的 Python 脚本,能把快照批量导出为 .ova、批量清理快照、强制动态分析 VM 的网卡回到 host-only。
装完的验收动作很简单:打开管理员 PowerShell 运行choco list,看到 x64dbg.vm、ghidra.vm 等包都在列表里,环境就算就绪。
FLARE-VM 安装报错排查:三个日志路径与重试命令
安装失败大概率不是安装脚本的锅,而是某个具体包:工具下载地址过期、SHA256 哈希变了、或者杀软把下载内容隔离了。先看C:\ProgramData\chocolatey\lib-bad目录里的失败包名,再手动执行choco install -y <包名>单独重试,往往到这里就解决了。
如果想跳过 GUI 和预检查、把整个流程重跑一遍,命令是:.\install.ps1 -password <密码> -noWait -noGui -noChecks。如果排查下来不是单个包的问题,按这个顺序看日志:
%VM_COMMON_DIR%\log.txt:FLARE-VM 自身日志,含系统信息快照%PROGRAMDATA%\chocolatey\logs\chocolatey.log:包管理器视角的报错%LOCALAPPDATA%\Boxstarter\boxstarter.log:环境自动化层的记录
整条路都走不通时,降到最小配置重跑:复制默认 config.xml,把<packages>裁剪到只保留你真要用的几个工具,再用-customConfig指过去安装。环境本身就是可复制品,重搭的成本只是一个快照的时间。
【免费下载链接】flare-vmA collection of software installations scripts for Windows systems that allows you to easily setup and maintain a reverse engineering environment on a VM.项目地址: https://gitcode.com/GitHub_Trending/fl/flare-vm
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考