Professional Documents
Culture Documents
net/publication/306493043
Fundamentals of Network Security
Presentation · December 2008
DOI: 10.13140/RG.2.2.21160.78083
CITATIONS READS
0 583
1 author:
Jaydip Sen
Praxis Business School
250 PUBLICATIONS 1,741 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Wireless Mesh Networks: Architecture, Algorithms and Applications View project
Computer Security View project
All content following this page was uploaded by Jaydip Sen on 25 August 2016.
The user has requested enhancement of the downloaded file.
Fundamentals
of
Network Security
Jaydip Sen
Innovation Lab, TCS, Kolkata, India
❒ Security in Practice:
❍ Firewalls
❍ Security in Application, Transport, Network, Link
Layers
8-2
Roadmap
8-3
What is Network Security?
Confidentiality: only sender, intended receiver should
“understand” message contents.
❍ sender encrypts the message before sending.
❍ receiver decrypts the message after receiving.
Authentication: sender, receiver want to confirm identity
of each other.
Message Integrity: sender, receiver want to ensure that
the message is not altered (in transit, or afterwards)
without detection.
Access and Availability: services must be accessible
and available to authorized users.
8-4
Friends and Enemies: Alice, Bob, Trudy
❒ Well-known in network security world
❒ Bob, Alice (lovers!) want to communicate “securely”
❒ Olga (intruder) may intercept, delete, add messages
Alice Bob
data, control
channel
messages
Trudy
8-5
Who might Bob, Alice be?
❒ … well, real-life Bobs and Alices!
❒ Web browser/server for electronic
transactions (e.g., on-line purchases)
❒ on-line banking client/server
❒ DNS servers
❒ routers exchanging routing table updates
❒ other examples?
8-6
There are bad guys (and girls) out there!
Q: What can a “bad guy” do?
A: a lot!
❍ eavesdrop: intercept messages
❍ actively insert messages into connection
❍ 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
❍ denial of service: prevent service from being used
by others (e.g., by overloading resources)
more on this later ……
8-7
Roadmap
8-8
The Language of Cryptography
Alice’s Bob’s
K encryption K decryption
A
key B key
8-9
Symmetric Key Cryptography
Substitution Cipher: substituting one thing for another
❍ monoalphabetic cipher: substitute one letter for another
plaintext: abcdefghijklmnopqrstuvwxyz
ciphertext: mnbvcxzasdfghjklpoiuytrewq
KA-B KA-B
8-11
Symmetric Key crypto: DES
DES: Data Encryption Standard
❒ US encryption standard [NIST 1993]
❒ 56-bit symmetric key, 64-bit plaintext input
❒ How secure is DES?
❍DES Challenge: 56-bit-key-encrypted phrase (“Strong
cryptography makes the world a safer place”)
decrypted (brute force) in 4 months
❍ no known “backdoor” decryption approach
❒ making DES more secure:
❍ use three keys sequentially (3-DES) on each datum
❍ use cipher-block chaining
8-12
Symmetric Key
Crypto: DES
DES operation
initial permutation
16 identical “rounds” of
function application,
each using different
48 bits of key
final permutation
8-13
AES: Advanced Encryption Standard
8-14
Public Key Cryptography
8-15
Public Key Cryptography
+ Bob’s public
K
B key
- Bob’s private
K
B key
8-16
Public Key Encryption Algorithms
Requirements:
1
+ . .
need KB( ) and K - ( ) such that
B
- +
K (K (m)) = m
B B
+
2 given public key K B, it should be
impossible to compute private
key K -
B
m = (m e mod n) d mod n
Magic
happens!
c
8-19
RSA Example:
Bob chooses p=5, q=7. Then n=35, z=24.
e=5 (so e, z relatively prime).
d=29 (so ed-1 exactly divisible by z.
letter m me c = me mod n
encrypt:
l 12 1524832 17
d
decrypt:
c c m = cd mod n letter
17 481968572106750915091411825223071697 12 l
8-20
RSA: Why is that m = (m e mod n) d mod n
e
(m mod n) d mod n = medmod n
ed mod (p-1)(q-1)
= m mod n
(using number theory result above)
1
= m mod n
(since we chose ed to be divisible by
(p-1)(q-1) with remainder 1 )
= m
8-21
RSA: Another Important Property
The following property will be very useful later:
- + + -
K (K (m)) = m = K (K (m))
B B B B
8-22
Roadmap
8-23
Authentication
Goal: Bob wants Alice to “prove” her identity to
him
Protocol ap1.0: Alice says “I am Alice”
“I am Alice”
Failure scenario??
8-24
Authentication
Goal: Bob wants Alice to “prove” her identity to
him
Protocol ap1.0: Alice says “I am Alice”
in a network,
Bob can not “see” Alice,
so Trudy simply
“I am Alice” declares
herself to be Alice
8-25
Authentication: Another Try
Protocol ap2.0: Alice says “I am Alice” in an IP packet
containing her source IP address
Alice’s
IP address
“I am Alice”
Failure scenario??
8-26
Authentication: Another Try
Protocol ap2.0: Alice says “I am Alice” in an IP packet
containing her source IP address
8-27
Authentication: Another Try
Protocol ap3.0: Alice says “I am Alice” and sends her
secret password to “prove” it.
Alice’s Alice’s
“I’m Alice”
IP addr password
8-28
Authentication: Another Try
Protocol ap3.0: Alice says “I am Alice” and sends her
secret password to “prove” it.
Alice’s Alice’s
“I’m Alice”
IP addr password
playback attack: Trudy
Alice’s records Alice’s packet
OK
IP addr and later
plays it back to Bob
Alice’s Alice’s
“I’m Alice”
IP addr password
8-29
Authentication: Yet Another Try
Protocol ap3.1: Alice says “I am Alice” and sends her
encrypted secret password to “prove” it.
Alice’s encrypted
“I’m Alice”
IP addr password
8-30
Authentication: Another Try
Protocol ap3.1: Alice says “I am Alice” and sends her
encrypted secret password to “prove” it.
Alice’s encrypted
“I’m Alice” record
IP addr password
and
Alice’s
OK playback
IP addr
still works!
Alice’s encrypted
“I’m Alice”
IP addr password
8-31
Authentication: Yet Another Try
Goal: avoid playback attack
Nonce: number (R) used only once –in-a-lifetime
ap4.0: to prove Alice “live”, Bob sends Alice nonce, R. Alice
must return R, encrypted with shared secret key
“I am Alice”
R
KA-B(R) Alice is live, and
only Alice knows
key to encrypt
nonce, so it must
Failures, drawbacks? be Alice!
8-32
Authentication: ap5.0
ap4.0 requires shared symmetric key
❒ can we authenticate using public key techniques?
ap5.0: use nonce, public key cryptography
“I am Alice”
Bob computes
R + -
- KA(KA (R)) = R
K A (R) and knows only Alice
“send me your public key”
could have the private
+ key, that encrypted R
KA such that
+ -
K (K (R)) = R
A A
8-33
ap5.0: Security Hole
Man (Woman) in the middle attack: Trudy poses as
Alice (to Bob) and as Bob (to Alice)
I am Alice I am Alice
R -
K (R)
T
R - Send me your public key
K (R) +
A K
T
Send me your public key
+
K
A +
K (m)
Trudy gets T
- +
+ m = K (K (m))
K (m)
A sends T T Alice
m to
- + encrypted with
m = K (K (m))
A A Alice’s public key
8-34
ap5.0: Security Hole
Man (woman) in the middle attack: Trudy poses as
Alice (to Bob) and as Bob (to Alice)
Difficult to detect:
Bob receives everything that Alice sends, and vice
versa. (e.g., so Bob, Alice can meet one week later and
recall conversation)
problem is that Trudy receives all messages as well!
8-35
Roadmap
8-36
Digital Signatures
8-37
Digital Signatures
Simple Digital Signature for Message m:
❒ Bob signs m by encrypting with his private key KB,
- -
creating “signed” message, KB(m)
-
Bob’s message, m K B Bob’s private -
K B(m)
key
Dear Alice
Bob’s message,
Oh, how I have missed
you. I think of you all the
Public key m, signed
time! …(blah blah blah) encryption (encrypted) with
algorithm his private key
Bob
8-38
Digital Signatures (more)
-
❒ Suppose Alice receives msg m, digital signature KB(m)
❒ Alice verifies m signed by Bob by applying Bob’s public
+ - + -
key KB to KB(m) then checks KB(KB(m) ) = m.
+ -
❒ If KB(KB(m) ) = m, whoever signed m must have used
Bob’s private key.
Alice thus verifies that:
➼ Bob signed m.
➼ No one else signed m.
➼ Bob signed m and not m’.
Non-repudiation:
-
Alice can take m, and signature KB(m) to court
and prove that Bob signed m.
8-39
Message Digests large
H: Hash
message
Function
m
Computationally expensive
to public-key-encrypt
H(m)
long messages
Goal: fixed-length, easy- Hash function properties:
to-compute digital ❒ many-to-1
“fingerprint”
❒ produces fixed-size msg
❒ apply hash function H to digest (fingerprint)
m, get fixed size
❒ given message digest x,
message digest, H(m).
computationally infeasible
to find m such that x =
H(m)
8-40
Internet Checksum: Poor Crypto Hash
Function
Internet checksum has some properties of hash function:
➼ produces fixed length digest (16-bit sum) of message
➼ is many-to-one
equal
?
8-42
Hash Function Algorithms
❒ MD5 hash function widely used (RFC 1321)
❍ computes 128-bit message digest in 4-step process.
❍ arbitrary 128-bit string x, appears difficult to construct
msg m whose MD5 hash is equal to x.
❒ SHA-1 is also used.
❍ US standard [NIST, FIPS PUB 180-1]
❍ 160-bit message digest
8-43
Roadmap
8-44
Trusted Intermediaries
Symmetric Key Problem: Public Key Problem:
❒ How do two entities ❒ When Alice obtains
establish shared secret key Bob’s public key (from
over network? web site, e-mail,
Solution: diskette), how does she
know it is Bob’s public
❒ trusted key distribution
key, not Trudy’s?
center (KDC) acting as
intermediary between Solution:
entities ❒ trusted certification
authority (CA)
8-45
Key Distribution Center (KDC)
❒ Alice, Bob need shared symmetric key.
❒ KDC: server shares different secret key with each
registered user (many users)
❒ Alice, Bob know own symmetric keys, KA-KDC KB-KDC , for
communicating with KDC.
KDC
KA-KDC KP-KDC
KX-KDC
KP-KDC KB-KDC
KY-KDC
KZ-KDC
KA-KDC KB-KDC
8-46
Key Distribution Center (KDC)
Q: How does KDC allow Bob, Alice to determine shared
symmetric secret key to communicate with each other?
KDC
KA-KDC(A,B) generates
R1
Bob’s digital
+
public signature KB
+
key KB (encrypt)
CA
certificate for
K-
Bob’s private
identifying key CA Bob’s public key,
information signed by CA
8-48
Certification Authorities
❒ When Alice wants Bob’s public key:
❍ gets Bob’s certificate (Bob or elsewhere).
❍ apply CA’s public key to Bob’s certificate, get
Bob’s public key
+ digital Bob’s
KB signature public
+
(decrypt) KB key
CA
public +
K CA
key
8-49
Roadmap
8-50
Firewalls
firewall
isolates organization’s secure internal network
(LAN) from insecure public Internet, allowing
some packets to pass, blocking others.
administered public
network Internet
firewall
8-51
Firewalls: Why?
Prevent Denial Of Service (DOS) Attacks:
❍ SYN flooding: attacker establishes many bogus
TCP connections, no resources left for “real”
connections.
Prevent Illegal Modification/Access of Internal Data.
❍ e.g., attacker replaces CIA’s homepage with
something else
Allow Only Authorized Access to Inside Network (set of
authenticated users/hosts)
Two types of Firewalls:
❍ application-level
❍ packet-filtering
8-52
Packet Filtering
❒ Example 1: block incoming and outgoing datagrams
with IP protocol field = 17 and with either source or
dest port = 23.
❍ All incoming and outgoing UDP flows and telnet
connections are blocked.
❒ Example 2: Block inbound TCP segments with
ACK=0.
❍ Prevents external clients from making TCP
connections with internal clients, but allows
internal clients to connect to outside.
8-53
Limitations of Firewalls and Gateways
8-54
Roadmap
8-55
Internet Security Threats
Mapping:
❍ before attacking: “case the joint” – find out
what services are implemented on network
❍ Use ping to determine what hosts have
addresses on network
❍ Port-scanning: try to establish TCP connection
to each port in sequence (see what happens)
❍ nmap (http://www.insecure.org/nmap/) mapper:
“network exploration and security auditing”
Countermeasures?
8-56
Internet Security Threats
Mapping: Countermeasures
❍ record traffic entering network
❍ look for suspicious activity (IP addresses, pots
being scanned sequentially)
8-57
Internet Security Threats
Packet Sniffing:
❍ broadcast media
❍ promiscuous NIC reads all packets passing by
❍ can read all unencrypted data (e.g. passwords)
❍ e.g.: C sniffs B’s packets
A C
A C
8-59
Internet Security Threats
IP Spoofing:
❍ can generate “raw” IP packets directly from
application, putting any value into IP source
address field
❍ receiver can’t tell if source is spoofed
❍ e.g.: C pretends to be B
A C
B
Countermeasures?
8-60
Internet Security Threats
IP Spoofing: Ingress Filtering
❍ routers should not forward outgoing packets with invalid
source addresses (e.g., datagram source address not in
router’s network)
❍ great, but ingress filtering can not be mandated for all
networks
A C
8-61
Internet Security Threats
Denial of Service (DOS):
❍ flood of maliciously generated packets “swamp” receiver
❍ Distributed DOS (DDOS): multiple coordinated sources
swamp receiver
❍ e.g., C and remote host SYN-attack A
A C
SYN
SYN
SYN SYN SYN
B
SYN
Countermeasures?
SYN
8-62
Internet Tecurity Threats
Denial of Service (DOS): Countermeasures
❍ filter out flooded packets (e.g., SYN) before reaching host:
throw out good with bad
❍ traceback to source of floods (most likely an innocent,
compromised machine)
A C
SYN
SYN
SYN SYN SYN
B
SYN
SYN
8-63
Roadmap
1. What is Network Security?
2. Principles of Cryptography
3. Authentication
4. Integrity
5. Key Distribution and Certification
6. Access Control: Firewalls
7. Attacks and Counter Measures
8. Security in Many Layers
8.1. Secure email
8.2. Secure Sockets
8.3. IPsec
8.4. Security in 802.11
8-64
Pretty Good Privacy (PGP)
8-65
Secure Sockets Layer (SSL)
8-66
SSL (continued)
Encrypted SSL session: ❒ SSL: basis of IETF
❒ Browser generates Transport Layer
symmetric session key, Security (TLS).
encrypts it with server’s ❒ SSL can be used for
public key, sends non-Web applications,
encrypted key to server. e.g., IMAP.
❒ Using private key, server ❒ Client authentication
decrypts session key. can be done with client
❒ Browser, server know certificates.
session key
❍ All data sent into TCP socket
(by client or server)
encrypted with session key.
8-67
IPsec: Network Layer Security
❒ Network-layer secrecy:
❒ For both AH and ESP, source,
❍ sending host encrypts the
destination handshake:
data in IP datagram
❍ create network-layer logical
❍ TCP and UDP segments;
channel called a security
ICMP and SNMP
association (SA)
messages.
❒ Each SA unidirectional.
❒ Network-layer authentication
❒ Uniquely determined by:
❍ destination host can
authenticate source IP ❍ security protocol (AH or
address ESP)
❒ Two principle protocols: ❍ source IP address
protocol
❍ encapsulation security
payload (ESP) protocol
8-68
Authentication Header (AH) Protocol
❒ provides source AH header includes:
authentication, data ❒ connection identifier
integrity, no ❒ authentication data:
confidentiality source- signed message
❒ AH header inserted digest calculated over
between IP header, data original IP datagram.
field. ❒ next header field: specifies
❒ protocol field: 51 type of data (e.g., TCP,
❒ intermediate routers UDP, ICMP)
process datagrams as
usual
IP header AH header data (e.g., TCP, UDP segment)
8-69
ESP Protocol
❒ provides secrecy, host ❒ ESP authentication field
authentication, data is similar to AH
integrity. authentication field.
❒ data, ESP trailer encrypted. ❒ Protocol = 50.
❒ next header field is in ESP
trailer.
authenticated
encrypted
ESP ESP ESP
IP header TCP/UDP segment
header trailer authent.
8-70
IEEE 802.11 Security
8-71
Wired Equivalent Privacy (WEP):
8-72
WEP Data Encryption
8-73
802.11 WEP Encryption
IV
(per frame)
KS: 40-bit key sequence generator
secret ( for given KS, IV)
symmetric
k1IV k2IV k3IV … kNIV kN+1IV… kN+1IV 802.11 WEP-encrypted data
key IV
header plus CRC
plaintext
frame data d1 d2 d3 … dN CRC1 … CRC4
plus CRC
c1 c2 c3 … cN cN+1 … cN+4
Sender-side WEP
Figure 7.8-new1: 802.11encryption
WEP protocol
8-74
Breaking 802.11 WEP Encryption
Security hole:
❒ 24-bit IV, one IV per frame, -> IV’s eventually reused
❒ IV transmitted in plaintext -> IV reuse detected
❒ Attack:
❍ Trudy causes Alice to encrypt known plaintext d1 d2 d3
d4 …
IV
❍ Trudy sees: ci = di XOR ki
8-75
802.11i: Improved Security
8-76
802.11i: Four Phases of Operation
1 Discovery of
security capabilities
wired
network
EAP TLS
EAP
EAP over LAN (EAPoL) RADIUS
IEEE 802.11 UDP/IP
8-78
Network Security (summary)
Basic techniques…...
❍ cryptography (symmetric and public)
❍ authentication
❍ message integrity
❍ key distribution
8-79
View publication stats
Thank You!
Questions?
8-80