Notes by Josiah Bruner (josiahbruner.com)
Inspired from EECS 388 @ UMich
Security Mindset
Level-2 Problem: “Weakness” (Factors that predispose systems to vulnerability)
Level-1 Problem: “Vulnerability” (Specific things that can be exploited to cause an assault
Level-0 Problem: “Assault” (Actual attack on a specific flaw)

Cryptography
Goals:

Hash Functions:

Length Extension Attacks:

Randomness:

Padding Oracles:

Key Exchange:

Secure Channel:

Modern Cryptography

Web Architecture
Early Technologies: telnet, ftp, sftp, smtp, nfs

HTTP
Cookies

Same Origin Policy

Attacks

HTTPS

Networking
Internet Layers
  1. Application - Application Packet Data
  2. Transport - Prepends TCP Header to packet
  3. Network - Prepends IP Header to packet
  4. Link - Prepends Frame Header and appends Frame Trailer to packet.

DNS (Domain Name System)

TCP (Transmission Control Protocol)
UDP (User Datagram Protocol)

Internet Protocol (IP)
Network Address Translation (NAT)

Link Layer

Address Resolution Protocol (ARP)

Network Attacks

Exploits

Application Security

Password Security
Control-Hijacking

Control-Hijacking Defenses