summaryrefslogtreecommitdiff
path: root/chap
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2019-04-24 13:51:32 +0800
committerIru Cai <mytbk920423@gmail.com>2019-04-24 13:51:32 +0800
commit3bb2c6b53d57ff0ed8c9e701943a326049060208 (patch)
tree5cfcd9943872953f98e94a74b7e86196c7ddb7cf /chap
parent69d5aab97e3097947a31bf7772a4fa3bc54272db (diff)
downloaddissertation-3bb2c6b53d57ff0ed8c9e701943a326049060208.tar.xz
add some content
Diffstat (limited to 'chap')
-rw-r--r--chap/chap2.tex6
-rw-r--r--chap/chap3.tex20
2 files changed, 26 insertions, 0 deletions
diff --git a/chap/chap2.tex b/chap/chap2.tex
index 6546e53..8283046 100644
--- a/chap/chap2.tex
+++ b/chap/chap2.tex
@@ -9,6 +9,12 @@
\subsection{Meltdown型攻击}
+\subsubsection{Meltdown}
+
+\subsubsection{Foreshadow}
+
+\subsubsection{LazyFP}
+
\subsection{Spectre型攻击}
% vim:ts=4:sw=4
diff --git a/chap/chap3.tex b/chap/chap3.tex
index 781150a..b0cede8 100644
--- a/chap/chap3.tex
+++ b/chap/chap3.tex
@@ -3,4 +3,24 @@
\chapter{Meltdown和Spectre攻击的防御方案分析}
+\section{Meltdown型攻击的防御}
+
+Meltdown型攻击利用了瞬时指令可以读取体系结构层次上不可访问的数据,并且用此数据做计算。因此一种防御方式是使体系结构层次上不可访问的数据,在微架构层次上仍然不可访问。
+
+KAISER\cite{kaiser}是一种已经部署在Linux内核上的一种防御Meltdown攻击的方案。它的作用是在用户空间中去除内核空间的地址映射,使得用户空间的执行的指令无法访问内核空间的存储区域。
+
+防御Meltdown型攻击的第二种方法是阻止异常的产生。
+
+\section{Spectre型攻击的防御}
+
+Spectre型攻击的防御方案可以分为三类:阻止推测式执行、防止瞬时指令访问秘密数据、切断隐蔽信道或降低隐蔽信道的精度。
+
+\subsection{软件防御方案}
+
+为了防御Spectre v1,Intel和AMD建议在分支指令后插入lfence指令阻止推测式执行。由于lfence性能开销大,LLVM提出推测式装载指令加固(Speculative Load Hardening)技术,
+它的作用是在指令流中添加数据相关,使得装载指令使用的地址依赖于分支结果。
+
+
+\subsection{硬件防御方案}
+
% vim:ts=4:sw=4