Guevara Noubir CSG254: Network Security

Slides:



Advertisements
Similar presentations
IP Security have considered some application specific security mechanisms –eg. S/MIME, PGP, Kerberos, SSL/HTTPS however there are security concerns that.
Advertisements

Internet Protocol Security (IP Sec)
Spring 2012: CS419 Computer Security Vinod Ganapathy SSL, etc.
CS470, A.SelcukIPsec – AH & ESP1 CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
Working Connection Computer and Network Security - SSL, IPsec, Firewalls – (Chapter 17, 18, 19, and 23)
Cryptography and Network Security Chapter 16 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Chapter 13 IPsec. IPsec (IP Security)  A collection of protocols used to create VPNs  A network layer security protocol providing cryptographic security.
ECE 454/CS 594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall.
1 Lecture 15: IPsec AH and ESP IPsec introduction: uses and modes IPsec concepts –security association –security policy database IPsec headers –authentication.
Henric Johnson1 Ola Flygt Växjö University, Sweden IP Security.
IP Security IPSec 2 * Essential Network Security Book Slides. IT352 | Network Security |Najwa AlGhamdi 1.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
Crypto – chapter 16 - noack Introduction to network stcurity Chapter 16 - Stallings.
IPsec – IKE CS 470 Introduction to Applied Cryptography
1 IPsec Youngjip Kim Objective Providing interoperable, high quality, cryptographically-based security for IPv4 and IPv6 Services  Access.
CMSC 414 Computer and Network Security Lecture 22 Jonathan Katz.
CMSC 414 Computer (and Network) Security Lecture 25 Jonathan Katz.
IPsec: IKE, Internet Key Exchange IPsec does not use Public Key Infrastructure and exchanging keys before an IPsec connection is established is a problem.
1 Section 10.9 Internet Security Association and Key Management Protocol ISAKMP.
IP Security Lawrence Taub IPSEC IP security — security built into the IP layer Provides host-to-host (or router-to-router) encryption and.
1 Network Security Lecture 8 IP Sec Waleed Ejaz
CSCE 715: Network Systems Security
Lecture 14 ISAKMP / IKE Internet Security Association and Key Management Protocol / Internet Key Exchange CIS CIS 5357 Network Security.
ECE 454/CS 594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall.
COEN 350 IPSec, SSL, SSH,. IPSec RFC 1636 identified key areas where the internet needs to be made more secure. Spoofing: Creating packets with false.
Information management 1 Groep T Leuven – Information department 1/26 IPSec IP Security (IPSec)
1 Lecture 16: IPsec IKE history of IKE Photurus IKE phases –phase 1 aggressive mode main mode –phase 2.
Karlstad University IP security Ge Zhang
IP Security.  In CERTs 2001 annual report it listed 52,000 security incidents  the most serious involving:  IP spoofing intruders creating packets.
IP Security: Security Across the Protocol Stack. IP Security There are some application specific security mechanisms –eg. S/MIME, PGP, Kerberos, SSL/HTTPS.
IP security Ge Zhang Packet-switched network is not Secure! The protocols were designed in the late 70s to early 80s –Very small network.
IPSec and TLS Lesson Introduction ●IPSec and the Internet key exchange protocol ●Transport layer security protocol.
1 Lecture 13 IPsec Internet Protocol Security CIS CIS 5357 Network Security.
Cryptography and Network Security (CS435) Part Thirteen (IP Security)
IPSec is a suite of protocols defined by the Internet Engineering Task Force (IETF) to provide security services at the network layer. standard protocol.
Network Layer Security Network Systems Security Mort Anvari.
IPSEC Modes of Operation. Breno de MedeirosFlorida State University Fall 2005 IPSEC  To establish a secure IPSEC connection two nodes must execute a.
K. Salah1 Security Protocols in the Internet IPSec.
@Yuan Xue CS 285 Network Security IP Security Yuan Xue Fall 2013.
第六章 IP 安全. Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
VPNs & IPsec Dr. X Slides adopted by Prof. William Enck, NCSU.
VPNs and IPSec Review VPN concepts Encryption IPSec Lab.
IPSec Detailed Description and VPN
Chapter 5 Network Security Protocols in Practice Part I
UNIT 7- IP Security 1.IP SEC 2.IP Security Architecture
IPSecurity.
Reviews Rocky K. C. Chang 20 April 2007.
CSE 4905 IPsec.
Encryption and Network Security
Chapter 16 – IP Security If a secret piece of news is divulged by a spy before the time is ripe, he must be put to death, together with the man to whom.
Chapter 18 IP Security  IP Security (IPSec)
CSE 4905 IPsec II.
Chapter 6 IP Security 1.
IT443 – Network Security Administration Instructor: Bo Sheng
IPSec IPSec is communication security provided at the network layer.
CSE565: Computer Security Lecture 23 IP Security
No.9: IP Security Network Information Security 网络信息安全
Cryptography and Network Security
IP Security - Chapter 6 of William Stallings. Network Security Essentials (2nd edition). Prentice Hall Slides by Henric Johnson Blekinge Institute.
VPNs and IPSec Review VPN concepts Encryption IPSec Lab.
Slides have been taken from:
Network Security (contd.)
Virtual Private Networks (VPNs)
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Network Security Standards
Chapter 6 IP Security.
CSE 5/7349 – February 15th 2006 IPSec.
Cryptography and Network Security
Presentation transcript:

