SleepWalk:利用上下文切换与残余功耗实现物理侧信道攻击
摘要
操作系统利用上下文切换在不同应用程序间切换执行上下文。该过程涉及保存和恢复多个寄存器状态,并执行流水线刷新以清除预取指令,导致瞬时功耗显著高于常规程序执行。本文提出一种物理功耗侧信道泄漏源,利用系统内核内置睡眠函数触发上下文切换时观测到的功耗尖峰。我们发现该功耗尖峰不仅与上下文切换期间的功耗直接相关,还与先前执行程序的残余功耗存在关联。值得注意的是,先前工作负载残余功耗特征的持久性,使得该侧信道能够超越传统上下文切换期间寄存器数据提取的范围。与需要分析完整功耗轨迹、应用复杂预处理或依赖外部同步触发的传统方法不同,这项新技术仅需利用单个功耗尖峰的幅值,极大简化了攻击流程。我们开发了功耗模型以验证利用睡眠诱导功耗尖峰实施端到端侧信道攻击的可行性。实验评估表明,我们的框架能够成功恢复Broadcom BCM2711平台上AES和SIKE实现的加密密钥。
关键技术要点
- 上下文切换功耗特征:操作系统上下文切换过程会产生显著高于常规执行的瞬时功耗尖峰
- 残余功耗关联性:功耗尖峰幅度同时反映上下文切换功耗和先前程序的残余功耗
- 简化攻击流程:仅需分析单个功耗尖峰幅值,无需完整功耗轨迹或复杂预处理
- 实际攻击验证:在Broadcom BCM2711硬件平台上成功实现AES和SIKE算法的密钥恢复
实验与验证
通过构建端到端攻击框架,研究团队在真实硬件环境(Broadcom BCM2711)中验证了SleepWalk攻击的有效性,证明了该技术对现代加密算法(包括AES和后量子密码SIKE)的实际威胁。