Static Detection of Post-Quantum Cryptographic Algorithms in Stripped Binaries for Digital Forensic Examination and Migration Assurance
本文介绍了 Kestrel,这是一种静态分析工具,它通过识别独特的数论变换常数表,能够可靠地在去符号且经过优化的二进制文件中检测标准化后量子密码算法(ML-KEM 和 ML-DSA),从而在传统检测信号被掩盖的情况下,实现有效的取证检查、供应链审计和迁移保障。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
在数字安全领域,一场无声的革命正在进行。几十年来,保护我们最敏感数据(如银行记录、国家机密、私人信息)的锁,一直依赖于那些易于创建但若没有特定密钥就几乎无法破解的数学谜题。这些被称为公钥密码学的谜题,是互联网信任的基础。然而,科学家们早已预言,一种利用量子物理奇特法则的新型计算机,最终将强大到能够瞬间破解这些锁。当那一刻到来时,旧的锁将变得毫无用处。为了应对这一挑战,专家们正在设计基于不同数学结构的、甚至连量子计算机也难以轻易破解的新锁。这些新系统被称为后量子密码学。现在的挑战不仅在于构建这些新锁,更在于寻找它们。随着各机构竞相更换旧系统,他们需要准确知道这些新锁隐藏在运行其世界的复杂软件中的什么位置。但问题在于:一旦软件被编译成最终使用的程序,通常用于标识内部内容的标签和名称会被剥离,以使程序更小、更快。失去了这些名称,要在堆积如山的代代码中寻找特定的新锁,就像是在不知道沙粒长什么样的情况下,试图在一片沙滩中寻找一颗特定的沙粒。
一位名叫 Muhammad Shaheer Bin Junaid 的研究人员开发了一种解决此问题的新方法。他创建了一个名为 Kestrel 的工具,即使在所有常规线索都被移除的情况下,该工具也能识别出这些存在于经过“剥离”(stripped)处理的软件中的新型量子安全锁。该方法依赖于一个简单而强大的观察结果:虽然代码的名称可以被抹除,但代码运行所需的原始数字却无法被抹除。这些基于被称为“格”(lattice)之结构的全新加密系统,必须使用一组固定的预计算数字来进行计算。这些数字就像是一个永久的指纹。无论软件经过多少优化、压缩或重命名,这些特定的数字都必须保留在文件中,程序才能正常运行。如果这些数字缺失,程序将无法工作。Kestrel 会扫描程序的原始数据,寻找这些特定的数字模式。它并不关心程序所使用的函数或库的名称,它只关心这些本质数学常量的存在。
研究人员在各种软件上测试了这种方法,包括使用不同工具构建并经过各类标准处理(这些处理会使分析变得更加困难)的程序。他们发现该工具表现完美。在涉及 128 个不同版本软件的测试中,即使程序已被剥离所有名称并以复杂方式链接在一起,Kestrel 依然识别出了其中的新型加密算法。至关重要的是,该工具没有出现任何差错。当研究人员扫描来自标准计算机系统的 6,000 多个真实世界程序时,该工具没有产生任何误报。它没有将普通软件误认为是新的加密系统。这种准确度对于数字取证至关重要,因为专家在法律场合提交证据前,必须对所发现的内容有绝对的把握。
或许最令人惊讶的发现出现在该工具应用于实时计算机系统时。扫描显示,有十二个不同的程序包含了这些新型量子安全锁,但此前无人知晓。其中包括管理安全登录网络连接的软件以及运行容器化应用的系统。在许多情况下,由于编程语言本身的原因,新型加密技术自动进入了这些程序,而程序开发者甚至并未意识到这一点。这一发现凸显了当前安全实践中的一个重大缺口:组织可能认为自己使用的是旧的、脆弱的系统,或者可能认为自己已经完成了升级,但如果没有一种方法来检查实际的代码,他们就无法确定。Kestrel 提供了这种确定性。它可以区分一个程序是真正使用了新锁,还是仅仅声称使用了新锁。在一次测试中,一个声称拥有量子安全保护的程序,该工具却未发现任何证据,从而正确地识别了该声明为虚假。
该工具还在取证场景中证明了其价值,模拟了从损坏或删除的文件中恢复数据的过程。当一个文件被删除时,操作系统通常会将该空间标记为可用于新数据,但旧数据在被覆盖之前仍会留在磁盘上。标准的恢复工具尝试重建文件结构,但如果文件头损坏,这种尝试往往会失败。然而,由于 Kestrel 寻找的是数据内部的特定数字而非文件结构,它能够在磁盘镜像的原始、无序的空间中找到那个加密指纹。它成功识别出了一个其他工具无法恢复的文件中所存在的算法。这种能力意味着,调查人员即使在原始文件丢失或损坏的情况下,也能确认特定加密方法的使用情况。
研究还明确了该工具的局限性。它旨在寻找那些依赖固定数字表的特定类型的新锁。它无法找到其他不使用这种方法的类型的新锁,也无法找到那些在每次运行时动态计算这些数字而非存储它们的程序。然而,研究人员指出,目前没有任何已知的软件使用这种“即时计算”的方法,因为这种方式效率低下且没有必要。该工具是为当今软件实际制造和分发的方式而设计的。通过专注于代码运行所必需的不可变数字,Kestrel 提供了一种验证新安全系统存在性的可靠方式。它让隐形变为可见,让审计员和调查人员能够看清程序内部的真实情况,确保向量子安全未来的过渡是建立在事实而非假设之上的。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。