slides/slides02.tex
changeset 105 40c51038c9e4
parent 90 d1d07f05325a
child 106 9feafc9bbe9f
equal deleted inserted replaced
104:729b86eae005 105:40c51038c9e4
     1 \documentclass[dvipsnames,14pt,t]{beamer}
     1 \documentclass[dvipsnames,14pt,t]{beamer}
     2 \usepackage{beamerthemeplainculight}
     2 \usepackage{beamerthemeplaincu}
     3 \usepackage[T1]{fontenc}
       
     4 \usepackage[latin1]{inputenc}
     3 \usepackage[latin1]{inputenc}
     5 \usepackage{mathpartir}
     4 \usepackage{mathpartir}
     6 \usepackage[absolute,overlay]{textpos}
     5 \usepackage[absolute,overlay]{textpos}
     7 \usepackage{ifthen}
     6 \usepackage{ifthen}
     8 \usepackage{tikz}
     7 \usepackage{tikz}
    69 	tabsize=2,
    68 	tabsize=2,
    70 	showspaces=false,
    69 	showspaces=false,
    71 	showstringspaces=false}
    70 	showstringspaces=false}
    72 
    71 
    73 % beamer stuff 
    72 % beamer stuff 
    74 \renewcommand{\slidecaption}{APP 02, King's College London, 2 October 2012}
    73 \renewcommand{\slidecaption}{APP 02, King's College London, 1 October 2013}
    75 
    74 
       
    75 %Bank vs Voting
       
    76 %http://www.parliament.vic.gov.au/images/stories/committees/emc/2010_Election/submissions/13_VTeague_EMC_Inquiry_No.6.pdf
       
    77 
       
    78 % first cyber attack
       
    79 %http://investigations.nbcnews.com/_news/2013/03/18/17314818-cyberattack-on-florida-election-is-first-known-case-in-us-experts-say
    76 
    80 
    77 \begin{document}
    81 \begin{document}
    78 
    82 
    79 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    83 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    80 \mode<presentation>{
    84 \mode<presentation>{
    84   \\
    88   \\
    85   \LARGE Access Control and \\[-3mm] 
    89   \LARGE Access Control and \\[-3mm] 
    86   \LARGE Privacy Policies (2)\\[-6mm] 
    90   \LARGE Privacy Policies (2)\\[-6mm] 
    87   \end{tabular}}\bigskip\bigskip\bigskip
    91   \end{tabular}}\bigskip\bigskip\bigskip
    88 
    92 
    89   %\begin{center}
       
    90   %\includegraphics[scale=1.3]{pics/barrier.jpg}
       
    91   %\end{center}
       
    92 
       
    93 \normalsize
    93 \normalsize
    94   \begin{center}
    94   \begin{center}
    95   \begin{tabular}{ll}
    95   \begin{tabular}{ll}
    96   Email:  & christian.urban at kcl.ac.uk\\
    96   Email:  & christian.urban at kcl.ac.uk\\
    97   Of$\!$fice: & S1.27 (1st floor Strand Building)\\
    97   Office: & S1.27 (1st floor Strand Building)\\
    98   Slides: & KEATS (also home work is there)
    98   Slides: & KEATS (also homework is there)\\
    99   \end{tabular}
    99   \end{tabular}
   100   \end{center}
   100   \end{center}
   101 
   101 
   102 
   102 
   103 \end{frame}}
   103 \end{frame}}
   104  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   104  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   105 
   105 
   106 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   106 
   107 \mode<presentation>{
   107 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   108 \begin{frame}[c]
   108 \mode<presentation>{
   109 \frametitle{\begin{tabular}{c}Homework\end{tabular}}
   109 \begin{frame}[c]
   110 
   110 \frametitle{\begin{tabular}{c}This Course is about\\[-2mm]  ``Satan's Computer''\end{tabular}}
   111 
   111 
   112 \ldots{} I have a question about the homework.\\[3mm] 
   112 Ross Anderson and Roger Needham wrote:\bigskip
   113 Is it required to submit the homework before\\ 
   113 
   114 the next lecture?\\[5mm]
   114 \begin{tikzpicture}
   115 
   115 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   116 Thank you!\\
   116 {\normalsize\color{darkgray}
   117 Anonymous
   117 \begin{minipage}{10cm}\raggedright\small
   118   
   118 ``In effect, our task is to program a computer which gives 
   119 \end{frame}}
   119 answers which are subtly and maliciously wrong at the most 
   120 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   120 inconvenient possible moment\ldots{} we hope that the lessons 
   121 
   121 learned from programming Satan's computer may be helpful 
   122 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   122 in tackling the more common problem of programming Murphy's.''
   123 \mode<presentation>{
   123 \end{minipage}};
   124 \begin{frame}[c]
   124 \end{tikzpicture}\\[30mm]
   125 
   125 
   126 \begin{center}
   126 \only<2>{
   127 \begin{tabular}[t]{c}
   127 \begin{textblock}{11}(2,12)
   128 \includegraphics[scale=1.2]{pics/barrier.jpg}\\
   128 \begin{tabular}{c}
   129 future lectures
   129 \includegraphics[scale=0.12]{pics/ariane.jpg}\\[-2mm]
   130 \end{tabular}\;\;\;
   130 \footnotesize Murphy's computer
   131 \onslide<2>{
       
   132 \begin{tabular}[t]{c}
       
   133 \includegraphics[scale=0.32]{pics/trainwreck.jpg}\\
       
   134 today
       
   135 \end{tabular}
   131 \end{tabular}
   136 }
       
   137 \end{center}
       
   138 
       
   139   
       
   140 \end{frame}}
       
   141 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   142 
       
   143 
       
   144 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   145 \mode<presentation>{
       
   146 \begin{frame}[c]
       
   147 \frametitle{\begin{tabular}{@ {}c@ {}}SmartWater\end{tabular}}
       
   148 
       
   149 \begin{textblock}{1}(1,3)
       
   150 \begin{tabular}{c}
   132 \begin{tabular}{c}
   151 \includegraphics[scale=0.15]{pics/SmartWater}
   133 \includegraphics[scale=0.15]{pics/mobile.jpg}\;
       
   134 \includegraphics[scale=0.06]{pics/pinsentry.jpg}\\[-2mm]
       
   135 \footnotesize Satan's computers
   152 \end{tabular}
   136 \end{tabular}
   153 \end{textblock}
   137 \end{textblock}}
   154 
   138 
   155 
   139 \end{frame}}
   156 \begin{textblock}{8.5}(7,3)
   140 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   157 \begin{itemize}
   141 
   158 \item seems helpful for preventing cable theft\medskip
   142 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   159 \item wouldn't be helpful to make your property safe, because of possible abuse\medskip
   143 \mode<presentation>{
   160 
   144 \begin{frame}[c]
   161 \item security is always a tradeoff
   145 \frametitle{\Large\begin{tabular}{c}User-Tracking Without Cookies\end{tabular}}
   162 \end{itemize}
   146 
   163 \end{textblock}
   147 Can you track a user {\bf without}:
   164 
   148 
   165 \end{frame}}
   149 \begin{itemize}
   166 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   150 \item Cookies
   167 
   151 \item Javascript
   168 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   152 \item LocalStorage/SessionStorage/GlobalStorage
   169 \mode<presentation>{
   153 \item Flash, Java or other plugins
   170 \begin{frame}[c]
   154 \item Your IP address or user agent string
   171 \frametitle{\begin{tabular}{@ {}c@ {}}Plain-text Passwords at IEEE\end{tabular}}
   155 \item Any methods employed by Panopticlick\\
   172 
   156 \mbox{}\hfill $\rightarrow$ \textcolor{blue}{\url{https://panopticlick.eff.org/}}
   173 \small\textcolor{gray}{On 25 September 2012, a report on a data breach at IEEE:}
   157 \end{itemize}
   174 
   158 
   175 
   159 Even when you disabled cookies entirely, have Javascript turned off and use a VPN service.\\\pause
   176 \begin{itemize}
   160 And numerous sites already use it (Google).
   177 \item IEEE is a standards organisation (not-for-profit) 
   161 
   178 \item many standards in CS are by IEEE\medskip
   162 \end{frame}}
   179 \item 100k plain-text passwords were recorded in logs
   163 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   180 \item the logs were openly accessible on their FTP server
   164 
   181 \end{itemize}\bigskip
   165 
   182 
   166 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   183 \begin{flushright}\small
   167 \mode<presentation>{
   184 \textcolor{gray}{\url{http://ieeelog.com}}
   168 \begin{frame}[c]
   185 \end{flushright}
   169 \frametitle{\begin{tabular}{c}Web-Protocol\end{tabular}}
       
   170 
       
   171 \only<1->{
       
   172 \begin{textblock}{1}(2,2)
       
   173   \begin{tikzpicture}[scale=1.3]
       
   174   \draw[white] (0,0) node (X) {\includegraphics[scale=0.12]{pics/firefox.jpg}};
       
   175   \end{tikzpicture}
       
   176 \end{textblock}}
       
   177 
       
   178 \only<1->{
       
   179 \begin{textblock}{1}(11,2)
       
   180   \begin{tikzpicture}[scale=1.3]
       
   181   \draw[white] (0,0) node (X) {\includegraphics[scale=0.15]{pics/servers.png}};
       
   182   \end{tikzpicture}
       
   183 \end{textblock}}
       
   184 
       
   185 \only<1->{
       
   186 \begin{textblock}{1}(5,2.5)
       
   187   \begin{tikzpicture}[scale=1.3]
       
   188   \draw[white] (0,0) node (X) {};
       
   189   \draw[white] (3,0) node (Y) {};
       
   190   \draw[red, ->, line width = 2mm] (X) -- (Y);
       
   191   \node [inner sep=5pt,label=above:\textcolor{black}{\small GET static.jpg}] at ($ (X)!.5!(Y) $) {};
       
   192   \end{tikzpicture}
       
   193 \end{textblock}}
       
   194 
       
   195 \only<2->{
       
   196 \begin{textblock}{1}(5,6)
       
   197   \begin{tikzpicture}[scale=1.3]
       
   198   \draw[white] (0,0) node (X) {};
       
   199   \draw[white] (3,0) node (Y) {};
       
   200   \draw[red, <-, line width = 2mm] (X) -- (Y);
       
   201   \node [inner sep=5pt,label=below:\textcolor{black}{\small ETag: 7b33de1}] at ($ (X)!.5!(Y) $) {};
       
   202    \node [inner sep=5pt,label=above:{\includegraphics[scale=0.15]{pics/tvtestscreen.jpg}}] at ($ (X)!.5!(Y) $) {};
       
   203   \end{tikzpicture}
       
   204 \end{textblock}}
       
   205 
       
   206 \only<3->{
       
   207 \begin{textblock}{1}(4.2,11)
       
   208   \begin{tikzpicture}[scale=1.3]
       
   209   \draw[white] (0,0) node (X) {};
       
   210   \draw[white] (3,0) node (Y) {};
       
   211   \draw[red, ->, line width = 2mm] (X) -- (Y);
       
   212   \node [inner sep=5pt,label=above:\textcolor{black}{\small GET static.jpg ETag: 7b33de1}] at ($ (X)!.5!(Y) $) {};
       
   213   \end{tikzpicture}
       
   214 \end{textblock}}
       
   215 
       
   216 \only<4->{
       
   217 \begin{textblock}{1}(4.2,13.9)
       
   218   \begin{tikzpicture}[scale=1.3]
       
   219   \draw[white] (0,0) node (X) {};
       
   220   \draw[white] (3,0) node (Y) {};
       
   221   \draw[red, <-, line width = 2mm] (X) -- (Y);
       
   222   \node [inner sep=5pt,label=below:\textcolor{black}{\small HTTP/1.1 304 (Not Modified)}] at ($ (X)!.5!(Y) $) {};
       
   223   \end{tikzpicture}
       
   224 \end{textblock}}
       
   225 
       
   226 \end{frame}}
       
   227 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   228 
       
   229 
       
   230 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   231 \mode<presentation>{
       
   232 \begin{frame}[c]
       
   233 \frametitle{Today's Lecture}
       
   234 \begin{center}
       
   235 \begin{tabular}{cc}
       
   236 \large online banking  & \hspace{6mm}\large e-voting\\
       
   237 \textcolor{gray}{solved} & \hspace{6mm}\textcolor{gray}{unsolved}\\
       
   238 \end{tabular}
       
   239 \end{center}
       
   240 
       
   241 
       
   242 \end{frame}}
       
   243 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
       
   244 
       
   245 
       
   246 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   247 \mode<presentation>{
       
   248 \begin{frame}[t]
       
   249 \frametitle{\begin{tabular}{@ {}c@ {}}Voting as Security Problem\end{tabular}}
       
   250 
       
   251 What are the security requirements of a voting system?\bigskip
       
   252 
       
   253 \begin{itemize}
       
   254 \item<2->Integrity 
       
   255 \item<3->Ballot Secrecy
       
   256 \item<5->Voter Authentication
       
   257 \item<6->Enfranchisement
       
   258 \item<7->Availability
       
   259 \end{itemize}
   186 
   260 
   187 \only<2>{
   261 \only<2>{
   188 \begin{textblock}{11}(3,2)
   262 \begin{textblock}{5.5}(8,5)
   189 \begin{tikzpicture}
   263 \begin{tikzpicture}
   190 \draw (0,0) node[inner sep=2mm,fill=white, ultra thick, draw=red, rounded corners=2mm] 
   264 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm, text centered] 
   191 {\normalsize\color{darkgray}
   265 {\small
   192 \begin{minipage}{7.5cm}\raggedright\small
   266 \begin{minipage}{5cm}\raggedright
   193 \includegraphics[scale=0.6]{pics/IEEElog.jpg}
   267 \begin{center}
       
   268 \begin{minipage}{4.5cm}
       
   269 \begin{itemize}
       
   270 \item The outcome matches with the voters' intend.
       
   271 \item There might be gigantic sums at stake and need to be defended against.
       
   272 \end{itemize}
       
   273 \end{minipage}
       
   274 \end{center}
   194 \end{minipage}};
   275 \end{minipage}};
   195 \end{tikzpicture}
   276 \end{tikzpicture}
   196 \end{textblock}}
   277 \end{textblock}}
   197 
   278 
   198 \end{frame}}
   279 \only<4>{
   199 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   280 \begin{textblock}{5.5}(8,5)
   200 
   281 \begin{tikzpicture}
   201 
   282 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm, text centered] 
   202 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   283 {\small
   203 \mode<presentation>{
   284 \begin{minipage}{5cm}\raggedright
   204 \begin{frame}[c]
   285 \begin{center}
   205 \frametitle{\begin{tabular}{@ {}c@ {}}Virgin Mobile (USA)\end{tabular}}
   286 \begin{minipage}{4.5cm}
   206 
   287 \begin{itemize}
   207 \begin{flushright}\small
   288 \item Nobody can find out how you voted.
   208 \textcolor{gray}{\url{http://arstechnica.com/security/2012/09/virgin-mobile-password-crack-risk/}}
   289 \item (Stronger) Even if you try, you cannot prove how you voted.
   209 \end{flushright}
   290 \end{itemize}
   210 
   291 \end{minipage}
   211 \begin{itemize}
   292 \end{center}
   212 \item for online accounts passwords must be 6 digits
   293 \end{minipage}};
   213 \item you must cycle through 1M combinations (online)\pause\bigskip
   294 \end{tikzpicture}
   214 
   295 \end{textblock}}
   215 \item he limited the attack on his own account to 1 guess per second, \alert{\bf and}
   296 
   216 \item wrote a script that cleared the cookie set after each guess\pause
   297 \only<5>{
   217 \item has been fixed now
   298 \begin{textblock}{5.5}(8,5)
   218 \end{itemize}
   299 \begin{tikzpicture}
   219 
   300 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm, text centered] 
   220 
   301 {\small
   221 
   302 \begin{minipage}{5cm}\raggedright
   222 \end{frame}}
   303 \begin{center}
   223 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   304 \begin{minipage}{4.5cm}
   224 
   305 \begin{itemize}
   225 
   306 \item Only authorised voters can vote up to the permitted number of votes.
   226 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   307 \end{itemize}
   227 \mode<presentation>{
   308 \end{minipage}
   228 \begin{frame}[c]
   309 \end{center}
   229 \frametitle{\begin{tabular}{@ {}c@ {}}Smash the Stack for Fun \ldots\end{tabular}}
   310 \end{minipage}};
   230 
   311 \end{tikzpicture}
   231 \begin{itemize}
   312 \end{textblock}}
   232 \item ``smashing the stack attacks'' or ``buffer overflow attacks''
   313 
   233 \item one of the most popular attacks;\\ attack of the (last) decade\\ ($>$ 50\% of security incidents reported at CERT are related to buffer overflows)
   314 \only<6>{
   234 \begin{flushright}\small
   315 \begin{textblock}{5.5}(8,5)
   235 \textcolor{gray}{\url{http://www.kb.cert.org/vuls}}
   316 \begin{tikzpicture}
   236 \end{flushright}
   317 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm, text centered] 
       
   318 {\small
       
   319 \begin{minipage}{5cm}\raggedright
       
   320 \begin{center}
       
   321 \begin{minipage}{4.5cm}
       
   322 \begin{itemize}
       
   323 \item Authorised voters should have the opportunity to vote.
       
   324 \end{itemize}
       
   325 \end{minipage}
       
   326 \end{center}
       
   327 \end{minipage}};
       
   328 \end{tikzpicture}
       
   329 \end{textblock}}
       
   330 
       
   331 \only<7>{
       
   332 \begin{textblock}{5.5}(8,5)
       
   333 \begin{tikzpicture}
       
   334 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm, text centered] 
       
   335 {\small
       
   336 \begin{minipage}{5cm}\raggedright
       
   337 \begin{center}
       
   338 \begin{minipage}{4.5cm}
       
   339 \begin{itemize}
       
   340 \item The voting system should accept all authorised votes and produce results in a timely manner.
       
   341 \end{itemize}
       
   342 \end{minipage}
       
   343 \end{center}
       
   344 \end{minipage}};
       
   345 \end{tikzpicture}
       
   346 \end{textblock}}
       
   347 
       
   348 \end{frame}}
       
   349 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   350 
       
   351 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   352 \mode<presentation>{
       
   353 \begin{frame}[t]
       
   354 \frametitle{\begin{tabular}{@ {}c@ {}}Problems with Voting\end{tabular}}
       
   355 
       
   356 
       
   357 \begin{center}\large
       
   358 \begin{tabular}{rcl}
       
   359 Integrity & vs. & Ballot Secrecy\bigskip\\
       
   360 Authentication & vs. &Enfranchisement   
       
   361 \end{tabular}
       
   362 \end{center}\bigskip\bigskip\pause
       
   363 
       
   364 Further constraints:
       
   365 
       
   366 \begin{itemize}
       
   367 \item costs
       
   368 \item accessibility
       
   369 \item convenience
       
   370 \item intelligibility 
       
   371 \end{itemize}
       
   372 \end{frame}}
       
   373 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   374 
       
   375 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   376 \mode<presentation>{
       
   377 \begin{frame}[t]
       
   378 \frametitle{\begin{tabular}{@ {}c@ {}}Traditional Ballot Boxes\end{tabular}}
       
   379 
       
   380 
       
   381 \begin{center}
       
   382 \includegraphics[scale=2.5]{pics/ballotbox.jpg}
       
   383 \end{center}\pause\bigskip
       
   384 
       
   385 they need a ``protocol''
       
   386 
       
   387 
       
   388 \end{frame}}
       
   389 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   390 
       
   391 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   392 \mode<presentation>{
       
   393 \begin{frame}[t]
       
   394 \frametitle{\begin{tabular}{@ {}c@ {}}E-Voting\end{tabular}}
       
   395 
       
   396 
       
   397 \begin{itemize}
       
   398 \item The Netherlands between 1997 - 2006 had electronic voting machines\\
       
   399 \textcolor{gray}{(hacktivists had found: they can be hacked and also emitted radio signals revealing how you voted)}
       
   400 
       
   401 \item Germany had used them in pilot studies\\ 
       
   402 \textcolor{gray}{(in 2007 a law suit has reached the highest court and it rejected electronic voting
       
   403 on the grounds of not being understandable by the general public)}
       
   404 
       
   405 \item UK used optical scan voting systems in a few polls
       
   406 \end{itemize}
       
   407 \end{frame}}
       
   408 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   409 
       
   410 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   411 \mode<presentation>{
       
   412 \begin{frame}[t]
       
   413 \frametitle{\begin{tabular}{@ {}c@ {}}E-Voting\end{tabular}}
       
   414 
       
   415 \mbox{}\\[-12mm]
       
   416 \begin{itemize}
       
   417 \item US used mechanical machines since the 30s, later punch cards, now DREs and 
       
   418 optical scan voting machines
       
   419 
       
   420 \item Estonia used in 2007 the Internet for national elections 
       
   421 \textcolor{gray}{(there were earlier pilot studies in other countries)}
       
   422 
       
   423 \item India uses e-voting devices  since at least 2003\\
       
   424 \textcolor{gray}{(``keep-it-simple'' machines produced by a government owned company)}
       
   425 
       
   426 \item South Africa used software for its tallying in the 1993 elections (when Nelson Mandela was elected)
       
   427 \textcolor{gray}{(they found the tallying software was rigged, but they were able to tally manually)}
       
   428 \end{itemize}
       
   429 \end{frame}}
       
   430 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   431 
       
   432 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   433 \mode<presentation>{
       
   434 \begin{frame}[t]
       
   435 \frametitle{\begin{tabular}{@ {}c@ {}}A Brief History of Voting\end{tabular}}
       
   436 
       
   437 
       
   438 \begin{itemize}
       
   439 \item Athenians
       
   440 \begin{itemize}
       
   441 \item show of hands
       
   442 \item ballots on pieces of pottery
       
   443 \item different colours of stones
       
   444 \item ``facebook''-like authorisation 
       
   445 \end{itemize}\bigskip
       
   446 
       
   447 \textcolor{gray}{problems with vote buying / no ballot privacy}\bigskip
       
   448 
       
   449 
       
   450 \item French Revolution and the US Constitution got things ``started'' with 
       
   451 paper ballots (you first had to bring your own; later they were pre-printed by parties)
       
   452 \end{itemize}
       
   453 \end{frame}}
       
   454 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   455 
       
   456 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   457 \mode<presentation>{
       
   458 \begin{frame}[t]
       
   459 \frametitle{\begin{tabular}{@ {}c@ {}}Ballot Boxes\end{tabular}}
       
   460 
       
   461 Security policies involved with paper ballots:
       
   462 
       
   463 \begin{enumerate}
       
   464 \item you need to check that the ballot box is empty at the start of the poll / no false bottom (to prevent ballot stuffing)
       
   465 \item you need to guard the ballot box during the poll until counting
       
   466 \item tallied by a team at the end of the poll (independent observers) 
       
   467 \end{enumerate}
       
   468 
       
   469 \begin{center}
       
   470 \includegraphics[scale=1.5]{pics/ballotbox.jpg}
       
   471 \end{center}
       
   472 
       
   473 
       
   474 \end{frame}}
       
   475 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   476 
       
   477 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   478 \mode<presentation>{
       
   479 \begin{frame}[t]
       
   480 \frametitle{\begin{tabular}{@ {}c@ {}}Paper Ballots\end{tabular}}
       
   481 
       
   482 What can go wrong with paper ballots?
       
   483 
       
   484 \only<2>{
       
   485 \begin{center}
       
   486 \includegraphics[scale=0.8]{pics/tweet.jpg}\\
       
   487 \footnotesize William M.~Tweed, US Politician in 1860's\\
       
   488 ``As long as I count the votes, what are you going to do about it?''
       
   489 \end{center}}
       
   490 
       
   491 \only<3>{
   237 \medskip
   492 \medskip
   238 \item made popular in an article by Elias Levy\\ (also known as Aleph One):\\
   493 \begin{center}
   239 \begin{center}
   494 \begin{minipage}{10cm}
   240 {\bf ``Smashing The Stack For Fun and Profit''}
   495 {\bf Chain Voting Attack}
   241 \end{center}\medskip
   496 \begin{enumerate}
   242 
   497 \item you obtain a blank ballot and fill it out as you want
   243 \begin{flushright}
   498 \item you give it to a voter outside the polling station
   244 \small\textcolor{gray}{\url{http://www.phrack.org}, Issue 49, Article 14}
   499 \item voter receives a new blank ballot
   245 \end{flushright} 
   500 \item voter submits prefilled ballot
   246  
   501 \item voter gives blank ballot to you, you give money
   247 \end{itemize}
   502 \item goto 1
   248 
   503 \end{enumerate}
   249 
   504 \end{minipage}
   250 \end{frame}}
   505 \end{center}
   251 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   506 }
   252 
   507 
   253 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   508 \end{frame}}
   254 \mode<presentation>{
   509 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   255 \begin{frame}[c]
   510 
   256 \frametitle{\begin{tabular}{c}The Problem\end{tabular}}
   511 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   257 
   512 \mode<presentation>{
   258 \begin{itemize}
   513 \begin{frame}[c]
   259 \item The basic problem is that library routines in C look as follows:
   514 
   260 \begin{center}
   515 Which security requirements do paper ballots satisfy better than voice voting?\bigskip
   261 {\lstset{language=Java}\fontsize{8}{10}\selectfont%
   516 
   262 \texttt{\lstinputlisting{app5.c}}}
   517 \begin{itemize}
   263 \end{center}
   518 \item Integrity
   264 \item the resulting problems are often remotely exploitable 
   519 \item Enfranchisement
   265 \item can be used to circumvents all access control
   520 \item Ballot secrecy
   266 (botnets for further attacks)
   521 \item Voter authentication
   267 \end{itemize}
   522 \item Availability
   268   
   523 \end{itemize}
   269 \end{frame}}
   524 
   270 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   525 \end{frame}}
   271 
   526 
   272 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   527 
   273 \mode<presentation>{
   528 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   274 \begin{frame}[c]
   529 \mode<presentation>{
   275 \frametitle{\begin{tabular}{c}Variants\end{tabular}}
   530 \begin{frame}[t]
   276 
   531 \frametitle{\begin{tabular}{@ {}c@ {}}Mechanical Voting Machines\end{tabular}}
   277 There are many variants:
   532 
   278 
   533 \begin{itemize}
   279 \begin{itemize}
   534 \item<1-> Lever Voting Machines (ca.~1930 - 1990)
   280 \item return-to-lib-C attacks
   535 \only<1>{
   281 \item heap-smashing attacks\\
   536 \begin{center}
   282 \textcolor{gray}{\small(Slammer Worm in 2003 infected 90\% of vulnerable systems within 10 minutes)}\bigskip
   537 \includegraphics[scale=0.56]{pics/leavermachine.jpg}
   283 
   538 \end{center}
   284 \item ``zero-days-attacks'' (new unknown vulnerability)
   539 }
   285 \end{itemize}
   540 \item<2->Punch Cards (ca.~1950 - 2000)
   286   
   541 \only<2>{
   287 \end{frame}}
   542 \begin{center}
   288 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   543 \includegraphics[scale=0.5]{pics/punchcard1.jpg}\;\;
   289 
   544 \includegraphics[scale=0.46]{pics/punchcard2.jpg}
   290 
   545 \end{center}
   291 
   546 }
   292 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   547 \end{itemize}
   293 \mode<presentation>{
   548 
   294 \begin{frame}[c]
   549 
   295 
   550 
   296 \small
   551 \end{frame}}
   297 \texttt{my\_float} is printed twice:\bigskip
   552 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   298 
   553 
   299 {\lstset{language=Java}\fontsize{8}{10}\selectfont%
   554 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   300 \texttt{\lstinputlisting{C1.c}}}
   555 \mode<presentation>{
   301 
   556 \begin{frame}[t]
   302   
   557 \frametitle{\begin{tabular}{@ {}c@ {}}Electronic Voting Machines\end{tabular}}
   303 \end{frame}}
   558 
   304 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   559 \begin{center}
   305 
   560 \begin{tabular}{c}
   306 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   561 \includegraphics[scale=0.45]{pics/dre1.jpg}\; 
   307 \mode<presentation>{
   562 \includegraphics[scale=0.40]{pics/dre2.jpg}\\\hline\\
   308 \begin{frame}[c]
   563 \includegraphics[scale=0.5]{pics/opticalscan.jpg} 
   309 
   564 \end{tabular}
   310 \begin{center}
   565 \end{center}
   311 \only<1>{\includegraphics[scale=0.9]{pics/stack1}\;\;}
   566 
   312 \only<2>{\includegraphics[scale=0.9]{pics/stack2}\;\;}
   567 \only<1->{
   313 \only<3>{\includegraphics[scale=0.9]{pics/stack3}\;\;}
   568 \begin{textblock}{5.5}(1,4)
   314 \end{center}
   569 DREs
   315   
   570 \end{textblock}}
   316   
   571 \only<1->{
   317 \end{frame}}
   572 \begin{textblock}{5.5}(1,11)
   318 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   573 Optical Scan
   319 
   574 \end{textblock}}
   320 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   575 
   321 \mode<presentation>{
   576 \only<2>{
   322 \begin{frame}[c]
   577 \begin{textblock}{5.5}(0.5,14.5)
   323 
   578 all are computers
   324 {\lstset{language=Java}\fontsize{8}{10}\selectfont%
   579 \end{textblock}}
   325 \texttt{\lstinputlisting{C2.c}}}
   580 
   326 
   581 \end{frame}}
   327   
   582 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   328 \end{frame}}
   583 
   329 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   584 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   330 
   585 \mode<presentation>{
   331 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   586 \begin{frame}[c]
   332 \mode<presentation>{
   587 \frametitle{\begin{tabular}{@ {}c@ {}}DREs\end{tabular}}
   333 \begin{frame}[c]
   588 
   334 
   589 Direct-recording electronic voting machines\\ 
   335 \small
   590 (votes are recorded for example on memory cards)
   336 A programmer might be careful, but still introduce vulnerabilities:\bigskip
   591 
   337 
   592 typically touchscreen machines
   338 {\lstset{language=Java}\fontsize{8}{10}\selectfont%
   593 
   339 \texttt{\lstinputlisting{C2a.c}}}
   594 usually no papertrail
   340 
   595 
   341   
   596 \begin{center}
   342 \end{frame}}
   597 \includegraphics[scale=0.56]{pics/dre1.jpg}
   343 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   598 \end{center}
   344 
   599 
   345 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   600 
   346 \mode<presentation>{
   601 \end{frame}}
   347 \begin{frame}[c]
   602 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   348 \frametitle{\begin{tabular}{c}Payloads\end{tabular}}
   603 
   349 
   604 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   350 \begin{itemize}
   605 \mode<presentation>{
   351 \item the idea is you store some code as part to the buffer
   606 \begin{frame}[c]
   352 \item you then override the return address to execute this payload\medskip
   607 \frametitle{\begin{tabular}{@ {}c@ {}}Diebold Machines\end{tabular}}
   353 \item normally you start a root-shell\pause
   608 
   354 \item difficulty is to guess the right place where to ``jump''
   609 The work by J.~Alex Halderman:
   355 \end{itemize}
   610 
   356   
   611 \begin{itemize}
   357 \end{frame}}
   612 \item acquired a machine from an anonymous source\medskip
   358 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   613 \item the source code running the machine was tried to be kept secret\medskip\pause
   359 
   614 
   360 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   615 \item first reversed-engineered the machine (extremely tedious)
   361 \mode<presentation>{
   616 \item could completely reboot the machine and even install a virus that infects other Diebold machines
   362 \begin{frame}[c]
   617 \item obtained also the source code for other machines
   363 \frametitle{\begin{tabular}{c}Payloads (2)\end{tabular}}
   618 \end{itemize}
   364 
   619 
   365 \begin{itemize}
   620 \end{frame}}
   366 \item another difficulty is that the code is not allowed to contain \texttt{$\backslash$x00}:
   621 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   367 
   622 
   368 \begin{center}
   623 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   369 \texttt{xorl   \%eax, \%eax}
   624 \mode<presentation>{
   370 \end{center}
   625 \begin{frame}[c]
   371 \end{itemize}\bigskip\bigskip
   626 \frametitle{\begin{tabular}{@ {}c@ {}}Diebold Machines\end{tabular}}
   372   
   627 
   373 {\lstset{language=Java}\fontsize{8}{10}\selectfont%
   628 What could go wrong?\pause \;\;Failure-in-depth.\bigskip\pause
   374 \texttt{\lstinputlisting{app5.c}}}
   629 
   375   
   630 A non-obvious problem:
   376 \end{frame}}
   631 
   377 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   632 \begin{itemize}
   378 
   633 \item you can nowadays get old machines, which still store old polls
   379 
   634 
   380 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   635 \item the paper ballot box needed to be secured during the voting until counting;
   381 \mode<presentation>{
   636 e-voting machines need to be secured during the entire life-time  
   382 \begin{frame}[c]
   637 \end{itemize}
   383 \frametitle{\begin{tabular}{c}Format String Vulnerability\end{tabular}}
   638 
   384 
   639 \end{frame}}
   385 \small
   640 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   386 \texttt{string} is nowhere used:\bigskip
   641 
   387 
   642 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   388 {\lstset{language=Java}\fontsize{8}{10}\selectfont%
   643 \mode<presentation>{
   389 \texttt{\lstinputlisting{programs/C4.c}}}\bigskip
   644 \begin{frame}[c]
   390 
   645 \frametitle{\begin{tabular}{@ {}c@ {}}Paper Trail\end{tabular}}
   391 this vulnerability can be used to read out the stack
   646 
   392   
   647 Conclusion:\\ Any electronic solution should have a paper trail.
   393 \end{frame}}
   648 
   394 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   649 \begin{center}
   395 
   650 \begin{tabular}{c}
   396 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   651 \includegraphics[scale=0.5]{pics/opticalscan.jpg} 
   397 \mode<presentation>{
   652 \end{tabular}
   398 \begin{frame}[c]
   653 \end{center}\pause
   399 \frametitle{\begin{tabular}{c}Protections against BO Attacks\end{tabular}}
   654 
   400 
   655 You still have to solve problems about
   401 \begin{itemize}
   656 voter registration, voter authentification, guarding against tampering
   402 \item use safe library functions
   657 
   403 \item ensure stack data is not executable (can be defeated)
   658 \end{frame}}
   404 \item address space randomisation (makes one-size-fits-all more difficult)
   659 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   405 \item choice of programming language (one of the selling points of Java)
   660 
   406 
   661 
   407 \end{itemize}
   662 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   408   
   663 \mode<presentation>{
   409 \end{frame}}
   664 \begin{frame}[c]
   410 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   665 \frametitle{\begin{tabular}{@ {}c@ {}}E-Voting in India\end{tabular}}
   411 
   666 
   412 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   667 Their underlying engineering principle is ``keep-it-simple'':
   413 \mode<presentation>{
   668 
   414 \begin{frame}[c]
   669 \begin{center}
   415 \frametitle{\begin{tabular}{c}Security Goals\end{tabular}}
   670 \begin{tabular}{c}
   416 
   671 \includegraphics[scale=1.05]{pics/indiaellection.jpg}\;\;
   417 \begin{itemize}
   672 \includegraphics[scale=0.40]{pics/india1.jpg}
   418 \item Prevent common vulnerabilities from occurring (e.g. buffer overflows)\pause
   673 \end{tabular}
   419 \item Recover from attacks (traceability and auditing of security-relevant actions)\pause
   674 \end{center}\medskip\pause
   420 \item Monitoring (detect attacks)\pause
   675 
   421 \item Privacy, confidentiality, anonymity (to protect secrets)\pause
   676 Official claims: ``perfect'', ``tamperproof'', ``no need for technical improvements'' , ``infallible'' 
   422 \item Authenticity (needed for access control)\pause
   677 \end{frame}}
   423 \item Integrity (prevent unwanted modification or tampering)\pause
   678 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   424 \item Availability and reliability (reduce the risk of DoS attacks)
   679 
   425 \end{itemize}
   680 
   426   
   681 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   427 \end{frame}}
   682 \mode<presentation>{
   428 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   683 \begin{frame}[c]
   429 
   684 \frametitle{\begin{tabular}{@ {}c@ {}}Lessons Learned\end{tabular}}
   430 
   685 
   431 
   686 \begin{itemize}
   432 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   687 \item keep a paper trail and design your system to keep this secure\medskip
   433 \mode<presentation>{
   688 \item make the software open source (avoid security-by-obscurity)\medskip
   434 \begin{frame}[c]
   689 \item have a simple design in order to minimise the attack surface
   435 \frametitle{\begin{tabular}{c}Homework\end{tabular}}
   690 \end{itemize}
   436 
   691 
   437 \begin{itemize}
   692 \end{frame}}
   438 \item Assume format string attacks allow you to read out the stack. What can you do
   693 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   439 	with this information?\bigskip
   694 
   440 
   695 
   441 \item Assume you can crash a program remotely. Why is this a problem?
   696 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   442 \end{itemize}
   697 \mode<presentation>{
   443   
   698 \begin{frame}[c]
       
   699 
       
   700 \begin{center}
       
   701 \includegraphics[scale=0.56]{pics/Voting1.png}
       
   702 \end{center}
       
   703 
       
   704 
       
   705 \end{frame}}
       
   706 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   707 
       
   708 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   709 \mode<presentation>{
       
   710 \begin{frame}[c]
       
   711 
       
   712 \begin{center}
       
   713 \includegraphics[scale=0.56]{pics/Voting2.png}
       
   714 \end{center}
       
   715 
       
   716 
       
   717 \end{frame}}
       
   718 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   719 
       
   720 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   721 \mode<presentation>{
       
   722 \begin{frame}[c]
       
   723 
       
   724 \begin{center}
       
   725 \includegraphics[scale=0.56]{pics/Voting3.png}
       
   726 \end{center}
       
   727 
       
   728 
       
   729 \end{frame}}
       
   730 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   731 
       
   732 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   733 \mode<presentation>{
       
   734 \begin{frame}[c]
       
   735 
       
   736 \begin{center}
       
   737 \includegraphics[scale=0.56]{pics/Voting4.png}
       
   738 \end{center}
       
   739 
       
   740 
   444 \end{frame}}
   741 \end{frame}}
   445 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   742 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   446 
   743 
   447 
   744 
   448 \end{document}
   745 \end{document}