中文

防止你的错误泄露你的秘密:针对Pigeonhole Attacks的防御

密码学与安全 2016-01-13 v2

摘要

Intel SGX等新硬件原语在存在不信任或受损操作系统时保护用户级进程。此类“飞地执行”系统易受若干侧信道攻击,其中之一是页错误信道。在本文中,我们展示页错误侧信道具有足够的信道容量,可从OpenSSL和Libgcrypt中密码例程的商用实现提取加密密钥位——在许多案例研究中平均泄露27%且高达100%的秘密位。为缓解此问题,我们提出一种仅软件防御,通过确定化程序的内存访问行为来掩盖页错误模式。我们展示此类技术可构建入编译器,并为足以处理我们所研究密码例程的C语言子集实现之。该防御在通用实现时开销可高达4000倍,但借助开发者辅助的编译器优化,在我们的案例研究中开销降至至多29.22%。最后,我们讨论硬件辅助防御的范围,并展示一个在硬件改变支持下可将开销降至6.77%的解决方案。

关键词

引用

@article{arxiv.1506.04832,
  title  = {Preventing Your Faults From Telling Your Secrets: Defenses Against Pigeonhole Attacks},
  author = {Shweta Shinde and Zheng Leong Chua and Viswesh Narayanan and Prateek Saxena},
  journal= {arXiv preprint arXiv:1506.04832},
  year   = {2016}
}