我一直在阅读关于缓存端通道攻击的文章,"Flush+Reload“方法出现了相当大的数量。在提出我的问题之前,这是我对Flush+reload技术的理解。
据我所知,如果两个用户(Alice,Bob)运行同一个程序,典型的OS将创建页面表的副本,这样程序就不会加载两次。这些都是只读的,所以一切都是“好的”。如果攻击者Bob能够确定共享内存的哪些缓存行在一段时间内位于L3缓存中,那么他可能会确定Alice的进程会超时访问哪些缓存行。这可以通过清除缓存和计时读取缓存所需的时间来完成。非常快=爱丽丝正在访问这段内存。艾丽斯没有访问这段内存。鲍勃继续做这个加班费,以开发一个‘基线’的类型。希望我的大部分理解是正确的。
我已经阅读了如何将其用于具有用户输入的程序。Bob使用许多输入对自己执行攻击,并根据刷新缓存来计算时间。然后,他对Alice进行攻击,基本上比较结果来区分输入(高级别,但这不是我的问题)。
我的大部分理解来自这里。
我的问题是,在用户输入的上下文中,这种攻击与暴力攻击或甚至是定时攻击有什么不同?
发布于 2019-07-06 16:55:45
侧通道攻击通常不会留下任何入侵痕迹。受攻击的程序将在没有任何副作用的情况下运行。通过暴力攻击,攻击者会多次调用受攻击的程序。被攻击的程序可以采取反措施来检查请求的频率。蛮力就是尝试每一个可能的密钥来解密密码文本。侧通道攻击是通过测量电/电磁/高速缓存访问特性来检测/嗅探密钥。对于RSA加密,如果采用平方和乘的方法,则可以通过检查设备的当前使用情况来确定密钥,因为每一步都需要不同的功率。
https://security.stackexchange.com/questions/179801
复制相似问题