slides/slides04.tex
author Christian Urban <christian dot urban at kcl dot ac dot uk>
Mon, 05 Oct 2015 12:47:56 +0100
changeset 394 ea1ee786d5a7
parent 391 a612dd3ddc81
child 404 4e3bc09748f7
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     1
\documentclass[dvipsnames,14pt,t]{beamer}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
     2
\usepackage{../slides}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
     3
\usepackage{../graphics}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
     4
\usepackage{../langs}
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     5
\usetikzlibrary{arrows}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     6
\usetikzlibrary{shapes}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     7
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
     8
\setmonofont[Scale=.88]{Consolas}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
     9
\newfontfamily{\consolas}{Consolas}
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    11
\hfuzz=220pt 
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    13
% beamer stuff 
381
036a762b02cf updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 252
diff changeset
    14
\renewcommand{\slidecaption}{SEN 04, King's College London}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    15
\newcommand{\bl}[1]{\textcolor{blue}{#1}}  
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    16
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    17
\begin{document}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    18
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    19
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    20
\begin{frame}[t]
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    21
\frametitle{%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    22
  \begin{tabular}{@ {}c@ {}}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    23
  \\
381
036a762b02cf updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 252
diff changeset
    24
  \LARGE Security Engineering (4)\\[-3mm] 
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    25
  \end{tabular}}\bigskip\bigskip\bigskip
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    26
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    27
\normalsize
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    28
  \begin{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    29
  \begin{tabular}{ll}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    30
  Email:  & christian.urban at kcl.ac.uk\\
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
    31
  Office: & S1.27 (1st floor Strand Building)\\
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    32
  Slides: & KEATS (also home work is there)\\
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    33
  \end{tabular}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    34
  \end{center}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    35
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    36
\end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    37
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    38
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    39
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    40
\begin{frame}[c]
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    41
\frametitle{Survey: Thanks!}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    42
\small
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    43
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    44
\begin{itemize}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    45
\item ``Would be good, if you provide more detailed explanations. I feel 
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    46
your slides are not as structured as they could be.''
244
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
    47
\item ``Please consider reference book chapters to cover core subject
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    48
areas.''\pause
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    49
\item ``The homework questions don't come directly from the 
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    50
slides. So must go look things up.''
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    51
\item ``Could you please put the homework answers online, perhaps
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    52
just before the exam. That's late enough where we should have done
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    53
it and if not, we're screwed already then.''
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    54
\item ``Could you provide a brief basic answers to sheets for reference
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    55
and not to be relied on.''
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    56
\end{itemize}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    57
  
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    58
\end{frame}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    59
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    60
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    61
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
    62
\begin{frame}[c]
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    63
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    64
\begin{center}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    65
\includegraphics[scale=0.45]{../pics/trainwreck.jpg}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    66
last week: buffer overflow attacks
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    67
\end{center}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    68
  
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    69
\end{frame}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    70
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    71
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    72
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
    73
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    74
\begin{frame}[c]
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    75
\frametitle{\begin{tabular}{c}Network Applications:\\[-1mm] Privilege Separation\end{tabular}}
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
    76
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
    77
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    78
\begin{center}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    79
  \begin{tikzpicture}[scale=1]
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
    80
  
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    81
  \draw[line width=1mm] (-.3, 0) rectangle (1.5,2);
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    82
  \draw (4.7,1) node {Internet};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    83
  \draw (-2.7,1.7) node {\footnotesize Application};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    84
  \draw (0.6,1.7) node {\footnotesize Interface};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    85
  \draw (0.6,-0.4) node {\footnotesize \begin{tabular}{c}unprivileged\\[-1mm] process\end{tabular}};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    86
  \draw (-2.7,-0.4) node {\footnotesize \begin{tabular}{c}privileged\\[-1mm] process\end{tabular}};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    87
  
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    88
  \draw[line width=1mm] (-1.8, 0) rectangle (-3.6,2);
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
    89
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    90
  \draw[white] (1.7,1) node (X) {};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    91
  \draw[white] (3.7,1) node (Y) {};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    92
  \draw[red, <->, line width = 2mm] (X) -- (Y);
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    93
 
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    94
  \draw[red, <->, line width = 1mm] (-0.6,1) -- (-1.6,1);
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    95
  \end{tikzpicture}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
    96
\end{center}
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
    97
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    98
\begin{itemize}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
    99
\item the idea is make the attack surface smaller and mitigate the
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   100
  consequences of an attack
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   101
\end{itemize}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   102
\end{frame}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   103
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   104
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   106
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   107
\mode<presentation>{
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   108
\begin{frame}[c]
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   109
\frametitle{\begin{tabular}{@ {}c@ {}}Infamous Security Flaws\\[-1mm] in Unix\end{tabular}}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   110
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   111
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   112
\begin{itemize}
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   113
\item \texttt{lpr} unfortunately runs with root privileges; you had the option to delete files after printing \ldots\pause\pause
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   114
\item for debugging purposes (FreeBSD) Unix provides a ``core dump'', but allowed to follow links \ldots\pause
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   115
\item \texttt{mkdir foo} is owned by root\medskip
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   116
\begin{center}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   117
\texttt{-rwxr-xr-x  1 root  wheel /bin/mkdir}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   118
\end{center}\medskip
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   119
it first creates an i-node as root and then changes to ownership to the user's id\\ \textcolor{gray}{\small (race condition -- can be automated with a shell script)}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   120
\end{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   121
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   122
\only<5->{
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   123
\begin{textblock}{1}(3,7)
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   124
\begin{tikzpicture}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   125
\draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   126
{\begin{minipage}{8cm}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   127
Only failure makes us experts.
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   128
	-- Theo de Raadt (OpenBSD, OpenSSH)
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   129
\end{minipage}};
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   130
\end{tikzpicture}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   131
\end{textblock}}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   132
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   133
\end{frame}}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   134
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   135
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   136
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   137
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   138
388
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   139
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   140
\begin{frame}[c]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   141
\frametitle{Unix-Style Access Control}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   142
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   143
How to do control access? In Unix you have
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   144
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   145
\begin{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   146
\item users and you have groups/roles:
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   147
\item some special roles: root
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   148
\end{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   149
  
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   150
\end{frame}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   151
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   152
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   153
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   154
\begin{frame}[c]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   155
\frametitle{Unix-Style Access Control}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   156
\small
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   157
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   158
\begin{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   159
\item 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   160
Q: ``I am using Windows. Why should I care?'' \\ 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   161
A: In Windows you have similar AC:
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   162
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   163
\begin{center}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   164
\begin{tabular}{l}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   165
administrators group\\ 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   166
\hspace{5mm}(has complete control over the machine)\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   167
authenticated users\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   168
server operators\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   169
power users\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   170
network configuration operators
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   171
\end{tabular}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   172
\end{center}\medskip
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   173
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   174
\item Modern versions of Windows have more fine-grained AC than Unix;
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   175
  they do not have a setuid bit, but have \texttt{runas} (asks for a
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   176
  password).\pause
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   177
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   178
\item OS-provided access control can \alert{\bf add} to your security.
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   179
  (defence in depth)
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   180
\end{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   181
  
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   182
\end{frame}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   183
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   184
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   185
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   186
\begin{frame}[c]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   187
\frametitle{\begin{tabular}{c}Network Applications:\\[-1mm] Privilege Separation\end{tabular}}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   188
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   189
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   190
\begin{center}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   191
  \begin{tikzpicture}[scale=1]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   192
  
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   193
  \draw[line width=1mm] (-.3, 0) rectangle (1.5,2);
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   194
  \draw (4.7,1) node {Internet};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   195
  \draw (-2.7,1.7) node {\footnotesize Application};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   196
  \draw (0.6,1.7) node {\footnotesize Interface};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   197
  \draw (0.6,-0.4) node {\footnotesize \begin{tabular}{c}unprivileged\\[-1mm] process\end{tabular}};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   198
  \draw (-2.7,-0.4) node {\footnotesize \begin{tabular}{c}privileged\\[-1mm] process\end{tabular}};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   199
  
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   200
  \draw[line width=1mm] (-1.8, 0) rectangle (-3.6,2);
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   201
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   202
  \draw[white] (1.7,1) node (X) {};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   203
  \draw[white] (3.7,1) node (Y) {};
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   204
  \draw[red, <->, line width = 2mm] (X) -- (Y);
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   205
 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   206
  \draw[red, <->, line width = 1mm] (-0.6,1) -- (-1.6,1);
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   207
  \end{tikzpicture}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   208
\end{center}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   209
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   210
\begin{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   211
\item the idea is make the attack surface smaller and mitigate the
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   212
  consequences of an attack
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   213
\end{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   214
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   215
\end{frame}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   216
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   217
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   218
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   219
\begin{frame}[c]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   220
\frametitle{Weaknesses of Unix AC}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   221
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   222
Not just restricted to Unix:
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   223
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   224
\begin{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   225
\item if you have too many roles (i.e.~too finegrained AC), then
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   226
  hierarchy is too complex\\ \textcolor{gray}{you invite situations
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   227
    like\ldots let's be root}\bigskip
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   228
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   229
\item you can still abuse the system\ldots
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   230
\end{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   231
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   232
\end{frame}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   233
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   234
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   235
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   236
\begin{frame}[c]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   237
\frametitle{A ``Cron''-Attack}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   238
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   239
The idea is to trick a privileged person to do something on your
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   240
behalf:
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   241
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   242
\begin{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   243
\item root:\\\texttt{rm /tmp/*/*}\bigskip\bigskip\pause
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   244
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   245
\footnotesize
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   246
\begin{minipage}{1.1\textwidth}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   247
\textcolor{gray}{the shell behind the scenes:}\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   248
\textcolor{gray}{\texttt{rm /tmp/dir$_1$/file$_1$ /tmp/dir$_1$/file$_2$ /tmp/dir$_2$/file$_1$ \ldots}}\bigskip\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   249
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   250
\textcolor{gray}{this takes time}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   251
\end{minipage}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   252
\end{itemize}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   253
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   254
\end{frame}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   255
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   256
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   257
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   258
\begin{frame}[c]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   259
\frametitle{A ``Cron''-Attack}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   260
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   261
\begin{enumerate}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   262
\item attacker \textcolor{gray}{(creates a fake passwd file)}\\ 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   263
\texttt{mkdir /tmp/a; cat > /tmp/a/passwd}\medskip
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   264
\item root \textcolor{gray}{(does the daily cleaning)}\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   265
\texttt{rm /tmp/*/*}\medskip\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   266
\hspace{2cm}\textcolor{gray}{\small records that \texttt{/tmp/a/passwd}}\\ 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   267
\hspace{2cm}\textcolor{gray}{\small should be deleted, but does not do it yet}\medskip\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   268
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   269
\item attacker \textcolor{gray}{(meanwhile deletes the fake passwd file, and establishes a link to 
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   270
the real passwd file)}\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   271
\texttt{rm /tmp/a/passwd; rmdir /tmp/a;}\\\texttt{ln -s /etc /tmp/a}\\
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   272
\item root now deletes  the real passwd file
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   273
\end{enumerate}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   274
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   275
\only<2>{
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   276
\begin{textblock}{11}(2,5)
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   277
\begin{bubble}[8cm]
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   278
\normalsize To prevent this kind of attack, you need additional
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   279
policies (don't do such operations as root).
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   280
\end{bubble}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   281
\end{textblock}}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   282
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   283
\end{frame}
770b58a7d754 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 381
diff changeset
   284
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
391
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   285
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   286
\begin{frame}[fragile]
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   287
\frametitle{D-Link Backdoors}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   288
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   289
D-Link router flaw lets anyone login through "Joel's Backdoor":\medskip
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   290
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   291
\begin{quote}\rm\small
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   292
If you tell your browser to identify itself as Joel's backdoor, instead of (say) 
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   293
as Mozilla/5.0 AppleWebKit/536.30.1 Version/6.0.5, you're in without authentication.\medskip
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   294
  
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   295
"What is this string," I hear you ask?
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   296
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   297
You will laugh: it is\pause 
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   298
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   299
\begin{center}\large
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   300
\pcode{xmlset_roodkcableoj28840ybtide}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   301
\end{center}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   302
\end{quote}\bigskip\bigskip
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   303
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   304
\hfill\footnotesize October 15, 2013\\
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   305
\hfill\footnotesize\url{http://www.devttys0.com/2013/10/reverse-engineering-a-d-link-backdoor/}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   306
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   307
\end{frame}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   308
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   309
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   310
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   311
\begin{frame}[fragile]
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   312
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   313
CVE-2014-0476 \pcode{chkrootkit} vulnerability 4 Jun'14\medskip
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   314
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   315
\begin{quote}\rm\small
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   316
Hi,
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   317
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   318
we just found a serious vulnerability in the chkrootkit package, which
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   319
may allow local attackers to gain root access to a box in certain
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   320
configurations (\pcode{/tmp} not mounted noexec). Steps to reproduce:
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   321
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   322
\begin{itemize}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   323
\item Put an executable file named \pcode{update} with non-root owner in 
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   324
\pcode{/tmp} (not mounted noexec, obviously)
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   325
\item Run chkrootkit (as uid \pcode{0})
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   326
\end{itemize}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   327
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   328
Result: The file \pcode{/tmp/update} will be executed as root, thus effectively
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   329
rooting your box, if malicious content is placed inside the file.
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   330
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   331
If an attacker knows you are periodically running chkrootkit (like in
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   332
\pcode{cron.daily}) and has write access to \pcode{/tmp} (not mounted noexec), he may
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   333
easily take advantage of this.
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   334
\end{quote}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   335
\mbox{}\\[-10mm]
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   336
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   337
\hfill\footnotesize\url{http://seclists.org/oss-sec/2014/q2/430}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   338
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   339
\end{frame}
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   340
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
a612dd3ddc81 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 388
diff changeset
   341
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   342
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   343
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   344
\begin{frame}[c]
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   345
\frametitle{Access Control in Unix}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   346
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   347
\begin{itemize}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   348
\item access control provided by the OS
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   349
\item authenticate principals
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   350
\item mediate access to files, ports, processes etc according to
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   351
  \alert{roles} (user ids)\\
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   352
\item roles get attached with privileges\bigskip\\
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   353
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   354
\hspace{8mm}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   355
\begin{bubble}[8cm]
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   356
\alert{principle of least privilege:}\\
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   357
users and programs should only have as much privilege as they need to
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   358
accomplish a task
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   359
\end{bubble}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   360
\end{itemize}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   361
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   362
\end{frame}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   363
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   364
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   365
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   366
\mode<presentation>{
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   367
\begin{frame}[c]
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   368
\frametitle{Access Control in Unix (2)}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   369
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   370
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   371
\begin{itemize}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   372
\item privileges are specified by file access permissions (``everything is a file'')\medskip 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   373
\item there are 9 (plus 2) bits that specify the permissions of a file
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   374
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   375
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   376
\begin{tabular}{l}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   377
\texttt{\$ ls -la}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   378
\texttt{-rwxrw-r-{}- \hspace{3mm} foo\_file.txt}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   379
\end{tabular}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   380
\end{center}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   381
\end{itemize}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   382
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   383
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   384
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   385
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   386
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   387
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   388
\frametitle{Login Process}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   389
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   390
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   391
\begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   392
\item login processes run under UID $=$ \pcode{0}\medskip 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   393
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   394
\texttt{ps -axl | grep login}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   395
\end{center}\medskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   396
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   397
\item after login, shells run under UID $=$ user (e.g.~501)\medskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   398
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   399
\texttt{id cu}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   400
\end{center}\medskip\pause
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   401
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   402
\item non-root users are not allowed to change the UID --- would break 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   403
access control
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   404
\item but needed for example for accessing \texttt{passwd}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   405
\end{itemize}
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   406
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   407
\end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   408
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   409
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   410
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   411
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   412
\frametitle{Setuid and Setgid}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   413
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   414
The solution is that Unix file permissions are 9 + \underline{2 Bits}:
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   415
\alert{Setuid} and \alert{Setgid} bits
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   416
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   417
\begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   418
\item When a file with setuid is executed, the resulting process will
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   419
  assume the UID given to the \underline{owner} of the file.
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   420
\item This enables users to create processes as root (or another
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   421
  user).\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   422
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   423
\item Essential for changing passwords, for example.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   424
\end{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   425
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   426
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   427
\texttt{chmod 4755 fobar\_file}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   428
\end{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   429
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   430
\end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   431
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   432
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   433
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   434
\begin{frame}[c]
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   435
\frametitle{\Large Discretionary Access Control}
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   436
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   437
\begin{itemize}
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   438
\item Access to objects (files, directories, devices, etc.) is
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   439
permitted based on user identity. Each object is owned by a
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   440
user. Owners can specify freely (at their discretion) how they want to
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   441
share their objects with other users, by specifying which other users
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   442
can have which form of access to their objects.\medskip
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   443
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   444
\item Discretionary access control is implemented on any modern multi-user
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   445
OS (Unix, Windows NT, etc.).
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   446
\end{itemize}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   447
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   448
\end{frame}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   449
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   450
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   451
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   452
\begin{frame}[c]
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   453
\frametitle{\Large Mandatory Access Control}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   454
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   455
\begin{itemize}
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   456
\item Access to objects is controlled by a system-wide policy, for
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   457
  example to prevent certain flows of information. In some forms, the
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   458
  system maintains security labels for both objects and subjects
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   459
  (processes, users) based on which access is granted or
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   460
  denied. Labels can change as the result of an access. Security
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   461
  policies are enforced without the cooperation of users or
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   462
  programs.\medskip
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   463
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   464
\item This is implemented in banking or military operating system 
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   465
  versions (SELinux).
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   466
\end{itemize}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   467
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   468
\end{frame}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   469
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   470
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   471
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   472
\begin{frame}[c]
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   473
\frametitle{\Large Discretionary Access Control}
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   474
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   475
In its most generic form usually given by an \alert{Access Control
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   476
  Matrix} of the form
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   477
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   478
\begin{center}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   479
\begin{tabular}{r|c|c|c}
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   480
                 & /mail/jane & edit.exe & postfix \\\hline
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   481
jane          & r, w & r, x & r, x\\\hline
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   482
john          & $\varnothing$ & r, w, x&  r, x\\\hline
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   483
postfix  & a & $\varnothing$ &  r, x\\
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   484
\end{tabular}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   485
\end{center}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   486
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   487
access privileges: {\bf r}ead, {\bf w}rite, e{\bf x}ecute, {\bf a}ppend
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   488
\end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   489
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   490
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   491
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   492
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   493
\small
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   494
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   495
\lstinputlisting[language={},numbers=none,xleftmargin=-6mm]{lst}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   496
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   497
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   498
\begin{center}
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   499
\begin{tabular}{@{\hspace{-24mm}}ll}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   500
members of group staff: & ping, bob, emma\\ 
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   501
members of group students: & emma\\
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   502
\end{tabular}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   503
\end{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   504
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   505
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   506
\begin{tabular}{@{\hspace{-7mm}}r|c|c|c|c|c@{}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   507
        & manual.txt & report.txt & microedit & src/code.c & src/code.h \\\hline
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   508
ping & & & & &\\\hline
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   509
bob & & & & &\\\hline
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   510
emma   & & & & &\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   511
\end{tabular}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   512
\end{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   513
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   514
\end{frame}
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   515
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   516
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   517
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   518
\begin{frame}[c]
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   519
\frametitle{Mandatory Access Control}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   520
\small
45
Christian Urban <urbanc@in.tum.de>
parents: 44
diff changeset
   521
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   522
\begin{itemize}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   523
\item Restrictions to allowed information flows are not decided at the
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   524
  user's discretion (as with Unix \pcode{chmod}), but instead enforced
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   525
  by system policies.
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   526
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   527
\item Mandatory access control mechanisms are aimed in particular at
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   528
  preventing policy violations by untrusted programs, which typically
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   529
  have at least the same access privileges as the invoking
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   530
  user.\medskip\pause
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   531
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   532
Simple example: Air Gap Security. Uses a completely separate network
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   533
and computer hardware for different application classes.
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   534
\end{itemize}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   535
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   536
\end{frame}
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   537
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
   538
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   539
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   540
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   541
\begin{frame}[c]
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   542
\frametitle{The Bell-LaPadula Model}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   543
\small
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   544
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   545
\begin{itemize}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   546
\item Formal policy model for mandatory access control in a military
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   547
  multi-level security environment. All subjects (processes, users,
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   548
  terminals, files, windows, connections) are labeled
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   549
  with a confidentiality level, e.g.
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   550
\begin{center}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   551
unclassified < confidential < secret < top secret
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   552
\end{center}\medskip
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   553
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   554
\item The system policy automatically prevents the flow of information
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   555
  from high-level objects to lower levels. A process that reads top
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   556
  secret data becomes tagged as top secret by the operating system, as
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   557
  will be all files into which it writes afterwards.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   558
%Each user has a maximum allowed confidentiality level specified and
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   559
%cannot receive data beyond that level. A selected set of trusted
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   560
%subjects is allowed to bypass the restrictions, in order to permit
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   561
%the declassification of information.
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   562
\end{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   563
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   564
\end{frame}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   565
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   566
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   567
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   568
  \begin{frame}[c]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   569
  \frametitle{Bell-LaPadula}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   570
  \small
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   571
  
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   572
  \begin{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   573
  \item \alert{Read Rule}: A principal \bl{$P$} can read an object \bl{$O$} if and only if
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   574
  \bl{$P$}'s security level is at least as high as \bl{$O$}'s.
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   575
  \item \alert{Write Rule}: A principal \bl{$P$} can write an object \bl{$O$} if and only if
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   576
  \bl{$O$}'s security level is at least as high as \bl{$P$}'s.\medskip
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   577
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   578
  \item Meta-Rule: All principals in a system should have a sufficiently high security level
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   579
  in order to access an object.
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   580
  \end{itemize}\bigskip
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   581
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   582
  This restricts information flow $\Rightarrow$ military\bigskip\bigskip\pause
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   583
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   584
  Bell-LaPadula: {\bf `no read up'} - {\bf `no write down'}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   585
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   586
  \end{frame}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   587
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   588
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   589
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   590
  \begin{frame}[c]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   591
  \frametitle{\begin{tabular}{c}Principle of\\[-2mm] Least Privilege\end{tabular}}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   592
  
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   593
  \begin{bubble}[10cm]
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   594
  A principal should have as few privileges as possible to access a resource.
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   595
  \end{bubble}\bigskip\bigskip
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   596
  \small
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   597
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   598
  \begin{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   599
  \item Bob ($T\!S$) and Alice ($S$) want to communicate
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   600
  \item[] $\Rightarrow$ Bob should lower his security level
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   601
  \end{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   602
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   603
  \end{frame}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   604
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   605
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   606
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   607
  \begin{frame}[c]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   608
  \frametitle{Biba Policy}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   609
  \small
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   610
  
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   611
  Data Integrity (rather than data confidentiality)
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   612
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   613
  \begin{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   614
  \item Biba: {\bf `no read down'} - {\bf `no write up'}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   615
  \item \alert{Read Rule}: A principal \bl{$P$} can read an object \bl{$O$} if and only if
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   616
  \bl{$P$}'s security level is lower or equal than \bl{$O$}'s.
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   617
  \item \alert{Write Rule}: A principal \bl{$P$} can write an object \bl{$O$} if and only if
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   618
  \bl{$O$}'s security level is lower or equal than \bl{$P$}'s.
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   619
  \end{itemize}\bigskip\bigskip\pause
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   620
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   621
  E.g.~Firewalls: you can read from inside the firewall, but not from outside\\
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   622
  Phishing: you can look at an approved PDF, but not one from a random email\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   623
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   624
  \end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   625
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   626
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   627
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   628
\begin{frame}[c]
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   629
\frametitle{Security Levels (2)}
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   630
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   631
\begin{itemize}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   632
\item Bell-La Padula preserves data secrecy, but not data
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   633
  integrity\bigskip\pause
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   634
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   635
\item Biba model is for data integrity  
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   636
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   637
\begin{itemize}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   638
\item read: your own level and above
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   639
\item write: your own level and below
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   640
\end{itemize}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   641
\end{itemize}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   642
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   643
\end{frame}
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   644
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   645
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   646
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   647
\begin{frame}[c]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   648
\frametitle{Shared Access Control}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   649
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   650
\begin{center}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   651
\includegraphics[scale=0.7]{../pics/pointsplane.jpg}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   652
\end{center}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   653
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   654
\begin{textblock}{11}(10.5,10.5)
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   655
\small
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   656
To take an action you\\[-1mm] 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   657
need at least either:
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   658
\begin{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   659
\item 1 CEO\\[-5mm]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   660
\item 2 MDs, or\\[-5mm]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   661
\item 3 Ds
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   662
\end{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   663
\end{textblock}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   664
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   665
\end{frame}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   666
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
117
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 105
diff changeset
   667
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   668
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   669
\begin{frame}[c]
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   670
\frametitle{\Large Lessons from Access Control}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   671
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   672
Not just restricted to Unix:
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   673
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   674
\begin{itemize}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   675
\item if you have too many roles (i.e.~too finegrained AC), then 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   676
	hierarchy is too complex\\
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   677
	\textcolor{gray}{you invite situations like\ldots lets be root}\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   678
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   679
\item you can still abuse the system\ldots\bigskip\pause
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   680
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   681
\item 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   682
  policies (a finite system)\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   683
  computer system (infinite)\medskip\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   684
Q: Does your policy ensure that a tainted file cannot affect your
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   685
core system files?
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   686
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   687
\end{itemize}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   688
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   689
\end{frame}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   690
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   691
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   692
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   693
  \begin{frame}[t]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   694
  \frametitle{Protocols}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   695
 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   696
\mbox{} 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   697
  
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   698
\begin{tabular}{l}
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   699
{\Large \bl{$A\;\rightarrow\; B : \ldots$}}\\
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   700
\onslide<2->{\Large \bl{$B\;\rightarrow\; A : \ldots$}}\\
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   701
\onslide<2->{\Large \;\;\;\;\;\bl{$:$}}\bigskip
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   702
\end{tabular}  
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   703
  
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   704
 \begin{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   705
 \item by convention \bl{$A$}, \bl{$B$} are named principals \bl{Alice\ldots}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   706
 but most likely they are programs, which just follow some instructions (they are more like roles)\bigskip
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   707
\item<2-> indicates one ``protocol run'', or session,  which specifies some 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   708
order in the communication
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   709
\item<2-> there can be several sessions in parallel (think of wifi routers) 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   710
\end{itemize} 
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   711
  
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   712
  \end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   713
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   714
  
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   715
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   716
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   717
\frametitle{\Large Cryptographic Protocol Failures}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   718
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   719
Ross Anderson and Roger Needham wrote:\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   720
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   721
\begin{quote}\rm
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   722
\alert{A lot of the recorded frauds were the result of this kind of
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   723
  blunder, or from management negligence pure and simple.} However,
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   724
there have been a significant number of cases where the designers
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   725
protected the right things, used cryptographic algorithms which were
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   726
not broken, and yet found that their systems were still successfully
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   727
attacked.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   728
\end{quote}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   729
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   730
\end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   731
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   732
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   733
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   734
  \begin{frame}<1-3>[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   735
  \frametitle{Oyster Cards}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   736
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   737
  \includegraphics[scale=0.4]{../pics/oysterc.jpg}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   738
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   739
  \begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   740
  \item good example of a bad protocol\\ (security by obscurity)\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   741
  \item<3->  ``Breaching security on Oyster cards should not 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   742
  allow unauthorised use for more than a day, as TfL promises to turn 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   743
  off any cloned cards within 24 hours\ldots''
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   744
  \end{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   745
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   746
  \only<2>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   747
  \begin{textblock}{12}(0.5,0.5)
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   748
  \begin{bubble}[11cm]\footnotesize
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   749
  {\bf Wirelessly Pickpocketing a Mifare Classic Card}\medskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   750
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   751
  The Mifare Classic is the most widely used contactless smartcard on the
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   752
  market. The stream cipher CRYPTO1 used by the Classic has recently been
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   753
  reverse engineered and serious attacks have been proposed. The most serious
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   754
  of them retrieves a secret key in under a second. In order to clone a card,
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   755
  previously proposed attacks require that the adversary either has access to
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   756
  an eavesdropped communication session or executes a message-by-message
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   757
  man-in-the-middle attack between the victim and a legitimate
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   758
  reader. Although this is already disastrous from a cryptographic point of
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   759
  view, system integrators maintain that these attacks cannot be performed
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   760
  undetected.\smallskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   761
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   762
  This paper proposes four attacks that can be executed by an adversary having
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   763
  only wireless access to just a card (and not to a legitimate reader). The
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   764
  most serious of them recovers a secret key in less than a second on ordinary
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   765
  hardware. Besides the cryptographic weaknesses, we exploit other weaknesses
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   766
  in the protocol stack. A vulnerability in the computation of parity bits
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   767
  allows an adversary to establish a side channel. Another vulnerability
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   768
  regarding nested authentications provides enough plaintext for a speedy
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   769
  known-plaintext attack.\hfill{}(a paper from 2009)
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   770
  \end{bubble}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   771
  \end{textblock}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   772
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   773
  \end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   774
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   775
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   776
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   777
\begin{frame}<1->[t]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   778
\frametitle{Another Example}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   779
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   780
In an email from Ross Anderson\bigskip\small	
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   781
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   782
\begin{tabular}{l}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   783
From: Ross Anderson <Ross.Anderson@cl.cam.ac.uk>\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   784
Sender: cl-security-research-bounces@lists.cam.ac.uk\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   785
To: cl-security-research@lists.cam.ac.uk\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   786
Subject: Birmingham case\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   787
Date: Tue, 13 Aug 2013 15:13:17 +0100\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   788
\end{tabular}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   789
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   790
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   791
\only<2>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   792
\begin{textblock}{12}(0.5,0.8)
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   793
\begin{bubble}[11cm]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   794
\footnotesize
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   795
As you may know, Volkswagen got an injunction against the University of
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   796
Birmingham suppressing the publication of the design of a weak cipher
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   797
used in the remote key entry systems in its recent-model cars. The paper
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   798
is being given today at Usenix, minus the cipher design.\medskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   799
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   800
I've been contacted by Birmingham University's lawyers who seek to prove
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   801
that the cipher can be easily obtained anyway. They are looking for a
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   802
student who will download the firmware from any newish VW, disassemble
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   803
it and look for the cipher. They'd prefer this to be done by a student
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   804
rather than by a professor to emphasise how easy it is.\medskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   805
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   806
Volkswagen's argument was that the Birmingham people had reversed a
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   807
locksmithing tool produced by a company in Vietnam, and since their key
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   808
fob chip is claimed to be tamper-resistant, this must have involved a
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   809
corrupt insider at VW or at its supplier Thales. Birmingham's argument
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   810
is that this is nonsense as the cipher is easy to get hold of. Their
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   811
lawyers feel this argument would come better from an independent
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   812
outsider.\medskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   813
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   814
Let me know if you're interested in having a go, and I'll put you in
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   815
touch
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   816
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   817
Ross
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   818
\end{bubble}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   819
\end{textblock}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   820
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   821
\end{frame}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   822
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   823
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   824
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
243
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   825
\begin{frame}[c]
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   826
\frametitle{\Large Cryptographic Protocol Failures}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   827
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   828
Ross Anderson and Roger Needham wrote:\bigskip
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   829
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   830
\begin{quote}\rm
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   831
A lot of the recorded frauds were the result of this kind of blunder,
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   832
or from management negligence pure and simple. \alert{However, there
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   833
  have been a significant number of cases where the designers
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   834
  protected the right things, used cryptographic algorithms which were
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   835
  not broken, and yet found that their systems were still successfully
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   836
  attacked.}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   837
\end{quote}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   838
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   839
\end{frame}
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   840
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   841
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   842
dd94cbf9eba7 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 241
diff changeset
   843
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   844
\mode<presentation>{
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   845
\begin{frame}[c]
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   846
\frametitle{Authentication Protocols}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   847
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   848
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   849
Alice (\bl{$A$}) and Bob (\bl{$B$}) share a secret key \bl{$K_{AB}$}\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   850
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   851
Passwords:
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   852
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   853
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   854
\bl{$B \rightarrow A: K_{AB}$} 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   855
\end{center}\pause\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   856
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   857
Problem: Eavesdropper can capture the secret and replay it; \bl{$A$} cannot confirm the
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   858
identity of \bl{$B$}  
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   859
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   860
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   861
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   862
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   863
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   864
\mode<presentation>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   865
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   866
\frametitle{Authentication Protocols}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   867
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   868
Alice (\bl{$A$}) and Bob (\bl{$B$}) share a secret key \bl{$K_{AB}$}\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   869
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   870
Simple Challenge Response:
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   871
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   872
\begin{center}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   873
\begin{tabular}{ll}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   874
\bl{$A \rightarrow B:$} & \bl{$N$}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   875
\bl{$B \rightarrow A:$} & \bl{$\{N\}_{K_{AB}}$}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   876
\end{tabular} 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   877
\end{center}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   878
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   879
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   880
\end{frame}}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   881
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
   882
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   883
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   884
\mode<presentation>{
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   885
\begin{frame}[c]
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   886
\frametitle{Authentication Protocols}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   887
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   888
Alice (\bl{$A$}) and Bob (\bl{$B$}) share a secret key \bl{$K_{AB}$}\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   889
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   890
Mutual Challenge Response:
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   891
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   892
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   893
\begin{tabular}{ll}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   894
\bl{$A \rightarrow B:$} & \bl{$N_A$}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   895
\bl{$B \rightarrow A:$} & \bl{$\{N_A, N_B\}_{K_{AB}}$}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   896
\bl{$A \rightarrow B:$} & \bl{$N_B$}\\
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   897
\end{tabular} 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   898
\end{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   899
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   900
%\pause
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   901
%An attacker \bl{$E$} can launch an impersonation attack by
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   902
%intercepting all messages for \bl{$B$} and make \bl{$A$} decrypt her
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   903
%own challenges.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   904
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   905
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   906
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   907
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   908
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   909
\begin{frame}[c]
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   910
\frametitle{Nonces}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   911
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   912
\begin{enumerate}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   913
\item I generate a nonce (random number) and send it to you encrypted with a key we share
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   914
\item you increase it by one, encrypt it under a key I know and send
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   915
it back to me
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   916
\end{enumerate}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   917
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   918
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   919
I can infer:
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   920
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   921
\begin{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   922
\item you must have received my message
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   923
\item you could only have generated your answer after I send you my initial
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   924
message
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   925
\item if only you and me know the key, the message must have come from you
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   926
\end{itemize}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   927
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   928
\end{frame}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   929
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   930
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   931
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   932
\mode<presentation>{
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   933
\begin{frame}[c]
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   934
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
   935
\begin{center}
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   936
\begin{tabular}{ll}
244
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   937
\bl{$A \rightarrow B$:} & \bl{$N_A$}\\  
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   938
\bl{$B \rightarrow A$:} & \bl{$\{N_A, N_B\}_{K_{ab}}$}\\
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   939
\bl{$A \rightarrow B$:} & \bl{$N_B$}\\
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   940
\end{tabular}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   941
\end{center}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   942
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
   943
The attack (let $A$ decrypt her own messages):
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   944
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   945
\begin{center}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   946
\begin{tabular}{ll}
244
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   947
\bl{$A \rightarrow E$:} & \bl{$N_A$}\\ 
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   948
\textcolor{gray}{$E \rightarrow A$:} & \textcolor{gray}{$N_A$}\\ 
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   949
\textcolor{gray}{$A \rightarrow E$:} & \textcolor{gray}{$\{N_A, N_A'\}_{K_{AB}}$}\\
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   950
\bl{$E \rightarrow A$:} & \bl{$\{N_A, N_A'\}_{K_{AB}}$}\\
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   951
\bl{$A \rightarrow E$:} & \bl{$N_A' \;\;(= N_B)$}\\
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   952
\end{tabular}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   953
\end{center}\pause
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   954
244
9fc6ec22ad82 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 243
diff changeset
   955
\small Solutions: \bl{$K_{AB} \not= K_{BA}$} or include an id in the second message
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   956
\end{frame}}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   957
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   958
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   959
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   960
  \mode<presentation>{
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   961
  \begin{frame}[c]
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   962
  \frametitle{Encryption to the Rescue?}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   963
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   964
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   965
 \begin{itemize}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   966
 \item \bl{$A \,\rightarrow\, B :  \{A, N_A\}_{K_{AB}}$}\hspace{1cm} encrypted\bigskip 
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   967
 \item \bl{$B\,\rightarrow\, A : \{N_A, K'_{AB}\}_{K_{AB}}$}\bigskip
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   968
 \item \bl{$A \,\rightarrow\, B : \{N_A\}_{K'_{AB}}$}\bigskip
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   969
 \end{itemize}\pause
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   970
 
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   971
means you need to send separate ``Hello'' signals (bad), or worse 
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   972
share a single key between many entities
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   973
\end{frame}}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   974
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%      
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   975
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   976
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   977
\mode<presentation>{
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   978
\begin{frame}[c]
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   979
\frametitle{Protocol Attacks}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   980
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   981
\begin{itemize}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   982
\item replay attacks
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   983
\item reflection attacks
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   984
\item man-in-the-middle attacks
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   985
\item timing attacks
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   986
\item parallel session attacks
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   987
\item binding attacks (public key protocols)
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   988
\item changing environment / changing assumptions\bigskip
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   989
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   990
\item (social engineering attacks)
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   991
\end{itemize}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   992
\end{frame}}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
   993
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
   994
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
   995
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
   996
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
   997
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
   998
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
   999
\frametitle{Public-Key Infrastructure}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1000
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1001
\begin{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1002
\item the idea is to have a certificate authority (CA)
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1003
\item you go to the CA to identify yourself
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1004
\item CA: ``I, the CA, have verified that public key \bl{$P^{pub}_{Bob}$} belongs to Bob''\bigskip
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1005
\item CA must be trusted by everybody
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1006
\item What happens if CA issues a false certificate? Who pays in case of loss? (VeriSign 
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1007
explicitly limits liability to \$100.)
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1008
\end{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1009
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1010
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1011
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1012
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1013
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1014
\mode<presentation>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1015
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1016
\frametitle{Person-in-the-Middle}
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1017
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1018
``Normal'' protocol run:\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1019
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1020
\begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1021
\item \bl{$A$} sends public key  to \bl{$B$}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1022
\item \bl{$B$} sends public key  to \bl{$A$}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1023
\item \bl{$A$} sends message encrypted with \bl{$B$}'s public key, \bl{$B$} decrypts it
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1024
with its private key
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1025
\item \bl{$B$} sends message encrypted with \bl{$A$}'s public key, \bl{$A$} decrypts it
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1026
with its private key
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1027
\end{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1028
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1029
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1030
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1031
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1032
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1033
\mode<presentation>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1034
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1035
\frametitle{Person-in-the-Middle}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1036
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1037
Attack:
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1038
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1039
\begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1040
\item \bl{$A$} sends public key  to \bl{$B$}  --- \bl{$C$} intercepts this message and send his own public key
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1041
\item \bl{$B$} sends public key  to \bl{$A$} --- \bl{$C$} intercepts this message and send his own public key
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1042
\item \bl{$A$} sends message encrypted with \bl{$C$}'s public key, \bl{$C$} decrypts it
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1043
with its private key, re-encrypts with \bl{$B$}'s public key 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1044
\item similar for other direction
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1045
\end{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1046
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1047
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1048
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1049
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1050
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1051
\mode<presentation>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1052
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1053
\frametitle{Person-in-the-Middle}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1054
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1055
Prevention:
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1056
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1057
\begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1058
\item \bl{$A$} sends public key  to \bl{$B$}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1059
\item \bl{$B$} sends public key  to \bl{$A$}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1060
\item \bl{$A$} encrypts message with \bl{$B$}'s public key, send's {\bf half} of the message
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1061
\item \bl{$B$} encrypts message with \bl{$A$}'s public key, send's {\bf half} of the message
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1062
\item \bl{$A$} sends other half, \bl{$B$} can now decrypt entire message
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1063
\item \bl{$B$} sends other half, \bl{$A$} can now decrypt entire message
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1064
\end{itemize}\pause
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1065
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1066
\bl{$C$} would have to invent a totally new message
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1067
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1068
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1069
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
252
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1070
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1071
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1072
\mode<presentation>{
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1073
\begin{frame}[c]
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1074
\frametitle{Public-Key Infrastructure}
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1075
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1076
\begin{itemize}
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1077
\item the idea is to have a certificate authority (CA)
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1078
\item you go to the CA to identify yourself
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1079
\item CA: ``I, the CA, have verified that public key \bl{$P^{pub}_{Bob}$} belongs to Bob''\bigskip
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1080
\item CA must be trusted by everybody
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1081
\item What happens if CA issues a false certificate? Who pays in case of loss? (VeriSign 
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1082
explicitly limits liability to \$100.)
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1083
\end{itemize}
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1084
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1085
\end{frame}}
fa151c0a3cf4 updated slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 244
diff changeset
  1086
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1087
  
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1088
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1089
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1090
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1091
\frametitle{Binding Attacks}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1092
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1093
with public-private keys it is important that the public key is \alert{bound} 
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1094
to the right owner (verified by a certification authority \bl{$CA$})
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1095
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1096
\begin{center}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1097
\begin{tabular}{l}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1098
\bl{$A \rightarrow CA :$} \bl{$A, B, N_A$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1099
\bl{$CA \rightarrow A :$} \bl{$CA, \{CA, A, N_A, K^{pub}_{B}\}_{K^{pub}_{A}}$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1100
\end{tabular}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1101
\end{center}\bigskip
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1102
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1103
\bl{$A$} knows \bl{$K^{priv}_A$} and can verify the message came from \bl{$CA$}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1104
in response to \bl{$A$}'s message and trusts \bl{$K^{pub}_{B}$} is \bl{$B$}'s public key
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1105
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1106
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1107
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1108
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1109
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1110
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1111
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1112
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1113
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1114
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1115
\frametitle{Binding Attacks}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1116
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1117
\begin{center}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1118
\begin{tabular}{l}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1119
\bl{$A \rightarrow I(CA) :$} \bl{$A, B, N_A$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1120
\bl{$I(A) \rightarrow CA :$} \bl{$A, I, N_A$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1121
\bl{$CA \rightarrow I(A) :$} \bl{$CA, \{CA, A, N_A, K^{pub}_{I}\}_{K^{pub}_{A}}$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1122
\bl{$I(CA) \rightarrow A :$} \bl{$CA, \{CA, A, N_A, K^{pub}_{I}\}_{K^{pub}_{A}}$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1123
\end{tabular}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1124
\end{center}\pause
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1125
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1126
\bl{$A$} now encrypts messages for \bl{$B$} with the public key of \bl{$I$}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1127
(which happily decrypts them with its private key)
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1128
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1129
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1130
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1131
119
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1132
  
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1133
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1134
\mode<presentation>{
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1135
\begin{frame}[c]
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1136
\frametitle{Replay Attacks}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1137
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1138
Schroeder-Needham protocol: exchange of a symmetric key with a trusted 3rd-party \bl{$S$}: 
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1139
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1140
\begin{center}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1141
\begin{tabular}{r@ {\hspace{1mm}}l}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1142
\bl{$A \rightarrow S :$} & \bl{$A, B, N_A$}\\
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1143
\bl{$S \rightarrow A :$} & \bl{$\{N_A, B, K_{AB},\{K_{AB}, A\}_{K_{BS}} \}_{K_{AS}}$}\\
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1144
\bl{$A \rightarrow B :$} & \bl{$\{K_{AB}, A\}_{K_{BS}} $}\\
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1145
\bl{$B \rightarrow A :$} & \bl{$\{N_B\}_{K_{AB}}$}\\
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1146
\bl{$A \rightarrow B :$} & \bl{$\{N_B-1\}_{K_{AB}}$}\\
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1147
\end{tabular}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1148
\end{center}\bigskip\pause
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1149
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1150
at the end of the protocol both \bl{$A$} and \bl{$B$} should be in the possession of the secret key
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1151
\bl{$K_{AB}$} and know that the other principal has the key
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1152
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1153
\end{frame}}
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1154
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1155
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1156
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1157
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1158
\mode<presentation>{
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1159
\begin{frame}[c]
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1160
0cea882f03c7 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 118
diff changeset
  1161
\begin{center}
118
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1162
\begin{tabular}{l}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1163
\bl{$A \rightarrow S :$} \bl{$A, B, N_A$}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1164
\bl{$S \rightarrow A :$} \bl{$\{N_A, B, K_{AB},\{K_{AB}, A\}_{K_{BS}} \}_{K_{AS}}$}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1165
\bl{$A \rightarrow B :$} \bl{$\{K_{AB}, A\}_{K_{BS}} $}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1166
\bl{$B \rightarrow A :$} \bl{$\{N_B\}_{K_{AB}}$}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1167
\bl{$A \rightarrow B :$} \bl{$\{N_B-1\}_{K_{AB}}$}\pause\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1168
\hspace{5cm}compromise \bl{$K_{AB}$}\pause\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1169
\bl{$A \rightarrow S :$} \bl{$A, B, N'_A$}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1170
\bl{$S \rightarrow A :$} \bl{$\{N'_A, B, K'_{AB},\{K'_{AB}, A\}_{K_{BS}} \}_{K_{AS}}$}\pause\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1171
\bl{$I(A) \rightarrow B :$} \bl{$\{K_{AB}, A\}_{K_{BS}} $}\hspace{0.5cm} replay of older run\pause\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1172
\bl{$B \rightarrow I(A) :$} \bl{$\{N'_B\}_{K_{AB}}$}\\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1173
\bl{$I(A) \rightarrow B :$} \bl{$\{N'_B-1\}_{K_{AB}}$}\
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1174
\end{tabular}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1175
\end{center}\pause
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1176
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1177
\bl{$B$} believes it is following the correct protocol,
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1178
intruder \bl{$I$} can form the correct response because it knows \bl{$K_{AB}$} and
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1179
talks to \bl{$B$} masquerading as \bl{$A$}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1180
\end{frame}}
a42bbdfe5dd9 more slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 117
diff changeset
  1181
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1182
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1183
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1184
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1185
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1186
\frametitle{Time-Stamps}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1187
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1188
The Schroeder-Needham protocol can be fixed by including a time-stamp (e.g., in Kerberos):
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1189
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1190
\begin{center}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1191
\begin{tabular}{r@ {\hspace{1mm}}l}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1192
\bl{$A \rightarrow S :$} & \bl{$A, B, N_A$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1193
\bl{$S \rightarrow A :$} & \bl{$\{N_A, B, K_{AB},\{K_{AB}, A, T_S\}_{K_{BS}} \}_{K_{AS}}$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1194
\bl{$A \rightarrow B :$} & \bl{$\{K_{AB}, A, T_S\}_{K_{BS}} $}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1195
\bl{$B \rightarrow A :$} & \bl{$\{N_B\}_{K_{AB}}$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1196
\bl{$A \rightarrow B :$} & \bl{$\{N_B-1\}_{K_{AB}}$}\\
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1197
\end{tabular}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1198
\end{center}\bigskip\pause
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1199
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1200
but nothing is for free: then you need to synchronise time and possibly become a victim to
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1201
timing attacks
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1202
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1203
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1204
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1205
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1206
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1207
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1208
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1209
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1210
A Man-in-the-middle attack in real life:
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1211
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1212
\begin{itemize}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1213
\item the card only says yes to the terminal if the PIN is correct
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1214
\item trick the card in thinking transaction is verified by signature
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1215
\item trick the terminal in thinking the transaction was verified by PIN
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1216
\end{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1217
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1218
\begin{minipage}{1.1\textwidth}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1219
\begin{center}
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1220
\mbox{}\hspace{-6mm}\includegraphics[scale=0.5]{../pics/chip-attack.png}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1221
\includegraphics[scale=0.3]{../pics/chipnpinflaw.png}
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1222
\end{center}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1223
\end{minipage}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1224
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1225
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1226
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1227
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1228
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1229
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1230
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1231
\frametitle{Problems with EMV}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1232
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1233
\begin{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1234
\item it is a wrapper for many protocols
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1235
\item specification by consensus (resulted unmanageable complexity)
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1236
\item its specification is 700 pages in English plus 2000+ pages for testing, additionally some 
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1237
further parts are secret
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1238
\item other attacks have been found
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1239
\end{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1240
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1241
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1242
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1243
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1244
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1245
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1246
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1247
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1248
\frametitle{\begin{tabular}{@{}c@{}}Problems with WEP (Wifi)\end{tabular}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1249
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1250
\begin{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1251
\item a standard ratified in 1999
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1252
\item the protocol was designed by a committee not including cryptographers
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1253
\item it used the RC4 encryption algorithm which is a stream cipher requiring a unique nonce
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1254
\item WEP did not allocate enough bits for the nonce
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1255
\item for authenticating packets it used CRC checksum which can be easily broken
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1256
\item the network password was used to directly encrypt packages (instead of a key negotiation protocol)\bigskip
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1257
\item encryption was turned off by default
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1258
\end{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1259
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1260
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1261
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1262
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1263
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1264
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1265
\mode<presentation>{
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1266
\begin{frame}[c]
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1267
\frametitle{Protocols are Difficult}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1268
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1269
\begin{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1270
\item even the systems designed by experts regularly fail\medskip
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1271
\item try to make everything explicit (you need to authenticate all data you might rely on)\medskip
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1272
\item the one who can fix a system should also be liable for the losses\medskip
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1273
\item cryptography is often not {\bf the} answer\bigskip\bigskip  
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1274
\end{itemize}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1275
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1276
\end{frame}}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1277
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1278
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1279
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1280
\mode<presentation>{
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1281
\begin{frame}[c]
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1282
\frametitle{Best Practices}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1283
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1284
{\bf Principle 1:} Every message should say what it means: the interpretation of 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1285
a message should not depend on the context.\bigskip\pause
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1286
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1287
{\bf Principle 2:} If the identity of a principal is essential to the meaning of a message, it is prudent 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1288
to mention the principal’s name explicitly in the message (though difficult).\bigskip
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1289
120
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1290
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1291
\end{frame}}
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1292
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
99d408cfcfb3 added new slides
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 119
diff changeset
  1293
43
Christian Urban <urbanc@in.tum.de>
parents: 41
diff changeset
  1294
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <urbanc@in.tum.de>
parents: 41
diff changeset
  1295
\mode<presentation>{
Christian Urban <urbanc@in.tum.de>
parents: 41
diff changeset
  1296
\begin{frame}[c]
Christian Urban <urbanc@in.tum.de>
parents: 41
diff changeset
  1297
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1298
{\bf Principle 3:} Be clear about why encryption is being
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1299
done. Encryption is not cheap, and not asking precisely why it is
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1300
being done can lead to redundancy. Encryption is not synonymous with
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1301
security.
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1302
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1303
\begin{center}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1304
Possible Uses of Encryption
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1305
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1306
\begin{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1307
\item Preservation of confidentiality: \bl{$\{X\}_K$} only those that have \bl{$K$} may recover \bl{$X$}.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1308
\item Guarantee authenticity: The partner is indeed some particular principal.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1309
\item Guarantee confidentiality and authenticity: binds two parts of a message --- 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1310
\bl{$\{X,Y\}_K$} is not the same as \bl{$\{X\}_K$} and \bl{$\{Y\}_K$}.
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1311
\end{itemize}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1312
\end{center}
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1313
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1314
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1315
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1316
\end{frame}}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1317
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1318
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1319
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1320
\mode<presentation>{
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1321
\begin{frame}[c]
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1322
\frametitle{Best Practices}
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1323
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1324
{\bf Principle 4:} The protocol designer should know which trust relations his protocol depends on, and why the dependence is necessary. The reasons for particular trust relations being acceptable should be explicit though they will be founded on judgment and policy rather than on logic.\bigskip
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1325
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1326
241
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1327
Example Certification Authorities: CAs are trusted to certify a key only after proper steps 
07e4d8f64ca8 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 121
diff changeset
  1328
have been taken to identify the principal that owns it.
105
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1329
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1330
\end{frame}}
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1331
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 90
diff changeset
  1332
41
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1333
\end{document}
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1334
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1335
%%% Local Variables:  
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1336
%%% mode: latex
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1337
%%% TeX-master: t
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1338
%%% End: 
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
  1339