Guevara Noubir CSG254: Network Security noubir@ccs.neu.edu IPsec (AH, ESP), IKE Guevara Noubir CSG254: Network Security noubir@ccs.neu.edu

Monitoring/Logging/Intrusion Detection Securing Networks Applications Layer telnet/ftp: ssh, http: https, mail: PGP (SSL/TLS) Transport Layer (TCP) (IPSec, IKE) Network Layer (IP) Monitoring/Logging/Intrusion Detection Network Security Tools: Control/Management (configuration) Link Layer (IEEE802.1x/IEEE802.10) Problem with link layer security: intermediate nodes access the plaintext! Where does it make sense to use link layer security: if only one link in the path is exposed (e.g., wireless link). Physical Layer (spread-Spectrum, quantum crypto, etc.) CSG254: Network Security IPsec - IKE

SSL vs. IPsec SSL: Avoids modifying “TCP stack” and requires minimum changes to the application Mostly used to authenticate servers IPsec Transparent to the application and requires modification of the network stack Authenticates network nodes and establishes a secure channel between nodes Application still needs to authenticate the users CSG254: Network Security IPsec - IKE

IPsec Protocol Suite (IETF Standard) Provides inter-operable crypto-based security services: Services: confidentiality, authentication, integrity, and key management Protocols: Authentication Header (AH): RFC2402 Encapsulated Security Payload (ESP): 2406 Internet Key Exchange (IKE) Environments: IPv4 and IPv6 Modes: Transport (between two hosts) Tunnel (between hosts/firewalls) CSG254: Network Security IPsec - IKE

IPsec Assumption: Security Association: Protocols: End nodes already established a shared session key: Manually or IKE Security Association: Each secure connection is called a security association (SA) For each SA: key, end-node, sequence number, services, algorithms SA is unidirectional and identified by: (destination-address, SPI = Security Parameter Index) Protocols: Authentication Header: integrity protection Encapsulated Security Payload: encryption and/or integrity Destination address is necessary to uniquely identify a SA because the SPI for multicast is chosen by the source CSG254: Network Security IPsec - IKE

IP Packets CSG254: Network Security IPsec - IKE V ersion HLen TOS Length Ident Flags Offset TTL Protocol Checksum SourceAddr DestinationAddr Options (variable) Pad (variable) 4 8 16 19 31 Data CSG254: Network Security IPsec - IKE

AH Formatting AH Protocol Number = 51 SN: for replay detection TCP proto # = 6 SN: for replay detection CSG254: Network Security IPsec - IKE

ESP Formatting ESP Protocol Number = 50 CSG254: Network Security IPsec - IKE

ESP Header CSG254: Network Security IPsec - IKE

Issues NAT boxes: Firewalls AH mutable/immutable/predictable fields: IPsec tunnel mode doesn’t easily work Firewalls IPsec encrypts information used by firewalls to filter traffic (e.g., port number) AH mutable/immutable/predictable fields: Some fields get modified by the intermediate routers and can’t be protected by the AH Mutable: type of service, flags, fragment offset, TTL, header checksum Why is PAYLOAD-LENGTH considered immutable (even if packets can be fragmented) and not fragment offset. Inconsistency! Mutable but predictable fields are included in the AH computation using their expected value at the destination (e.g., destination address even when using source routing) Type of service is mutable because it is not used for the purpose it was defined for CSG254: Network Security IPsec - IKE

