-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.tex
347 lines (255 loc) · 14.2 KB
/
main.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% SUTD Masters/Doctoral Thesis
% LaTeX Template
% Version 1.0 (29/08/16)
%
% Adapted to SUTD requirements by Martin Ochoa
%
% This template is based on a template downloaded from:
% http://www.LaTeXTemplates.com
%
% Version 2.x major modifications by:
% Vel ([email protected])
%
% which in turn was based on a template by:
% Steve Gunn (http://users.ecs.soton.ac.uk/srg/softwaretools/document/templates/)
% Sunil Patel (http://www.sunilpatel.co.uk/thesis-template/)
%
%
% Template license:
% CC BY-NC-SA 3.0 (http://creativecommons.org/licenses/by-nc-sa/3.0/)
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%----------------------------------------------------------------------------------------
% PACKAGES AND OTHER DOCUMENT CONFIGURATIONS
%----------------------------------------------------------------------------------------
\documentclass[
11pt, % The default document font size, options: 10pt, 11pt, 12pt
%oneside, % Two side (alternating margins) for binding by default, uncomment to switch to one side
english, % ngerman for German
singlespacing, % Single line spacing, alternatives: onehalfspacing or doublespacing
%draft, % Uncomment to enable draft mode (no pictures, no links, overfull hboxes indicated)
%nolistspacing, % If the document is onehalfspacing or doublespacing, uncomment this to set spacing in lists to single
%liststotoc, % Uncomment to add the list of figures/tables/etc to the table of contents
%toctotoc, % Uncomment to add the main table of contents to the table of contents
%parskip, % Uncomment to add space between paragraphs
%nohyperref, % Uncomment to not load the hyperref package
headsepline, % Uncomment to get a line under the header
]{MastersDoctoralThesis} % The class file specifying the document structure
\usepackage[utf8]{inputenc} % Required for inputting international characters
\usepackage[T1]{fontenc} % Output font encoding for international characters
\usepackage{palatino} % Use the Palatino font by default
\usepackage[backend=bibtex,style=numeric,natbib=true]{biblatex} % User the bibtex backend with the authoryear citation style (which resembles APA)
\addbibresource{biblio.bib} % The filename of the bibliography
\usepackage{minted} % code listing
\counterwithin{listing}{chapter} % make listing caption per chapter
\usepackage{multirow}
\usepackage[table]{xcolor}
\definecolor{mGreen}{rgb}{0,0.6,0}
\definecolor{mGray}{rgb}{0.5,0.5,0.5}
\definecolor{mPurple}{rgb}{0.58,0,0.82}
\definecolor{backgroundColour}{rgb}{0.95,0.95,0.92}
\newcommand{\ie}{\textit{i.e.,} }
\newcommand{\eg}{\textit{e.g.,} }
\newcommand{\wrt}{\textit{w.r.t.\ }}
\usepackage[autostyle=true]{csquotes} % Required to generate language-dependent
%quotes in the bibliography
\usepackage[]{algorithm2e}
\newcommand{\todobox}[3]{%
\colorbox{#1}{\textcolor{white}{\sffamily\bfseries\scriptsize #2}}%
~\textcolor{blue}{#3} %
\textcolor{#1}{$\triangleleft$}%
}
\definecolor{pink-shocking}{rgb}{0.99, 0.06, 0.75}
\definecolor{green-shocking}{rgb}{0.0, 1, 0.0}
\newcommand{\ft}[1]{\todobox{pink-shocking}{Flavio}{#1}}
\newcommand{\xt}[1]{\todobox{red}{Jon}{#1}}
\usepackage{tocbibind}
\usepackage{csvsimple}
\usepackage{afterpage}
\usepackage{longtable}
\usepackage{amsmath}
%----------------------------------------------------------------------------------------
% MARGIN SETTINGS
%----------------------------------------------------------------------------------------
\geometry{
paper=a4paper, % Change to letterpaper for US letter
inner=2.54cm, % Inner margin
outer=2.8cm, % Outer margin
bindingoffset=1cm, % Binding offset
top=2.5cm, % Top margin
bottom=2.5cm, % Bottom margin
%showframe,% show how the type block is set on the page
}
%----------------------------------------------------------------------------------------
% THESIS INFORMATION
%----------------------------------------------------------------------------------------
%\thesistitle{Scalable Runtime Remote Attestation Offline Program Analysis
%using LLVM}
\thesistitle{Study of Models for\\Runtime Remote Attestations}
% Your thesis title, this is used in the title and abstract, print it elsewhere
%with \ttitle
\supervisor{\textsc{Flavio Toffalini} and Prof. \textsc{Jianying Zhou}} % Your supervisor's name, this is used in the title page, print it elsewhere with \supname
\examiner{} % Your examiner's name, this is not currently used anywhere in the template, print it elsewhere with \examname
\degree{Master of Science in Security by Design} % Your degree name, this is used in the title page and abstract, print it elsewhere with \degreename
\author{Jon Kartago \textsc{Lamida}} % Your name, this is used in the title page and abstract, print it elsewhere with \authorname
\addresses{} % Your address, this is not currently used anywhere in the template, print it elsewhere with \addressname
\university {SUTD}
\keywords{} % Keywords for your thesis, this is not currently used anywhere in the template, print it elsewhere with \keywordnames
\pillar{ISTD (MSSD)} % Pillar
\hypersetup{pdftitle=\ttitle} % Set the PDF's title to your title
\hypersetup{pdfauthor=\authorname} % Set the PDF's author to your name
\hypersetup{pdfkeywords=\keywordnames} % Set the PDF's keywords to your keywords
\begin{document}
\frontmatter % Use roman page numbering style (i, ii, iii, iv...) for the pre-content pages
\pagestyle{plain} % Default to the plain heading style until the thesis style is called for the body content
%----------------------------------------------------------------------------------------
% TITLE PAGE
%----------------------------------------------------------------------------------------
\begin{titlepage}
\begin{center}
\begin{figure}
\centering
\includegraphics[width=0.5\textwidth]{Figures/SUTD}
\end{figure}
\hfill\break\\[2.3cm]
{\huge \bfseries \ttitle}\\[3cm] % Thesis title
Submitted by\\[1cm]
\authorname % Author name - remove the \href bracket to remove the link
\vspace{4em}
Thesis Advisor\\[1cm]
\supname % Supervisor name - remove the \href bracket to remove the link
\vspace{4em}
\pillarname\\[1.5cm] % Research group name and department name
\large{A thesis submitted to the Singapore University of Technology and Design in fulfillment of the requirement for the degree of \degreename, \pillarname}\\[1cm] % University requirement text
{\large \today}\\[4cm] % Date
%\includegraphics{Logo} % University/department logo - uncomment to place it
\vfill
\end{center}
\end{titlepage}
%----------------------------------------------------------------------------------------
% DECLARATION PAGE
%----------------------------------------------------------------------------------------
\begin{declaration}
\addchaptertocentry{\authorshipname}
\noindent I, \authorname, declare that this thesis titled, \enquote{\ttitle} and the work presented in it are my own. I confirm that:
\begin{itemize}
\item This work was done wholly or mainly while in candidature for a research degree at this University.
\item Where any part of this thesis has previously been submitted for a degree or any other qualification at this University or any other institution, this has been clearly stated.
\item Where I have consulted the published work of others, this is always clearly attributed.
\item Where I have quoted from the work of others, the source is always given. With the exception of such quotations, this thesis is entirely my own work.
\item I have acknowledged all main sources of help.
\item Where the thesis is based on work done by myself jointly with others, I have made clear exactly what was done by others and what I have contributed myself.\\
\end{itemize}
\noindent Signed:\\
\rule[0.5em]{25em}{0.5pt} % This prints a line for the signature
\noindent Date:\\
\rule[0.5em]{25em}{0.5pt} % This prints a line to write the date
\end{declaration}
\cleardoublepage
%----------------------------------------------------------------------------------------
% QUOTATION PAGE
%----------------------------------------------------------------------------------------
\vspace*{0.2\textheight}
\noindent\enquote{\itshape By (the Token of) Time (through the ages), Verily Man is in loss, Except such as have Faith, and do righteous deeds, and (join together) in the mutual teaching of Truth, and of Patience and Constancy.}\bigbreak
\hfill The Quran, Chapter 103: The Epoch.
%----------------------------------------------------------------------------------------
% ABSTRACT PAGE
%----------------------------------------------------------------------------------------
\begin{abstract}
\addchaptertocentry{\abstractname} % Add the abstract to the table of contents
Runtime remote attestations allow one to detect control-flow attacks that can
alter the intended behavior of a program. The Scalable Runtime Remote
Attestation for Complex Systems (ScaRR) introduced runtime remote attestation on
complex systems~\cite{toffaliniScaRRScalableRuntime2019}. Before that, runtime
remote attestation was only feasible for embedded systems.
This thesis presents the implementation of ScaRR offline measurement using LLVM
and analyzes the performance of the computation and verify the scalability of
the algorithm. We discuss related runtime remote attestation schemes with their
features and limitations in the beginning part of the thesis. We also present
relevant background on the control-flow attack, remote attestation, and LLVM. We
analyze ScaRR control-flow model before jump into the implementation and testing
the model.
At the end of this research, we show that the ScaRR control-flow model has
linear time and space complexity. This complexity is significantly better than
most runtime remote attestations that require exponential complexity for their
model representation and verification. ScaRR is scalable and usable for large
program remote attestation.
\end{abstract}
%----------------------------------------------------------------------------------------
% ACKNOWLEDGEMENTS
%----------------------------------------------------------------------------------------
\begin{acknowledgements}
\addchaptertocentry{\acknowledgementname} % Add the acknowledgements to the table of contents
I would like to thank my advisors Flavio Toffalini and Prof. Jianying Zhou for
their guidance during this research and the thesis writing. We started the work
almost nine months ago. From then, I have learned so many new things that excite
me a lot. First, I learned the scientific research process. Second, I have
learned many new areas of interest and subjects related to the thesis topic,
from LLVM, modern C++, compiler, computer architecture, and software security.
All of the learning will become important for my future professional careers and
probably a trigger for another journey in graduate school.
This thesis also would not have been possible without the support of my family.
I have taken many hours of family time from my wife and my daughter for me to
finish this project. My wife inspires me to go to graduate school. Now I want to
inspire my children on long-life learning too. Finally, I also want dedicate
this project to my parents and my siblings. I will not be here now if not
because of them.
\end{acknowledgements}
%----------------------------------------------------------------------------------------
% LIST OF CONTENTS/FIGURES/TABLES PAGES
%----------------------------------------------------------------------------------------
\tableofcontents % Prints the main table of contents
\listoffigures % Prints the list of figures
\listoftables % Prints the list of tables
\listoflistings % Prints List of Codes
%----------------------------------------------------------------------------------------
% ABBREVIATIONS. Enable this if required.
%----------------------------------------------------------------------------------------
% \begin{abbreviations}{ll} % Include a list of abbreviations (a table of two columns)
% \textbf{LAH} & \textbf{L}ist \textbf{A}bbreviations \textbf{H}ere\\
% \textbf{WSF} & \textbf{W}hat (it) \textbf{S}tands \textbf{F}or\\
% \end{abbreviations}
%----------------------------------------------------------------------------------------
% SYMBOLS. Enable this if required
%----------------------------------------------------------------------------------------
% \begin{symbols}{lll} % Include a list of Symbols (a three column table)
% $a$ & distance & \si{\meter} \\
% $P$ & power & \si{\watt} (\si{\joule\per\second}) \\
% %Symbol & Name & Unit \\
% \addlinespace % Gap to separate the Roman symbols from the Greek
% $\omega$ & angular frequency & \si{\radian} \\
% \end{symbols}
%----------------------------------------------------------------------------------------
% DEDICATION
%----------------------------------------------------------------------------------------
\dedicatory{Dedicated to my parents, my lovely wife, my daughter, and my soon to born son.}
%----------------------------------------------------------------------------------------
% THESIS CONTENT - CHAPTERS
%----------------------------------------------------------------------------------------
\mainmatter % Begin numeric (1,2,3...) page numbering
\pagestyle{thesis} % Return the page headers back to the "thesis" style
% Include the chapters of the thesis as separate files from the Chapters folder
% Uncomment the lines as you write the chapters
\include{Chapters/Chapter1}
\include{Chapters/Chapter2}
\include{Chapters/Chapter3}
\include{Chapters/Chapter4}
\include{Chapters/Chapter5}
\include{Chapters/Chapter6}
\include{Chapters/Chapter7}
%----------------------------------------------------------------------------------------
% THESIS CONTENT - APPENDICES
%----------------------------------------------------------------------------------------
\appendix % Cue to tell LaTeX that the following "chapters" are Appendices
% Include the appendices of the thesis as separate files from the Appendices folder
% Uncomment the lines as you write the Appendices
%\include{Appendices/AppendixA}
%\include{Appendices/AppendixB}
%\include{Appendices/AppendixC}
%----------------------------------------------------------------------------------------
% BIBLIOGRAPHY
%----------------------------------------------------------------------------------------
\printbibliography[heading=bibintoc]
%----------------------------------------------------------------------------------------
\end{document}