summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2019-05-09 11:50:11 +0800
committerIru Cai <mytbk920423@gmail.com>2019-05-09 11:50:11 +0800
commit18219bdc08b178985a82060472510b916d7b0bc6 (patch)
tree074008b71e7c8e7c8d56f83e56b2a47476f9818c
parent33eed330c57290e7834702e1d719538640e4bea9 (diff)
downloaddissertation-18219bdc08b178985a82060472510b916d7b0bc6.tar.xz
upd
-rw-r--r--chap/chap2.tex21
-rw-r--r--thesis.tex2
2 files changed, 21 insertions, 2 deletions
diff --git a/chap/chap2.tex b/chap/chap2.tex
index 0dd4296..ae6ea92 100644
--- a/chap/chap2.tex
+++ b/chap/chap2.tex
@@ -15,6 +15,9 @@ Diffie-Hellman,RSA 等密码的私钥。\supercite{TimingAttack} 这是最早
\supercite{MOP2010}、电磁辐射\supercite{EMpower}、温度
\supercite{hutter}、噪声\supercite{acoustic}等。
+侧信道攻击的一个用途是用于构造隐蔽信道(covert channel)。隐蔽信道是指
+在系统安全策略定义之下,不被允许传输数据的双方,用于传输数据的信道。
+
现代计算机系统采用多种优化手段,优化可以作用于处理的数据的值、数据的位
置、数据存放位置的访问频率等,攻击者可以通过这些优化产生的效果,推断出
计算机系统处理的秘密数据的值。基于软件的微架构侧信道攻击
@@ -55,6 +58,22 @@ Meltdown 型攻击利用的是处理器异常产生的瞬时指令,这些指
\subsubsection{Meltdown}
+为了将不同的进程相互隔离,处理器支持虚拟地址空间,它将虚拟地址翻译为物
+理地址。虚拟地址空间将内存划分为一系列的页,系统通过多级页表将虚拟页翻
+译为物理页。页表是一个多级的结构,存放虚拟页到物理页的映射,同时,它还
+保存了每个页的保护属性,用于处理器进行权限检查,例如可读、可写、可执行、
+用户可读等。操作系统中每一个运行中的进程有一个对应的页表,页表所在的位
+置存放在处理器中的一个特定寄存器中,在上下文切换时,操作系统会更新这个
+寄存器,从而切换到处理器的进程可以使用这个进程对应的页表。利用这个机制,
+每个进程的虚拟地址空间映射到不同的物理区域,每个进程只能使用自己地址空
+间中的数据,从而达到进程间隔离的效果。
+
+每个地址空间都可以分为用户地址空间和内核地址空间。正在运行的进程可以访
+问用户地址空间,而内核地址空间只有进入内核态后可以访问,操作系统通过在
+页表中设置内核地址空间的页为用户不可访问,来实现这个特性。内核地址空间
+除了包含内核所要使用的数据外,通常还保存了整个物理内存的映射、文件缓存
+等内容。
+
操作系统将内核地址空间映射至每个用户进程的地址空间中。处理器执行访存指
令时,在将虚拟地址翻译为物理地址的时候,检查地址对应的权限位,判断用户
是否可访问该地址。Meltdown攻击中,攻击者让处理器从用户不可访问的内核地
@@ -83,7 +102,7 @@ mov rbx, qword [rbx + rax] ; 访问探测数组
\subsubsection{Foreshadow}
Foreshadow\supercite{foreshadow} 是一种可以读取 Intel SGX enclave 中秘
-密数据的Meltdown 型攻击。如果对 SGX 使用 Meltdown 攻击,攻击者读取未授
+密数据的 Meltdown 型攻击。如果对 SGX 使用 Meltdown 攻击,攻击者读取未授
权的 enclave 内存,不会产生异常,而是读出 abort page 值 -1. 但是 abort
page 只在页权限检查通过后发生,攻击者可以将该页 present 位清除,即将该
页设为不存在,此时处理器便会产生异常,但由于一级缓存使用虚拟地址索引,
diff --git a/thesis.tex b/thesis.tex
index 5d58b50..01d36c2 100644
--- a/thesis.tex
+++ b/thesis.tex
@@ -34,7 +34,7 @@
% 设定文档的基本信息。
\pkuthssinfo{
cthesisname = {硕士研究生学位论文}, ethesisname = {Master Thesis},
- ctitle = {一种可抵抗推测式执行相关的侧信道攻击的微处理器的设计与实现}, etitle = {},
+ ctitle = {针对推测式执行侧信道攻击的微处理器的优化设计}, etitle = {},
cauthor = {蔡思培},
eauthor = {Cai Sipei},
studentid = {1601214426},