IPsec: Internet Key Exchange Goal: Mutual authentication and establishment of a shared secret session key using: Pre-shared secret key or public signature-only key, or public encryption key Negotiation of features and cryptographic algorithms Specification documents: ISAKMP (Internet Security Association and Key Management Protocol): RFC 2408 IKE: RFC 2409 DOI (Domain Of Interpretation): RFC 2407 CSG254: Network Security IPsec - IKE

Photuris Photuris goal: signed Diffie-Hellman exchange A -> B: CA B -> A: CA, CB, crypto offered A -> B: CA, CB, ga mod p, crypto selected B -> A: CA, CB, , gb mod p A -> B: CA, CB, gab mod p{A, signature on previous messages} B -> A: CA, CB, , gab mod p{B, signature on previous messages} Role of CA, CB, and messages Additional features: SPI selection Why not sign messages 3 & 4…? Hiding identity CB: cookie CA: keeps connection attempts separate Identity hiding CSG254: Network Security IPsec - IKE

Simple Key-Management for Internet Protocol (SKIP) Uses long term Diffie-Hellman keys Parties assumed to know each other public keys (i.e., ga mod p) or exchange certificates Session key X = gab mod p is established in 0 messages Each packet is encrypted using data key S and each packet contains: X{S} Same S can be used for several packets Later on PFS was added by periodically forgetting the keys and doing a new DH CSG254: Network Security IPsec - IKE

ISAKMP (RFC2408) Proposed by NSA as a framework and accepted by IETF Runs over UDP and allows to exchange fields to create a protocol IKE (RFC2409) based on OAKLEY & SKEME using ISAKMP syntax IKE phases: Mutual authentication and session key establishment (also called ISAKMP SA or IKE SA) AH/ESP SAs establishment Each source/destination/port has its own SA/keys otherwise ESP traffic not using integrity could be decrypted… CSG254: Network Security IPsec - IKE

Phase 1 IKE Two modes: Aggressive mode: mutual authentication and session key establishment in three messages A -> B: ga mod p, A, crypto proposal B -> A: gb mod p, crypto choice, proof I’m B A -> B: proof I’m A Main: additional features such as hiding end-points identities and negotiating crypto DH algorithm A -> B: crypto suite I support B -> A: crypto suite I choose A -> B: ga mod p B -> A: gb mod p A -> B: gab mod p {A, proof I’m A} B -> A: gab mod p {B, proof I’m B} CSG254: Network Security IPsec - IKE

Phase 1 IKE Key types: Pre-shared secret key Public encryption key: fields are separately encrypted using the public key Optimized public encryption key: used to encrypt a random symmetric key, and then data is encrypted using the symmetric key Public signature key: used only for signature purpose 8 variants of IKE phase 1: 2 modes x 4 key types Proof of Identity: Required in messages 2-3 aggressive mode and 5-6 main mode Proves the sender knows the key associated with the identity Depends on the key type Hash of identity key, DH values, nonces, crypto choices, cookies Alternative: MAC of previous messages CSG254: Network Security IPsec - IKE

