summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2019-05-30 14:38:40 +0800
committerIru Cai <mytbk920423@gmail.com>2019-05-30 14:38:40 +0800
commitf5d33d88f89cadc946e974b1b8ac607012d11f98 (patch)
tree777c28489eaab8bfe3dc9c8dac55e50785bb1a3a
parentc49b9ff95bb834327da52a0589171ce828a719fb (diff)
downloaddissertation-f5d33d88f89cadc946e974b1b8ac607012d11f98.tar.xz
upd
-rw-r--r--chap/chap2.tex24
-rw-r--r--thesis.bib26
2 files changed, 38 insertions, 12 deletions
diff --git a/chap/chap2.tex b/chap/chap2.tex
index 29a357b..9d1c73b 100644
--- a/chap/chap2.tex
+++ b/chap/chap2.tex
@@ -29,11 +29,11 @@ Diffie-Hellman,RSA 等密码的私钥。\supercite{TimingAttack} 这是最早
是否曾经被访问过。缓存计时攻击的常见形式有:
\begin{enumerate}
-\item Evict+Time: 攻击者清除一个缓存组,然后对一个算法的运行进行计时,
+\item Evict+Time\supercite{cacheAttack}: 攻击者清除一个缓存组,然后对一个算法的运行进行计时,
检查它的运行时间是否受到影响
-\item Prime+Probe: 受害者运行一段程序后,攻击者访问缓存某一组的每一路,
+\item Prime+Probe\supercite{cacheAttack}: 受害者运行一段程序后,攻击者访问缓存某一组的每一路,
观察访问时间是否有变化
-\item Flush+Reload: 攻击者利用 x86 的 clflush 等指令清除一个共享内存地
+\item Flush+Reload\supercite{flushreload}: 攻击者利用 x86 的 clflush 等指令清除一个共享内存地
址对应的缓存行,在受害者运行一段程序后,攻击者重新读取该行对应的地址
的数据,通过测量访问时间推断受害者是否访问了这个共享的地址
\end{enumerate}
@@ -64,11 +64,11 @@ Meltdown 型攻击利用的是处理器异常产生的暂态指令,这些指
以同时运行多个应用程序,和多个用户的进程。
为了将不同的进程相互隔离,处理器为操作系统提供了虚拟地址空间机制,它将
-虚拟地址翻译为物理地址。虚拟地址空间将内存划分为一系列的页,系统通过多
-级页表将虚拟页翻译为物理页。页表是一个多级的结构,存放虚拟页到物理页的
-映射,同时,它还保存了每个页的保护属性,用于处理器进行权限检查,例如可
-读、可写、可执行、用户可读等。操作系统中每一个运行中的进程有一个对应的
-页表,页表所在的位置存放在处理器的一个特定的寄存器中,在上下文切换时,
+虚拟地址翻译为物理地址。虚拟地址空间将内存划分为一系列的页,系统通过查询
+页表将虚拟页翻译为物理页。页表是一个多级的结构,存放虚拟页到物理页的
+映射,同时,它还保存了每个页的保护属性,例如可
+读、可写、可执行、用户可读等,处理器用它们进行权限检查。操作系统中每一个运行中的进程有一个对应的
+页表,页表所在的物理内存地址存放在处理器的一个特定的寄存器中,在上下文切换时,
操作系统更新这个寄存器,切换至处理器上的新进程可以使用这个进程对应的页
表。利用这个机制,每个进程的虚拟地址空间映射到不同的物理内存区域,每个
进程只能使用自己地址空间中的数据,从而达到进程间隔离的效果。
@@ -103,10 +103,10 @@ Intel 处理器,也可能可用于其他厂商的处理器。
击者在隐蔽信道的接收端,找出这个临时寄存器的值。因此,在微体系结构层次,
即实际的硬件实现中,存在可利用的安全性问题。
-操作系统将内核地址空间映射至每个用户进程的地址空间中。处理器执行访存指
-令时,在将虚拟地址翻译为物理地址的时候,检查地址对应的权限位,判断用户
-空间的指令是否可访问该地址。在 Meltdown 攻击中,攻击者让处理器从用户不
-可访问的内核地址装载数据至寄存器,由于所有内核地址都可以翻译为合法的物
+处理器执行访存指
+令,将虚拟地址翻译为物理地址的时候,检查地址对应的权限位,判断用户
+空间的指令是否可访问该地址。在 Meltdown 攻击中,攻击者让处理器从用户程序不
+可访问的内核地址装载数据至寄存器,由于操作系统将内核地址空间映射至每个进程的地址空间中,因此所有内核地址都可以翻译为合法的物
理地址,处理器可以读取内核地址空间的数据,在产生异常前,攻击者构造的暂
态指令序列可以将读取到的数据通过隐蔽信道发送给攻击者。
diff --git a/thesis.bib b/thesis.bib
index 5dafd07..0809091 100644
--- a/thesis.bib
+++ b/thesis.bib
@@ -871,4 +871,30 @@ This thesis highlights two aspects of the BOOM design: its industry-competitive
type = {OL},
url = {https://mdsattacks.com/},
}
+
+@InProceedings{cacheAttack,
+ author="Osvik, Dag Arne
+ and Shamir, Adi
+ and Tromer, Eran",
+ editor="Pointcheval, David",
+ title="Cache Attacks and Countermeasures: The Case of AES",
+ booktitle="Topics in Cryptology -- CT-RSA 2006",
+ year="2006",
+ publisher="Springer Berlin Heidelberg",
+ address="Berlin, Heidelberg",
+ pages="1--20",
+ isbn="978-3-540-32648-9",
+ type={J}
+}
+
+@article{Yarom2013FlushReloadAH,
+ title={Flush+Reload: a High Resolution, Low Noise, L3 Cache Side-Channel Attack},
+ author={Yuval Yarom and Katrina E. Falkner},
+ journal={IACR Cryptology ePrint Archive},
+ year={2013},
+ volume={2013},
+ pages={448},
+ type={J}
+}
+
% vim:ts=4:sw=4