// 但是,由于Spectre的攻击不存在越权读取内存的情况,所以user mode的进程无法获得kernel mode进程的信息,只会导致进程间的内存泄漏。这个漏洞只能由各个应用和软件自行修复,不需要OS级的补救。【之前写的这一段是错的,更正如下】
Hardware.漏洞2:meltdown:Intel中招,AMD幸免。云厂商虚拟化被严重穿透,虚拟机可以获得host内存的访问权限,及高达503kb/s的系统内存下载速度。对云厂商是致命打击。可以用KAISER拯救。
We have empirically verified the vulnerability
of several Intel processors to Spectre attacks, including
Ivy Bridge, Haswell and Skylake based processors.
We have also verified the attack’s applicability
to AMD Ryzen CPUs. Finally, we have also successfully
mounted Spectre attacks on several Samsung and
Qualcomm processors (which use an ARM architecture)
found in popular mobile phones.
We also tried to reproduce the Meltdown bug on several奉劝某些人看完论文再来评论,谢谢
ARM and AMD CPUs. However, we did not manage
to successfully leak kernel memory with the attack described
in Section 5, neither on ARM nor on AMD. The
reasons for this can be manifold.
We evaluated Meltdown running in containers sharing a分几个player吧:
kernel, including Docker, LXC, and OpenVZ, and found
that the attack can be mounted without any restrictions.
Running Meltdown inside a container allows to leak information
not only from the underlying kernel, but also
from all other containers running on the same physical
host.
The commonality of most container solutions is that
every container uses the same kernel, i.e., the kernel is
shared among all containers. Thus, every container has
a valid mapping of the entire physical memory through
the direct-physical map of the shared kernel. Furthermore,
Meltdown cannot be blocked in containers, as it
uses only memory accesses. Especially with Intel TSX,
only unprivileged instructions are executed without even
trapping into the kernel.
Thus, the isolation of containers sharing a kernel can
be fully broken using Meltdown. This is especially critical
for cheaper hosting providers where users are not
separated through fully virtualized machines, but only
through containers. We verified that our attack works in
such a setup, by successfully leaking memory contents
from a container of a different user under our control.
Mov rax, [somekerneladdress]这样三条指令,理论上第一条load kernel address会interrupt
And rax, 1
Mov rbx,[rax+Someusermodeaddress]
| 欢迎光临 迅维网 (https://www.chinafix.com/) | Powered by Discuz! X3.4 |