基于 Win 11 WSL 安装 Ubuntu 20.04 及 FirmAE 完整指南

🛡️ 守望者|📅 2026-05-24

在固件安全分析领域,FirmAE 是一个非常好用的全自动化固件模拟工具。但很多人在 Windows 环境下搭建它时会遇到各种坑——网络配置、依赖缺失、权限问题……

本文基于 Win 11 WSL 2 环境,手把手带你从零搭建 Ubuntu 20.04 + FirmAE,并以 D-Link DIR-868L 固件为例完成模拟。

一、安装 Ubuntu 20.04

打开 PowerShell(管理员模式),直接跑一行命令:

PS> wsl --install -d Ubuntu-20.04

系统会自动下载 Ubuntu 20.04(约 200MB),完成后自动弹出配置窗口,设置你的用户名和密码即可。

💡 注意:Linux 下密码输入时不显示任何字符,直接敲完回车即可,这不是键盘坏了 😄

WSL 安装 Ubuntu 20.04
图1:WSL 安装 Ubuntu 20.04 成功

二、更新系统 & 安装依赖

进入 WSL 后,先更新包索引,然后安装 FirmAE 所需的依赖:

wyj@DESKTOP:~$ sudo apt update
wyj@DESKTOP:~$ sudo apt install -y \
  binwalk mtd-utils u-boot-tools \
  build-essential zlib1g-dev liblzma-dev \
  liblzo2-dev device-tree-compiler \
  qemu-system-arm qemu-system-mips \
  qemu-utils git python3-pip docker.io

这些包加起来大概 1.2GB 左右,取决于你的网络速度,等它装完就好。

安装依赖包
图2:安装系统依赖

三、克隆 & 安装 FirmAE

从 GitHub 克隆 FirmAE 仓库:

wyj@DESKTOP:~$ git clone --recursive \
  https://github.com/pr0v3rbs/FirmAE
wyj@DESKTOP:~$ cd FirmAE

依次执行三个脚本完成安装:

wyj@DESKTOP:~/FirmAE$ ./download.sh
wyj@DESKTOP:~/FirmAE$ sudo ./install.sh
wyj@DESKTOP:~/FirmAE$ sudo ./init.sh

🔍 说明:

download.sh — 下载预编译的二进制文件及数据库

install.sh — 安装 FirmAE 核心依赖

init.sh — 初始化网络配置(创建虚拟网桥等)

FirmAE 安装过程
图3:FirmAE 安装完成

四、下载固件并运行模拟

D-Link DIR-868L(固件版本 revB 2.05b02)为例:

wyj@DESKTOP:~/FirmAE$ mkdir -p firmwares/dlink
wyj@DESKTOP:~/FirmAE$ # 把 DIR-868L 固件放到 firmwares/dlink/ 下
wyj@DESKTOP:~/FirmAE$ sudo ./run.sh -c dlink \
  firmwares/dlink/DIR-868L_fw_revB_2-05b02.zip

🐛 踩坑记录:binwalk 缺失

第一次运行可能会遇到这个错误:

ModuleNotFoundError: No module named 'binwalk'

这是 FirmAE 目录下自带的 binwalk 子模块没装上。手动安装即可:

wyj@DESKTOP:~/FirmAE$ cd binwalk-2.3.4/
wyj@DESKTOP:~/FirmAE/binwalk-2.3.4$ sudo python3 setup.py install

✅ 成功运行

再次运行 FirmAE,就能看到成功的输出:

DIR-868L 模拟成功
图4:DIR-868L 固件模拟成功

网络可达 192.168.0.1 — 模拟完成!

Web 服务 192.168.0.1 — 可以直接访问路由器管理页面

五、在 WSL 中使用图形界面

WSL 2 原生支持 GUI(WSLg),你甚至可以直接在 WSL 里启动 Firefox:

wyj@DESKTOP:~$ sudo apt install x11-apps firefox -y
wyj@DESKTOP:~$ firefox

Firefox 会自动在 Windows 桌面打开,输入 192.168.0.1 就能直接访问模拟出来的路由器管理界面了。

WSL 中启动 Firefox
图5:在 WSL 中启动 Firefox 访问模拟固件

⚠️ 如果看到 Failed to create DBus proxy 的警告,不要慌——这是 WSLg 环境下缺少 a11y 服务,不影响 Firefox 正常运行。

总结

至此,你已经在 Windows 11 WSL 2 环境下成功搭建了 Ubuntu 20.04 + FirmAE,并完成了 DIR-868L 固件的全自动化模拟。这套流程同样适用于其他支持 FirmAE 的固件(DIR 系列、Tenda、TP-Link 等)。

📌 快速回顾:

wsl --install -d Ubuntu-20.04

② 安装依赖 → ③ 克隆 FirmAE → ./download.sh && ./install.sh && ./init.sh

./run.sh -c brand firmware.zip

📋 如需粘贴到微信公众号后台,请复制以下纯内联 HTML:

打开下方链接,查看 FirmAE-WSL-安装指南_wechat.html,全选复制后粘贴到公众号编辑器即可。图片需手动上传到微信 CDN 后替换 src 地址。