JustSTART:如何利用模糊测试发现 Xilinx UltraScale(+) 上的 RSA 认证绕过漏洞
密码学与安全
2024-02-16 v1
摘要
模糊测试是软件领域中用于发现漏洞和脆弱性的成熟技术。然而,模糊测试在硬件系统安全漏洞方面的应用十分稀少,其主要原因在于需要访问设计信息(HDL 源代码)。此外,在运行时观察硬件内部状态通常是无效的信息来源,因为其文档通常不公开。另外,由于带宽受限的分析接口(JTAG 以及对内部模块的最小内省),运行时的这种观察也是低效的。在本工作中,我们研究了针对 7-Series 和 UltraScale(+) FPGA 配置引擎的模糊测试,该控制平面负责 FPGA 内部的(安全)比特流配置。我们的目标是检验模糊测试在分析和记录 FPGA 配置引擎不透明内部运作方面的有效性,并主要侧重于识别安全漏洞。仅使用公开可用的芯片和分散的文档,我们首先设计并实现了 ConFuzz,一个先进的 FPGA 配置引擎模糊测试与快速原型设计框架。基于我们对比特流文件格式的详细理解,我们随后为 Xilinx 配置引擎系统地定义了 3 种新颖的关键模糊测试策略。此外,我们的策略通过变异型结构感知模糊器执行,并融合了各种新颖的、针对 FPGA 定制的优化。我们的评估揭示了配置引擎内先前未记录的行为,包括导致 FPGA 无响应状态的系统崩溃等关键发现。另外,我们的调查不仅重新发现了 starbleed 攻击,还发现了能够绕过 Xilinx UltraScale(+) 的 RSA 认证的 JustSTART (CVE-2023-20570)。请注意,我们也讨论了相应的对策。
引用
@article{arxiv.2402.09845,
title = {JustSTART: How to Find an RSA Authentication Bypass on Xilinx UltraScale(+) with Fuzzing},
author = {Maik Ender and Felix Hahn and Marc Fyrbiak and Amir Moradi and Christof Paar},
journal= {arXiv preprint arXiv:2402.09845},
year = {2024}
}