Network security: what does confidentiality mean?
Only sender, intended receiver should "understand" message contents: sender encrypts message, receiver decrypts message.
Authentication vs message integrity.
Authentication: sender, receiver want to confirm identity of each other. Message integrity: sender, receiver want to ensure message not altered (in transit, or afterwards) without detection.
What does "access and availability" mean?
Services must be accessible and available to users.
Who are Alice, Bob and Trudy?
Bob, Alice want to communicate "securely"; Trudy (intruder) may intercept, delete, add messages.
Give real-life examples of "Bob and Alice".
Web browser/server for electronic transactions (e.g., on-line purchases); on-line banking client/server; DNS servers; routers exchanging routing table updates.
Impersonation vs hijacking.
Impersonation: can fake (spoof) source address in packet (or any field in packet). Hijacking: "take over" ongoing connection by removing sender or receiver, inserting himself in place.
What is denial of service?
Preventing a service from being used by others (e.g., by overloading resources).
What do m, K_A(m) and K_B(K_A(m)) mean?
m: plaintext message. K_A(m): ciphertext, encrypted with key K_A. m = K_B(K_A(m)): decrypting the ciphertext with Bob's key K_B gives back the plaintext.
Which three security services does SSL provide? What is its variation called?
Confidentiality, integrity, authentication. Variation: TLS — transport layer security, RFC 2246.
What were SSL's original goals?
Web e-commerce transactions; encryption (especially credit-card numbers); Web-server authentication; optional client authentication; minimum hassle in doing business with new merchant.
Where does SSL sit in the protocol stack, and what does it give applications?
Application / SSL / TCP / IP: SSL runs over TCP, and SSL provides an application programming interface (API) to applications. It is available to all TCP applications (secure socket interface).
What are the four purposes of the SSL handshake?
1. server authentication; 2. negotiation: agree on crypto algorithms; 3. establish keys; 4. client authentication (optional).
SSL handshake steps 1–2: what does each side send?
1: client sends list of algorithms it supports, along with client nonce. 2: server chooses algorithms from list; sends back choice + certificate + server nonce.
SSL handshake step 3: what does the client do with the certificate?
Client verifies certificate, extracts server's public key, generates pre_master_secret, encrypts it with server's public key, sends to server.
From what do client and server compute their keys, and which keys?
They independently compute encryption and MAC keys from pre_master_secret and nonces (step 4).
Why do the last 2 handshake steps send a MAC of all the handshake messages?
They protect the handshake from tampering: the client offers a range of algorithms, some strong, some weak, and a man-in-the-middle could delete the stronger algorithms from the list.
Why does SSL use two random nonces?
Against replay: if Trudy replays a recorded sequence of records the next day, Bob's different random nonce for each connection makes the encryption keys different, so Trudy's messages fail Bob's integrity check.
SSL record protocol: what is in the record header and in the MAC? How big is a fragment?
Record header: content type; version; length. MAC: includes sequence number, MAC key M_x. Each SSL fragment 2^14 bytes (~16 Kbytes).
SSL record format: field sizes, and what is encrypted?
Content type 1 byte, SSL version 2 bytes, length 3 bytes; then data and MAC. Data and MAC are encrypted (symmetric algorithm).
What is network-layer confidentiality and why is it called "blanket coverage"?
Between two network entities, the sending entity encrypts the datagram payload (TCP or UDP segment, ICMP message, OSPF message …), so all data sent from one entity to the other is hidden: web pages, e-mail, P2P file transfers, TCP SYN packets ….
List the four IPsec services.
Data integrity; origin authentication; replay attack prevention; confidentiality.
IPsec transport mode vs tunneling mode.
Transport mode: IPsec datagram emitted and received by end-system; protects upper level protocols. Tunneling mode: edge routers IPsec-aware (or hosts IPsec-aware).
AH vs ESP: which services does each provide?
AH (Authentication Header): source authentication & data integrity but not confidentiality. ESP (Encapsulation Security Protocol): source authentication, data integrity, and confidentiality; more widely used than AH.
How many IPsec mode/protocol combinations are possible, and which is the most common?
Four: host mode with AH, host mode with ESP, tunnel mode with AH, tunnel mode with ESP. Tunnel mode with ESP is the most common and most important.
What does a firewall do?
It isolates the organization's internal net from the larger Internet, allowing some packets to pass, blocking others.
Why use firewalls? (three reasons)
Prevent denial of service attacks (e.g., SYN flooding); prevent illegal modification/access of internal data; allow only authorized access to inside network (set of authenticated users/hosts).
What is SYN flooding?
The attacker establishes many bogus TCP connections, so no resources are left for "real" connections.
Name the three types of firewalls.
Stateless packet filters; stateful packet filters; application gateways.
On what does a stateless packet filter base its forward/drop decision?
Source IP address, destination IP address; TCP/UDP source and destination port numbers; ICMP message type; TCP SYN and ACK bits. It filters packet-by-packet.
What is the result of blocking inbound TCP segments with ACK=0?
It prevents external clients from making TCP connections with internal clients, but allows internal clients to connect to outside.
Which firewall setting prevents your network from being tracerouted?
Drop all outgoing ICMP TTL expired traffic.
Which firewall setting prevents your network from being used for a smurf DoS attack?
Drop all ICMP packets going to a "broadcast" address (e.g. 130.207.255.255).
What does an application gateway filter on?
On application data as well as on IP/TCP/UDP fields.
Telnet through an application gateway: the three steps.
1. Require all telnet users to telnet through gateway. 2. For authorized users, gateway sets up telnet connection to dest host; gateway relays data between 2 connections. 3. Router filter blocks all telnet connections not originating from gateway.
Give the limitations of firewalls and gateways.
IP spoofing (router can't know if data "really" comes from claimed source); each app needing special treatment has its own gateway; client software must know how to contact the gateway (e.g., proxy IP in the browser); all-or-nothing policy for UDP; tradeoff between communication with the outside world and level of security; highly protected sites still suffer from attacks.
Packet filtering vs IDS.
Packet filtering operates on TCP/IP headers only, with no correlation check among sessions. An IDS does deep packet inspection (looks at packet contents, e.g. character strings against a database of known virus, attack strings) and examines correlation among multiple packets.
Why use multiple IDSs?
Different types of checking at different locations (e.g., IDS sensors inside the internal network and in the demilitarized zone with the Web, FTP and DNS servers).