Computer Security 2011

Notes

This page will contain the lecture slides and links to any supplementary material you may find useful as starting points for further enquiry, or as preparatory reading prior to the lecture.

  • Monday 13:00, LTC, Watson Building.
  • Tuesday 13:00, N225, Gisbert Kapp.
  • Lecture Media Supplementary Material
    Lecture 1 13:00 26/09/2011 Introduction
    Lecture slides: pdf, 6up.

    This lecture provides an overview of the module.


    Recommended Paper: Stalking the Wily Hacker by Clifford Stoll. This famous paper from 1988 gives a detailed account of one of the very first hackers to be caught. The APRAnet mentioned in the paper is the forerunner of the Internet.

    Lecture 2 13:00 27/09/2011 Cryptography for Computer Security 1
    Lecture slides: pdf, 6up, movie.
    • Here are 3 cipher texts, the plain texts are all in English and encrypted using a simple substitution cipher. The 3rd one is hard, let me know if you can break it.
    • Mark Ryan's Lecture notes on Symmetric Key Crypto.
    • Chapter 11 of Computer Security, Gollmann
    • Chapter 5 of Security Engineering, Anderson
    • Volker Sorge's Cryptography module
    • Tools for encryption:
    • Further/Background reading:
      • Applied Cryptography, Bruce Schneier.
      • The Code Book, by Simon Singh (a good pop science history of encryption).

    This lecture will cover what you need to know about cryptography for this module, including:

    • Symmetric Key Encryption
      • DES, 3-DES
      • AES
      • Block cipher modes
      • Probabilistic and Padded Encryption

    Lecture 3 13:00 3/10/2011 Cryptography for Computer Security 2
    Lecture slides: pdf, 6up movie
    • Mark Ryan's Lecture notes on Public Key Crypto.
    • Chapter 11 of Computer Security, Gollmann
    • Chapter 5 of Security Engineering, Anderson
    • Volker Sorge's Cryptography module
    • Tools for encryption:
      • GPG, a public key encryption suite.
    • Further/Background reading:
      • Why Johnny Can't Encrypt This paper gives some of the reasons why PGP never really became popular.
      • Applied Cryptography, Bruce Schneier.

    Part 2 of the last lecture including:

    • The Diffie-Hellman protocol
    • Public Key Encryption
      • RSA
      • The key distribution problem
      • Encryption in practice

    Lecture 4 13:00 4/10/2011 Java and Cryptography
    Lecture slides: pdf, 6up, movie
  • The code examples from the lectures can be found here.
  • For information about using the Java Keytool simple type "keytool" at the command line.
  • An overview of Java and the Crypto APIs, (needed for Exercise 1), including:

  • An overview of OO-programming and Java,
  • The Java Cipher, Key and KeyGenerator classes.
  • Java keystores and the "keytool".
  • Remember, never leave keys lying around on your computer unprotected.

    Lecture 5 13:00 10/10/2011 Access Control
    Lecture slides: pdf, 6up, movie
    • Mark Ryan's Lecture notes on Access Control.
    • A list of common Linux/Unix access control commands here.
    • The Chapter 4: Access Control of Security Engineering by Ross Anderson
    • Chapters 4, 6 & 7 of Computer Security by Dieter Gollmann

    This lecture will look at ways in which access to files and resources is controlled, once you have logged onto a computer.

    • Access Control Models:
      • Access Control Matrices
      • Access Control Lists
      • Capability Lists
      • Role Based Access Control
      • Lattice of Security Levels
    • Access Control in Linux
    • Access Control in Windows


    Recommended Paper:
  • Advanced: Making a Faster Cryptanalytic Time-Memory Trade-Off by Philippe Oechslin.
  • Easy, but more basic: A Cryptanalytic Time - Memory Trade-Off by Martin Hellman
  • Lecture 6 13:00 11/10/2011 Hashes, MACS + Passwords
    Lecture slides: pdf, 6up movie

    • Hashes:
      • Properties of hash functions
      • MD5
      • SHA1, SHA2, SHA3
      • Collision attacks
    • Message Authentication Codes
    • Cracking password files
      • Guessing attacks
      • Time space tradeoff
      • Rainbow tables
      • Protection via salt
    Continued next in Lecture 7.

    Lecture 7 13:00 17/10/2011 The TCP/IP stack and sockets
    Lecture slides: pdf, 6up, Video recording failed.

    In this lecture I will finish off talking about hashes and passwords from the last lecture. I'll then tell you how the Internet works, including:
    • Sockets
    • TCP/IP
    • Network address translation
    • URLs
    Lecture 8 13:00 18/10/2011 Remote Authentication
    Lecture slides: pdf, 6up movie.
    In this lecture we will look at methods of working out who is at the other end of a connection.
    • Authentication and Key Establishment Protocols
      • Alice and Bob notation
      • Needham-Schroeder Public Key Protocol
      • Needham-Schroeder Symmetric Key Protocol
      • Kerberos
      • TLS/SSL
    • Certificates

    Recommended Paper: Prudent Engineering Practice for Cryptographic Protocols by Martin Abadi and Roger Needham.

    Lecture 9 13:00 24/10/2011 An Overview of Web Systems
    Lecture slides: pdf, 6up movie.
    • The lecture handout with JavaScript and JSP code can be follow here.
    • The w3schools website provides some good tutorials on these basic concepts, include:
    • Last years ICW module covered some of these topics, the lectures for this module can be found here

    This gives an overview of how basic webpages work. Including:

    • HTML
    • URLs and HTTP
    • JavaScript
    • PHP
    • JSP
    • SQL

    Lecture 10 13:00 25/10/2011 Web Security 1
    Lecture slides: pdf, 6up Video recording failed.

    Common attacks on websites, including:

    • SQL injection
    • Cross site scripting (XSS)
    • Cookie attacks
    • Cross request forgery (CSRF)

    Lecture 11 13:00 31/10/2011 Web Security 2
    Lecture slides: pdf, 6up, movie, movie HD.

    Common attacks on websites, including:

    • SQL injection
    • Cross site scripting (XSS)
    • Cookie attacks
    • Cross request forgery (CSRF)


    Recommended Paper: Tor: The Second-Generation Onion Router This research paper describes the design of the Tor network.

    Lecture 12 13:00 1/11/2011 Anonymity and Privacy
    Lecture slides: pdf, 6up, movie
  • Tor's website is here
  • The Tor demo code handout.
  • Further reading:
  • A clever attack on Tor: Low-Cost Traffic Analysis of Tor
  • This lecture gaves an introduction to the theory and practice of computer, including:

  • The dinner cryptographers protocol
  • Crowds
  • Mixes
  • Onion routing
  • Tor
  • Lecture 13 13:00 7/11/2011 Overview of Security Research at the School 1
    This work is descibed in the papers:

    This lecture gave an overview of some of the computer research being done in the School of Computer Science. The contents of this lecture will not be examinable. I described some recent research on e-passports, including a traceability attack against e-passports and how information theory can be used to analysis this flaw.


    Recommended Paper: Smashing The Stack For Fun And Profit by "Aleph One". Modern compiles now protect against the exact attacks described in this paper, however it gives a very good introduction to the basic ideas.

    Lecture 14 13:00 8/11/2011 Buffer Overflows Attacks
    Lecture slides: pdf, 6up, movie
  • An update of the smashing the stack paper can be found here.
  • Tool: Metasploit
  • This lecture described how stack and heap buffer overflow attacks work. These are some of the most common form of attacks and can sometimes be used to take complete control of a system.

    Lecture 15 13:00 14/11/2011 Overview of Security Research at the School 2

    This lecture gave an overview of some of the computer research being done in the School of Computer Science. The contents of this lecture will not be examinable. Prof. Mark Ryan will present some of his Computer Security research.

    Lecture 16 13:00 15/11/2011 Lecture Cancelled

    Lecture 17 13:00 21/11/2011 Application Security
    Lecture slides: pdf, 6up, movie part1, part2
  • Tools:
  • hexedit
  • Ollydbg
  • JD-GUI
  • Once you distribute software, an attacker can do anything they like with it, including removing any protection. This lecture covers some of the most common ways to attack software.

    Lecture 18 13:00 22/11/2011 Common System Exploits
    Lecture slides: pdf, 6up, movie
  • Common attack tools:
  • Nmap
  • Metasploit
  • Further reading: Hacking Exposed 6, by McClure, Scambray and Kurtz. Most of the attacks in this book are out of date, but it's still an interesting read.
  • Buffer overflow attacks, and the like, are the most commonly exploited system weakness. However, it can take months of work to turn the discovery of a buffer overflow into a "weaponised" exploit, therefore these attacks are best investigated using standard tools. This lecture will show you how you can use these tools to test the security of your own system.

    Lecture 19 13:00 28/11/2011 Trusted Computing
    Lecture slides: pdf, 6up, movie
  • Mark Ryan's notes on Trusted Computing can be found here.
  • Introduction to the TPM by Allan Tomlinson.
  • Ross Andersons Trusted Computing FAQ
  • The video about trusted computer that was shown in the lecture can be found here.
  • Trusted Computing uses hardware to provide cryptographic guarantees about remote systems. It can be a very powerful technique but has become controversial, because it removes complete control of a computer from it owner.


    Recommended Paper: So Long, And No Thanks for the Externalities: The Rational Rejection of Security Advice by Users by Cormac Herley.

    Lecture 20 13:00 29/11/2011 Security and Usability
    Lecture slides: pdf, 6up, movie
  • The research paper "Crying Wolf: An Empirical Study of SSL Warning Effectiveness" describes now real people react to certificate warnings.
  • Johnny Long's Defcon talk by on "None technical hacking" is here.
  • You can find Kevin Mitnick at HOPE talking about social engineering here (starts at time 5:26)
  • It is important to balance security and usability. It can often be cheaper to pay to repare the damage caused by a security breach than it would be to pay for the security needed to stop the breach. This lecture looks at the economic trade offs in computer security and describes some of the common problems of usability problems.

    Lecture 21 13:00 5/12/2011 Information Security Policy 1
  • ISO 27001 on wikipedia.
  • A guest Lecture by Ian Batten, ex-head of Information Assurence at Fujitsu.


    Recommended Paper: ISO 27001. See Exercise 4 for details of how to obtain a copy via the University.

    Lecture 22 13:00 6/12/2011 Information Security Policy 2
    Lecture slides: pdf,6up, video recording failed.
  • ISO 27002, also available via the University.
  • HMG Information Assurance Standard No.1: This is just an extract of the Technical Risk Assessment methodology that can be used with this tool to carry out information security risk assessments.
  • More on computer security policy, management and certification.