2021 · 会议论文

SoK:通过重托管实现嵌入式系统的安全分析

SoK: Enabling Security Analyses of Embedded Systems via Rehosting

系统化梳理“重托管”:把嵌入式固件从实体硬件迁移到虚拟环境中,该环境对硬件行为的建模足以支持模糊测试、符号执行等动态分析。作者以 2,574 个硬件配置衡量全系统仿真为何难以扩展,包括来自 Linux 5.11.4 的 1,956 个设备树二进制文件(DTB)和 618 个厂商提供的 ARM Cortex SVD 文件。他们将语料中的 CPU 型号与 QEMU 的支持情况对比,统计不同外设的数量,以驱动源码行数作为复杂度的近似指标,并以蒙特卡罗模拟逐个 SoC 添加外设模型。若要支持随机抽取的 10% SoC,Linux 语料约需 3,947 种外设,ARM Cortex 语料约需 1,730 种,而 QEMU 5.2 实现的外设为 1,083 种。论文随后按各系统在每一层采用仿真、替换、符号建模、透传至硬件或保持不变的方式对既有工作分类,描述含保真度评估的迭代式重托管流程,并列出开放问题。

研究范围与局限

这是一项结合测量研究的系统化综述,并非新的重托管工具。测量基于硬件描述而非固件镜像:设备树覆盖基于 Linux 的(Type-1)系统,SVD 文件只涵盖 ARM Cortex 硬件,且只统计样本数不少于十个的架构或厂商。驱动源码行数被明确作为外设建模工作量的粗略近似,闭源驱动则按所属架构的平均值计。“手工编写的硬件仿真器难以扩展”这一结论依赖于这些近似指标以及 2021 年初的 QEMU 5.2 与 OVPsim。作者指出,重托管保真度缺乏正式定义,也没有大规模保真度评估,因此分类法只对各方法作定性比较;同期的另一篇综述对保真度有更详细的讨论。

与本合集的关联

补充一篇界定固件重托管领域的综述,为合集中的 Firmadyne、FirmAE、HALucinator 等具体重托管系统提供共同的术语与分类框架。

发表与复核详情

发表载体
ACM ASIA CCS 2021
发表状态
会议论文
出版/提交日期
2021 年 5 月 24 日
日期依据
采用 ACM 在 Crossref 登记的印刷出版日期;在线出版日期在元数据说明中单独记录。本条目不采用 6 月 7—11 日的会议日期。
DOI
10.1145/3433210.3453093

ACM 元数据记载印刷出版于 2021-05-24,在线出版于 2021-06-04,页码为 687–701,十二位作者顺序如本条目所列。论文以 CC BY 4.0 许可发布。审阅期间 dl.acm.org 拒绝自动请求,因此 15 页 ACM PDF 依据 Wayback Machine 对其原地址的存档副本阅读。脚注 3 链接 igloo-re/rehosting_sok,现已重定向至 rehosting/rehosting_sok。所审阅的 2021-06-08 提交采用 MIT 许可,构建基于 Ubuntu 20.04、含 QEMU 5.2.0 的 Docker 镜像,生成 1,956 个 DTB,并输出表 1–3 与蒙特卡罗模拟结果所依据的数据。其 SVD 分析会克隆最新的 posborne/cmsis-svd 仓库,README 提醒结果会随该仓库更新而略有变化。该仓库用于复现上述测量,并非重托管工具。本次未构建或运行任何内容。

来源复核于

本合集仅做来源复核,未重新运行论文实验。请通过原始论文或 BibTeX 引用原作者。

报告条目过时 建议修正翻译

一手来源

  1. https://dl.acm.org/doi/10.1145/3433210.3453093
  2. https://api.crossref.org/works/10.1145/3433210.3453093
  3. https://web.archive.org/web/20250427221838/https://dl.acm.org/doi/pdf/10.1145/3433210.3453093
  4. README.md GitHub · rehosting/rehosting_sok · 修订 499b625
  5. LICENSE GitHub · rehosting/rehosting_sok · 修订 499b625
  6. Dockerfile GitHub · rehosting/rehosting_sok · 修订 499b625