Phase 1 IKE Negotiating cryptographic parameters Session keys: A specifies suites of acceptable algorithms: {(3DES, MD5, RSA public key encryption, DH), (AES, SHA-1, pre-shared key, elliptic curve), …} The standard specifies a MUST be implemented set of algorithms: Encryption=DES, hash=MD5/SHA-1, authentication=pre-shared key/DH The lifetime of the SA can also be negotiated Session keys: Key seed: SKEYID Signature public keys: SKEYID = prf(nonces, gxymod p) Encryption public keys: prf(hash(nonces), cookies) Pre-shared secret key: prf(pre-shared secret key, nonces) Secret to generate other keys: SKEYID_d = prf(SKEYID, (gxy, cookies, 0)) Integrity key: SKEYID_a = prf(SKEYID, (SKEYID_d, (gxy, cookies, 1))) Encryption key: SKEYID_e = prf(SKEYID, (SKEYID_a, (gxy, cookies, 2)) Message IDs: Random 32-bits serves the purpose of a SN but in an inefficient manner because they have to be remembered SKEYID is used for: Prf = pseudo-random function CSG254: Network Security IPsec - IKE

IKE Phase 1: Public Signature Keys, Main Mode Description: Both parties have public keys for signatures Hidden endpoint identity (except for …?) Protocol: A -> B: CP B -> A: CPA A -> B: ga mod p, nonceA B -> A: gb mod p, nonceB K = f(gab mod p, nonceA, nonceB) A -> B: K{A, proof I’m A, [certificate]} B -> A: K{B, proof I’m B, [certificate]} Questions: What is the purpose of the nonces? Can we make to protocol shorter (5 messages)? At what expense? Purpose of nonces: reuse the same DH contributions and preserve PFS by periodically changing a and b 5 messages but no parallel computation => slower protocol CSG254: Network Security IPsec - IKE

IKE Phase 1: Public Signature Keys, Aggressive Mode Protocol: A -> B: CP, ga mod p, nonceA, A B -> A: CPA, gb mod p, nonceB, B, proof I’m B, [certificate] A -> B: proof I’m A, [certificate] CSG254: Network Security IPsec - IKE

IKE Phase 1: Public Encryption Keys, Main Mode, Original Protocol: A -> B: CP B -> A: CPA A -> B: ga mod p, {nonceA}B, {A}B B -> A: gb mod p, {nonceB}A, {B}A K = f(gab mod p, nonceA, nonceB) A -> B: K{proof I’m A} B -> A: K{proof I’m B} Assumption is that A & B know other side public keys! CSG254: Network Security IPsec - IKE

IKE Phase 1: Public Encryption Keys, Aggressive Mode, Original Protocol: A -> B: CP, ga mod p, {nonceA}B, {A}B B -> A: CPA, gb mod p, {nonceB}A, {B}A, proof I’m B A -> B: proof I’m A CSG254: Network Security IPsec - IKE

IKE Phase 1: Public Encryption Keys, Main Mode, Revised Protocol: A -> B: CP B -> A: CPA KA = hash(nonceA, cookieA) A -> B: {nonceA}B, KA{ga mod p}, KA{A}, [KA{A’s cert}] KB = hash(nonceB, cookieB) B -> A: {nonceB}A, KB{gb mod p}, KB{B} K = f(gab mod p, nonceA, nonceB, cookieA, cookieB) A -> B: K{proof I’m A} B -> A: K{proof I’m B} CSG254: Network Security IPsec - IKE

IKE Phase 1: Public Encryption Keys, Aggressive Mode, Revised Protocol: KA = hash(nonceA, cookieA) A -> B: CP, {nonceA}B, KA{ga mod p}, KA{A}, [KA{A’s cert}] KB = hash(nonceB, cookieB) B -> A: CPA, {nonceB}A, KB{gb mod p}, KB{B}, proof I’m B K = f(gab mod p, nonceA, nonceB, cookieA, cookieB) A -> B: K{proof I’m A} CSG254: Network Security IPsec - IKE

IKE Phase 1: Shared Secret Keys, Main Mode Assumption A and B share a secret J Protocol: A -> B: CP B -> A: CPA A -> B: ga mod p, nonceA B -> A: gb mod p, nonceB K = f(J, gab mod p, nonceA, nonceB, cookieA, cookieB) A -> B: K{proof I’m A} B -> A: K{proof I’m B} CSG254: Network Security IPsec - IKE

IKE Phase 1: Shared Secret Keys, Aggressive Mode Protocol: A -> B: CP, ga mod p, nonceA, A B -> A: CPA, gb mod p, nonceB, B, proof I’m B A -> B: proof I’m A CSG254: Network Security IPsec - IKE

IKE: Phase 2 Also known as “Quick Mode”: 3- messages protocol A -> B: X, Y, CP, traffic, SPIA, nonceA, [ga mod p]optional B -> A: X, Y, CPA, traffic, SPIB, nonceB, [gb mod p] optional A -> B: X, Y, ack All messages are encrypted using SKEYID_e, and integrity protected using SKEYID_a (except X, Y) Parameters: X: pair of cookies generated during phase 1 Y: 32-bit number unique to this phase 2 session chosen by the initiator CP: Crypto Proposal, CPA: Crypto Proposal Accepted DH is optional and could be used to provide PFS Nonces and cookies get shuffled into SKEYID to produce the SA encryption and integrity keys Traffic: restrict traffic on the SA based on UDP/TCP/port CSG254: Network Security IPsec - IKE