Skip to main content
QUICK REVIEW

[论文解读] Software Distribution Transparency and Auditability

Benjamin Hof, Georg Carle|arXiv (Cornell University)|Nov 20, 2017
Advanced Malware Detection Techniques参考文献 5被引用 5
一句话总结

本文提出了一种基于APT的软件分发透明性与可审计性系统,通过Merkle树日志检测针对性后门,确保源代码可获取,验证可复现构建,并通过树根交叉日志防御等价性攻击。在两年内对3,000多个Debian更新的评估中,该系统识别出大量分发异常,证明了其实际可行性与强大的取证能力。

ABSTRACT

A large user base relies on software updates provided through package managers. This provides a unique lever for improving the security of the software update process. We propose a transparency system for software updates and implement it for a widely deployed Linux package manager, namely APT. Our system is capable of detecting targeted backdoors without producing overhead for maintainers. In addition, in our system, the availability of source code is ensured, the binding between source and binary code is verified using reproducible builds, and the maintainer responsible for distributing a specific package can be identified. We describe a novel "hidden version" attack against current software transparency systems and propose as well as integrate a suitable defense. To address equivocation attacks by the transparency log server, we introduce tree root cross logging, where the log's Merkle tree root is submitted into a separately operated log server. This significantly relaxes the inter-operator cooperation requirements compared to other systems. Our implementation is evaluated by replaying over 3000 updates of the Debian operating system over the course of two years, demonstrating its viability and identifying numerous irregularities.

研究动机与目标

  • 解决软件分发中的安全风险,特别是APT等包管理器中的针对性后门问题。
  • 通过可复现构建将源代码与二进制文件绑定,实现端到端的可审计性。
  • 通过树根交叉日志防御日志服务器的等价性攻击。
  • 在真实世界包更新中检测并发出分发异常的警报。
  • 提供一种实用且可部署的透明性系统,以增强对Linux发行版更新的信任。

提出的方法

  • 将所有包元数据和源代码记录在一个不可信的、仅追加的Merkle树日志中,以保证加密完整性。
  • 使用可复现构建技术,验证二进制文件能否从提交的源代码中确定性地重建。
  • 实现“隐藏版本”检测机制,防止攻击者选择性地分发被后门的包。
  • 通过将Merkle树根提交到另一个独立运营的日志服务器,实现树根交叉日志,防止日志服务器的等价性行为。
  • 使用监控器和审计员异步验证日志操作和构建的可复现性,避免发布延迟。
  • 将系统集成到Debian的APT分发流水线中,对真实世界更新进行端到端评估。

实验结果

研究问题

  • RQ1如何在不给维护者带来性能负担的前提下,实现在广泛部署的包管理器(如APT)中的软件分发透明性?
  • RQ2哪些攻击向量(如“隐藏版本”攻击)会破坏现有透明性系统,以及如何加以缓解?
  • RQ3在去中心化或不可信的日志基础设施中,如何防止日志等价性攻击?
  • RQ4在发行版中,对每个已安装的二进制文件,审计性和源代码可获取性能在多大程度上得到保障?
  • RQ5一个实用的透明性系统能否检测大规模软件分发中的真实世界异常?

主要发现

  • 在两年内对超过3,000个真实Debian更新的评估中,该系统成功检测到大量异常,包括缺失的源代码和错误的元数据。
  • “隐藏版本”攻击被识别为对现有透明性系统的新型威胁,而所提出的机制能有效防御此类攻击。
  • 树根交叉日志显著降低了不同操作者之间的信任需求,通过在独立日志服务器之间实现独立验证。
  • 该系统确保每个已安装的二进制文件都具备可验证、可审计的源代码,支持取证分析与责任追究。
  • 评估发现Debian的发布流程存在大量不规则性,表明亟需更强的自动化验证机制。
  • 系统在不阻塞发布流程的情况下运行,因为监控器异步验证可复现性,确保了在真实环境中的实际可部署性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。