侧信道攻击
Meltdown攻击
Meltdown1
叫做“熔断幽灵”。由于乱序执行导致的缓存数据偷取,可以表示为
- Meltdown依靠现代处理器的乱序执行副作用来读取内核任意位置的数据,此攻击与具体操作系统无关
一个简单的示例
- 即使抛出了异常导致
access
函数不会执行,由于乱序执行的原因,下方的大数组仍可能被访问到
- 攻击过程
- 执行瞬态指令
- 构建隐蔽通道
缓存攻击
- Spy进程利用冲突地址填满缓存(给目标进程留一个探查地址),然后等待目标进程访问该缓存
- 由于只留下了一个地址,Spy程序稍后访问此地址即可探查到该程序运行的信息
- 攻击者用预先准备的数据填充多个缓存组,目标进程访问缓存时,会更新相应区域的缓存数据
- 重新读取用于填充的数据,这些数据变化会在Probe阶段被抓到
- 攻击者先将特定位置的缓存数据驱逐(清空),目标进程访问缓存时,会更新相应区域的缓存数据
- 然后重载被驱逐的内存块,这些数据变化会在Reload阶段被抓到
海豚攻击(Dolphin Attack)2
- 麦克风一般使用薄膜,通过振动响应由声波引起的气压变化
- 利用超声频率生成目标音调,或利用已有话语录音重新剪接成目标语音,使用了调幅(AM)技术
光波注入音频控制系统3
- 用于攻击声控系统
从灯泡振动获取音声信息
Lamphone
传感器泄露PIN等信息4
Sensor Fusion
- 用陀螺仪和加速度计测量的输入十次0852键获得结果(模拟PIN输入)
-
Meltdown: Reading Kernel Memory from User Space, 2015 IEEE Symposium on Security and Privacy ↩
-
DolphinAttack: Inaudible Voice Commands, CCS '17: Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security ↩
-
Light Commands: Laser Based Audio Injection Attacks on Voice Controllable Systems,arXiv:2006.11946v1 [cs.CR] 22 Jun 2020 ↩
-
There Goes Your PIN :Exploiting Smartphone Sensor Fusion Under Single and Cross User Setting, ARES 2018 13th International Conference on Availability, Reliability and Security ↩