Sync+Sync:基于fsync与存储的隐蔽信道
密码学与安全
2024-06-21 v2 操作系统
摘要
科学家们已利用CPU缓存和主存构建了多种用于秘密信息传输的隐蔽信道。在本文中,我们转向存储层次结构中更低的层级,即持久化存储。大多数程序以文件形式存储中间或最终结果,其中一些调用fsync以与存储设备同步持久化文件以实现有序持久化。我们的定量研究表明,若一个程序正在并发调用fsync,另一程序对fsync调用的响应时间会显著变长,尽管它们不共享任何数据。我们进一步发现,由于共享软件结构(如Ext4的日志)和硬件资源(如磁盘的I/O调度队列),并发fsync调用在存储栈的多个层级发生争用。我们据此构建了一个名为Sync+Sync的隐蔽信道。Sync+Sync在使用普通固态硬盘时以约0.40%的错误率提供每秒20,000比特的传输带宽。Sync+Sync可在跨磁盘分区、跨文件系统、跨容器、跨虚拟机乃至跨磁盘驱动器的方式下进行,且程序间不共享数据。接下来,我们利用Sync+Sync发起侧信道攻击,并成功精确检测受害数据库的操作(如插入/更新和B树节点分裂)。我们还利用Sync+Sync通过检测和分析其fsync频率与刷新数据量,以高准确度区分应用程序和网站。这些攻击有助于支持进一步的细粒度信息泄露。
引用
@article{arxiv.2309.07657,
title = {Sync+Sync: A Covert Channel Built on fsync with Storage},
author = {Qisheng Jiang and Chundong Wang},
journal= {arXiv preprint arXiv:2309.07657},
year = {2024}
}
备注
A full version for the paper with the same title accepted by the 33rd USENIX Security Symposium (USENIX Security 2024)