首页> 外文期刊>International journal of parallel programming >MemJam: A False Dependency Attack Against Constant-Time Crypto Implementations
【24h】

MemJam: A False Dependency Attack Against Constant-Time Crypto Implementations

机译:MemJam:针对恒定时间加密实现的虚假依赖攻击

获取原文
获取原文并翻译 | 示例
           

摘要

Cache attacks exploit memory access patterns of cryptographic implementations. Constant-time implementation techniques have become an indispensable tool in fighting cache timing attacks. These techniques engineer the memory accesses of cryptographic operations to follow a uniform key independent pattern. However, the constant-time behavior is dependent on the underlying architecture, which can be highly complex and often incorporates unpublished features. The CacheBleed attack targets cache bank conflicts and thereby invalidates the assumption that microarchitectural side-channel adversaries can only observe memory with cache line granularity. In this work, we propose MemJam, which utilizes 4K Aliasing to establish a side-channel attack that exploits false dependency of memory read-after-write events and provides a high quality intra cache line timing channel. As a proof of concept, we demonstrate the first key recovery attacks on constant-time implementations of all symmetric block ciphers supported in the current intel integrated performance primitives (Intel IPP) cryptographic library: triple DES, AES and SM4. Further, we demonstrate the first intra cache level timing attack on SGX by reproducing the AES key recovery results on an enclave that performs encryption using the aforementioned constant-time implementation of AES. Our results show that we can not only use this side channel to efficiently attack memory dependent cryptographic operations but also to bypass proposed protections. Compared to CacheBleed, which is limited to older processor generations, MemJamis the first intra cache level attack applicable to all major Intel processors including the latest generations and also applies to the SGX extension.
机译:缓存攻击利用了加密实现的内存访问模式。恒定时间实现技术已成为对抗缓存定时攻击的必不可少的工具。这些技术设计了密码操作的内存访问,以遵循统一的密钥独立模式。但是,恒定时间行为取决于基础体系结构,该体系结构可能非常复杂,并且经常包含未发布的功能。 CacheBleed攻击针对的是缓存库冲突,因此使微体系结构侧通道对手只能观察具有缓存行粒度的内存的假设无效。在这项工作中,我们提出了MemJam,它利用4K别名来建立侧信道攻击,该攻击利用了存储器对写后读取事件的错误依赖性,并提供了高质量的帧内高速缓存行定时​​通道。作为概念验证,我们演示了对当前intel集成性能原语(Intel IPP)密码库(三重DES,AES和SM4)支持的所有对称块密码的恒定时间实现的首次密钥恢复攻击。此外,我们通过在飞地上再现AES密钥恢复结果来演示对SGX的首次内部缓存级别定时攻击,该飞地使用上述AES的恒定时间实现方式执行加密。我们的结果表明,我们不仅可以使用此辅助通道来有效地攻击依赖于存储器的加密操作,而且还可以绕过建议的保护措施。与仅限于较早处理器版本的CacheBleed相比,MemJamis是适用于所有主要Intel处理器(包括最新一代)的首次内部高速缓存级别攻击,并且也适用于SGX扩展。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号