[论文解读] TrustBase: An Architecture to Repair and Strengthen Certificate-based Authentication
TrustBase 是一种内核级架构,通过在套接字层与传输层之间拦截流量,对所有 TLS 应用程序强制执行标准化、全操作系统范围的证书验证。它以透明方式应用可配置的身份验证策略,使系统管理员能够以极低的性能开销和广泛的操作系统兼容性,强制实施最佳实践(如证书吊销检查和 STARTTLS 强制启用)。
We describe TrustBase, an architecture that provides certificate-based authentication as an operating system service. TrustBase enforces best practices for certificate validation for all applications and transparently enables existing applications to be strengthened against failures of the CA system. The TrustBase system allows simple deployment of authentication systems that harden the CA system. This enables system administrators, for example, to require certificate revocation checks on all TLS connections, or require STARTTLS for email servers that support it. TrustBase is the first system that is able to secure all TLS traffic, using an approach compatible with all operating systems. We design and evaluate a prototype implementation of TrustBase on Linux, evaluate its security, and demonstrate that it has negligible overhead and universal compatibility with applications. To demonstrate the utility of TrustBase, we have developed six authentication services that strengthen certificate validation for all applications.
研究动机与目标
- 解决因开发人员错误或配置不当导致的应用程序中证书验证普遍失败的问题。
- 缓解证书颁发机构(CA)体系中的漏洞,例如 CA 被 compromise 或错误签发,这些漏洞可能导致中间人攻击。
- 在不修改应用程序的前提下,实现对增强身份验证机制(如证书固定、证书透明度检查)的简单、集中式部署。
- 为系统管理员提供对整个系统中证书验证策略的细粒度控制,确保一致的安全策略执行。
- 克服现有解决方案(如 CertShim)的局限性,通过在内核级别运行,实现更强的隔离性,并对本地权限提升攻击具有更强的抵抗力。
提出的方法
- 使用可加载内核模块,在套接字层与传输层之间以内核级别拦截 TLS 流量。
- 使用一组可配置的身份验证服务对服务器证书进行验证,包括吊销检查、DANE、证书透明度(CT)和公证验证。
- 采用特权策略引擎和受保护的 Netlink 通信机制,以强制执行策略并抵御非特权用户的篡改。
- 采用基于插件的架构,并提供公共 API,以便以最少的代码更改集成新的身份验证服务。
- 通过仅与高级系统调用和 TLS 协议标准交互,保持与多种 TLS 库(如 BoringSSL、libNSS)的兼容性。
- 通过分析连接模式并检测未提供 STARTTLS 的主机,实现对机会性 STARTTLS 的强制执行。
实验结果
研究问题
- RQ1如何在不修改应用程序代码的前提下,确保所有使用 TLS 的应用程序中证书验证的一致性?
- RQ2何种架构方法能够有效防范本地攻击者试图绕过证书验证的行为?
- RQ3能否构建一个全系统范围的证书验证服务,实现极低性能开销和广泛的操作系统兼容性?
- RQ4如何在现有应用程序中大规模部署新兴的身份验证机制(如证书固定、CT、DANE)?
- RQ5内核级拦截层在多大程度上能提升现有 TLS 部署的安全性?
主要发现
- TrustBase 在内核级别成功拦截并验证所有 TLS 连接,确保所有应用程序中证书验证策略的一致性执行。
- 在 Linux 上的原型实现表明,性能开销可忽略不计,对连接延迟和吞吐量的影响极小。
- TrustBase 能够在所有应用程序中强制执行关键安全控制措施,如证书吊销检查和 STARTTLS 强制执行,无论其底层使用何种 TLS 库。
- 由于其内核级别、特权的策略引擎和受保护的通信通道,系统对本地攻击(包括 LD_PRELOAD 操纵和进程创建攻击)具有强韧性。
- 插件架构支持新身份验证服务的快速开发与部署,集成新验证逻辑所需的代码改动极少。
- TrustBase 通过仅依赖标准系统调用和 TLS 协议行为,避免对特定安全库内部机制的依赖,从而实现广泛的兼容性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。