Crypto for Network Protocols
CS 463
Lecture, Dr. Lawlor
Purpose
|
Insecure
|
Secure
|
Built on
|
Popularity
|
Web
|
http
|
https
|
TLS/SSL,
X.509 PKI
|
Common
|
Files
|
ftp / nfs
|
scp
|
rsa, aes-128-ctr
|
Common
|
Shell
|
telnet / rsh
|
ssh
|
same
|
Common
|
Domain names
|
DNS
|
DNSSEC
|
hash+signature
|
Coming soon
|
Single sign on
|
LDAP
(v2)
|
Kerberos
|
central server
|
Declining
|
Basic connectivity
|
IP
|
IPsec
|
IKE
|
Coming soon
|
A disturbing number of commonly used network protocols use exactly
zero crypto. This makes them susceptible to both information
leakage and a variety of man in the middle attacks.
- DHCP
(Dynamic Host Configuration Protocol) is how your machine finds
its own IP address and DNS server names. It's implemented
as a broadcast to UDP port 67 asking for an IP address.
It's vulnerable to a rogue DHCP server sending out bad IP
addresses or DNS servers, for example to redirect IP traffic or
DNS requests to a bad server.
- ARP
(Address Resolution Protocol) is how your machine finds the
ethernet address for an IP address, basically by broadcasting
"Who has 10.0.0.1?". It's vulnerable to "spoofing"
attacks, typically used to transparently redirect traffic to an
attacker's machine. Luckily ARB spoofing is fairly easy to
for an intrusion detection system to detect.
- BGP
(Border Gateway Protocol) updates subnet routing information on
the internet's core routers. As you've now come to expect,
it's totally unencrypted and subject
to a variety of attacks.