author | Christian Urban <christian dot urban at kcl dot ac dot uk> |
Tue, 23 Sep 2014 17:05:33 +0100 | |
changeset 173 | 9126c13a7d93 |
parent 169 | 2866fae8c1cf |
child 174 | e2180cead443 |
permissions | -rw-r--r-- |
167
d8657ff8cca1
typos
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
160
diff
changeset
|
1 |
\documentclass{article} |
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
2 |
\usepackage{../style} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
3 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
4 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
5 |
\begin{document} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
6 |
|
167
d8657ff8cca1
typos
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
160
diff
changeset
|
7 |
\section*{Handout 1 (Security Engineering)} |
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
8 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
9 |
Much of the material and inspiration in this module is taken |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
10 |
from the works of Bruce Schneier, Ross Anderson and Alex |
159
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
11 |
Halderman. I think they are the world experts in the area of |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
12 |
security engineering. I especially like that they argue that a |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
13 |
security engineer requires a certain \emph{security mindset}. |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
14 |
Bruce Schneier for example writes: |
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
15 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
16 |
\begin{quote} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
17 |
\it ``Security engineers --- at least the good ones --- see |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
18 |
the world differently. They can't walk into a store without |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
19 |
noticing how they might shoplift. They can't use a computer |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
20 |
without wondering about the security vulnerabilities. They |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
21 |
can't vote without trying to figure out how to vote twice. |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
22 |
They just can't help it.'' |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
23 |
\end{quote} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
24 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
25 |
\begin{quote} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
26 |
\it ``Security engineering\ldots requires you to think |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
27 |
differently. You need to figure out not how something works, |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
28 |
but how something can be made to not work. You have to imagine |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
29 |
an intelligent and malicious adversary inside your system |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
30 |
\ldots, constantly trying new ways to |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
31 |
subvert it. You have to consider all the ways your system can |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
32 |
fail, most of them having nothing to do with the design |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
33 |
itself. You have to look at everything backwards, upside down, |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
34 |
and sideways. You have to think like an alien.'' |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
35 |
\end{quote} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
36 |
|
159
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
37 |
\noindent In this module I like to teach you this security |
168
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
38 |
mindset. This might be a mindset that you think is very foreign to you |
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
39 |
(after all we are all good citizens and not ahck into things). I beg |
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
40 |
to differ: You have this mindset already when in school you were |
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
41 |
thinking, at least hypothetically, about in which ways you can cheat in an |
168
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
42 |
exam (whether it is about hiding notes or looking over the shoulders |
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
43 |
of your fellow pupils). Right? To defend a system, you need to have |
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
44 |
this kind mindset and be able to think like an attacker. This will |
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
45 |
include understanding techniques that can be used to compromise |
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
46 |
security and privacy in systems. This will many times result in |
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
47 |
insights where well-intended security mechanisms made a system actually |
168
793ae8926a97
polished
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
167
diff
changeset
|
48 |
less secure.\smallskip |
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
49 |
|
159
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
50 |
{\Large\bf Warning!} However, don’t be evil! Using those |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
51 |
techniques in the real world may violate the law or King’s |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
52 |
rules, and it may be unethical. Under some circumstances, even |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
53 |
probing for weaknesses of a system may result in severe |
160
4cbd6ca025e6
updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
159
diff
changeset
|
54 |
penalties, up to and including expulsion, fines and |
159
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
55 |
jail time. Acting lawfully and ethically is your |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
56 |
responsibility. Ethics requires you to refrain from doing |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
57 |
harm. Always respect privacy and rights of others. Do not |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
58 |
tamper with any of King's systems. If you try out a technique, |
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
59 |
always make doubly sure you are working in a safe environment |
160
4cbd6ca025e6
updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
159
diff
changeset
|
60 |
so that you cannot cause any harm, not even accidentally. |
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
61 |
Don't be evil. Be an ethical hacker.\smallskip |
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
62 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
63 |
|
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
64 |
In this lecture I want to make you familiar with the security mindset |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
65 |
and dispel the myth that encryption is the answer to all security |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
66 |
problems (it is certainly often part of an answer, but almost always |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
67 |
never a sufficient one). This is actually an important thread going |
159
77cf0362b87a
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
158
diff
changeset
|
68 |
through the whole course: We will assume that encryption works |
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
69 |
perfectly, but still attack ``things''. By ``works perfectly'' we mean |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
70 |
that we will assume encryption is a black box and, for example, will |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
71 |
not look at the underlying mathematics and break the |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
72 |
algorithms.\footnote{Though fascinating it might be.} |
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
73 |
|
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
74 |
For a secure system it seems four requirements need to come together: |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
75 |
First a security policy (what is supposed to be achieved?); second a |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
76 |
mechanism (cipher, access controls, tamper resistance etc); third the |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
77 |
assurance we obtain from the mechanism (the amount of reliance we can |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
78 |
put on the mechanism) and finally the incentives (the motive that the |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
79 |
people guarding and maintaining the system have to do their job |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
80 |
properly, and also the motive that the attackers have to try to defeat |
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
81 |
your policy). The last point is often overlooked, but plays an |
173
9126c13a7d93
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
169
diff
changeset
|
82 |
important role. |
9126c13a7d93
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
169
diff
changeset
|
83 |
|
9126c13a7d93
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
169
diff
changeset
|
84 |
Lets look at an example. The questions is whether the Chip-and-PIN |
9126c13a7d93
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
169
diff
changeset
|
85 |
system with credit cards is more secure than the older method of |
9126c13a7d93
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
169
diff
changeset
|
86 |
signing receipts at the till. |
169
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
87 |
|
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
88 |
|
2866fae8c1cf
updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
168
diff
changeset
|
89 |
|
158
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
90 |
\end{document} |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
91 |
|
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
92 |
%%% Local Variables: |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
93 |
%%% mode: latex |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
94 |
%%% TeX-master: t |
702fea7754eb
added handouts
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff
changeset
|
95 |
%%% End: |