BliMe Linter
密码学与安全
2024-06-24 v1
摘要
外包计算对客户敏感数据的保密性构成风险,因为他们必须信赖服务提供商不会不当处理此类数据。BliMe(盲化内存)是一组硬件扩展,通过基于硬件的污点跟踪来解决此问题,用以跟踪敏感客户数据并强制执行安全策略,以防止软件直接或通过副通道泄露此类数据。由于程序可通过在控制流或内存访问指令中使用此类数据时的时序通道和内存访问模式来泄露敏感数据,BliMe 禁止此类不安全操作,仅允许对敏感数据运行常数时间代码。问题是开发人员如何确认其代码在 BliMe 上会正确运行。虽然可以手动检查程序是否为常数时间,但此过程繁琐且容易出错。在本文中,我们介绍了 BliMe linter,一组构建在 SVF 之上的编译器扩展,用于分析 LLVM 字节码以识别可能的 BliMe 违规情况。我们对 BliMe linter 进行分析性和实证性评估,证明其是 sound 的。
引用
@article{arxiv.2406.15302,
title = {BliMe Linter},
author = {Hossam ElAtali and Xiaohe Duan and Hans Liljestrand and Meng Xu and N. Asokan},
journal= {arXiv preprint arXiv:2406.15302},
year = {2024}
}