equal
deleted
inserted
replaced
415 \end{textblock}} |
415 \end{textblock}} |
416 |
416 |
417 \end{frame}} |
417 \end{frame}} |
418 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
418 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
419 |
419 |
|
420 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
421 \mode<presentation>{ |
|
422 \begin{frame}[c] |
|
423 |
|
424 \begin{center} |
|
425 \includegraphics[scale=0.45]{pics/trainwreck.jpg}\\ |
|
426 one general defence mechanism is\\\alert{\bf defence in depth} |
|
427 \end{center} |
|
428 |
|
429 |
|
430 \end{frame}} |
|
431 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
420 |
432 |
421 |
433 |
422 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
434 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
423 \mode<presentation>{ |
435 \mode<presentation>{ |
424 \begin{frame}[c] |
436 \begin{frame}[c] |
524 |
536 |
525 \end{frame}} |
537 \end{frame}} |
526 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
538 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
527 |
539 |
528 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
540 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
529 \mode<presentation>{ |
541 %\mode<presentation>{ |
530 \begin{frame}[c] |
542 %\begin{frame}[c] |
531 |
543 % |
532 \small |
544 %\small |
533 A programmer might be careful, but still introduce vulnerabilities:\bigskip |
545 %A programmer might be careful, but still introduce vulnerabilities:\bigskip |
534 |
546 % |
535 {\lstset{language=Java}\fontsize{8}{10}\selectfont% |
547 %{\lstset{language=Java}\footnotesize |
536 \texttt{\lstinputlisting{../progs/C2a.c}}} |
548 %\texttt{\lstinputlisting{../progs/C2a.c}}} |
537 |
549 % |
538 |
550 % |
539 \end{frame}} |
551 %\end{frame}} |
540 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
552 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
541 |
553 |
542 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
554 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
543 \mode<presentation>{ |
555 \mode<presentation>{ |
544 \begin{frame}[c] |
556 \begin{frame}[c] |
580 \frametitle{\begin{tabular}{c}Format String Vulnerability\end{tabular}} |
592 \frametitle{\begin{tabular}{c}Format String Vulnerability\end{tabular}} |
581 |
593 |
582 \small |
594 \small |
583 \texttt{string} is nowhere used:\bigskip |
595 \texttt{string} is nowhere used:\bigskip |
584 |
596 |
585 {\lstset{language=Java}\fontsize{8}{10}\selectfont% |
597 {\lstset{language=Java}\footnotesize |
586 \texttt{\lstinputlisting{../progs/C4.c}}}\bigskip |
598 \texttt{\lstinputlisting{../progs/C4.c}}}\bigskip |
587 |
599 |
588 this vulnerability can be used to read out the stack |
600 this vulnerability can be used to read out the stack |
589 |
601 |
590 \end{frame}} |
602 \end{frame}} |
591 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
603 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
592 |
604 |
593 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
605 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
594 \mode<presentation>{ |
606 \mode<presentation>{ |
595 \begin{frame}[c] |
607 \begin{frame}[c] |
596 \frametitle{\begin{tabular}{c}Protections against\\ BO Attacks\end{tabular}} |
608 \frametitle{\begin{tabular}{c}Protections against\\ Buffer Overflow Attacks\end{tabular}} |
597 |
609 |
598 \begin{itemize} |
610 \begin{itemize} |
599 \item use safe library functions |
611 \item use safe library functions |
|
612 \item stack caneries |
600 \item ensure stack data is not executable (can be defeated) |
613 \item ensure stack data is not executable (can be defeated) |
601 \item address space randomisation (makes one-size-fits-all more difficult) |
614 \item address space randomisation (makes one-size-fits-all more difficult) |
602 \item choice of programming language (one of the selling points of Java) |
615 \item choice of programming language (one of the selling points of Java) |
603 |
616 |
604 \end{itemize} |
617 \end{itemize} |