Lecture 9: Network Level Security – IPSec

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 Security CSCE 813 IPsec
IPSec: Authentication Header, Encapsulating Security Payload Protocols CSCI 5931 Web Security Edward Murphy.
Cryptography and Network Security Chapter 16 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
IPsec Internet Headquarters Branch Office SA R1 R2
Henric Johnson1 Ola Flygt Växjö University, Sweden IP Security.
Henric Johnson1 Chapter 6 IP Security. Henric Johnson2 Outline Internetworking and Internet Protocols IP Security Overview IP Security Architecture Authentication.
IP Security. Overview In 1994, Internet Architecture Board (IAB) issued a report titled “Security in the Internet Architecture”. This report identified.
CSCE 715: Network Systems Security Chin-Tser Huang University of South Carolina.
1 Pertemuan 11 IPSec dan SSL Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
Chapter 6 IP Security. Outline Internetworking and Internet Protocols (Appendix 6A) IP Security Overview IP Security Architecture Authentication Header.
Lecture 7: Network Level Security – IPSec CS 336/536: Computer Network Security Fall 2013 Nitesh Saxena Adopted from previous lecture by Keith Ross, and.
IP Security: Security Across the Protocol Stack
Cosc 4765 SSL/TLS and VPN. SSL and TLS We can apply this generally, but also from a prospective of web services. Multi-layered: –S-http (secure http),
CSCE 715: Network Systems Security
Security at different layers
8-1 Chapter 8 Security Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March 2012 part 4: Securing IP.
1 Security Protocols in the Internet Source: Chapter 31 Data Communications & Networking Forouzan Third Edition.
Karlstad University IP security Ge Zhang
IPsec Introduction 18.2 Security associations 18.3 Internet Security Association and Key Management Protocol (ISAKMP) 18.4 Internet Key Exchange.
IP Security.  In CERTs 2001 annual report it listed 52,000 security incidents  the most serious involving:  IP spoofing intruders creating packets.
IPSec ● IP Security ● Layer 3 security architecture ● Enables VPN ● Delivers authentication, integrity and secrecy ● Implemented in Linux, Cisco, Windows.
IP Security: Security Across the Protocol Stack. IP Security There are some application specific security mechanisms –eg. S/MIME, PGP, Kerberos, SSL/HTTPS.
Chapter 8 IP Security MSc. NGUYEN CAO DAT Dr. TRAN VAN HOAI.
IP security Ge Zhang Packet-switched network is not Secure! The protocols were designed in the late 70s to early 80s –Very small network.
1 Lecture 13 IPsec Internet Protocol Security CIS CIS 5357 Network Security.
Internet Security CSCE 813 IPsec. CSCE813 - Farkas2 TCP/IP Protocol Stack Application Layer Transport Layer Network Layer Data Link Layer.
Cryptography and Network Security (CS435) Part Thirteen (IP Security)
IPSec  general IP Security mechanisms  provides  authentication  confidentiality  key management  Applications include Secure connectivity over.
IPSec – IP Security Protocol By Archis Raje. What is IPSec IP Security – set of extensions developed by IETF to provide privacy and authentication to.
IPSec is a suite of protocols defined by the Internet Engineering Task Force (IETF) to provide security services at the network layer. standard protocol.
1 IPSec: An Overview Dr. Rocky K. C. Chang 4 February, 2002.
Network Layer Security Network Systems Security Mort Anvari.
K. Salah1 Security Protocols in the Internet IPSec.
8-1Network Security Virtual Private Networks (VPNs) motivation:  institutions often want private networks for security.  costly: separate routers, links,
Presentaion on ipsecurity Presentaion given by arun saraswat To lavkush sharma sir arun saraswat1.
第六章 IP 安全. Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
VIRTUAL PRIVATE NETWORKS Lab 8. 2 Virtual Private Networks (VPNs)  Institutions often want private networks for security.  Costly! Separate routers,
IP Security
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.
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)
Somesh Jha University of Wisconsin
Internet and Intranet Fundamentals
CSE 4905 IPsec II.
IT443 – Network Security Administration Instructor: Bo Sheng
IPSec IPSec is communication security provided at the network layer.
BINF 711 Amr El Mougy Sherif Ismail
CSE565: Computer Security Lecture 23 IP Security
No.9: IP Security Network Information Security 网络信息安全
Cryptography and Network Security
IP Security and VPN Most of the slides are derived from the slides (Chapter-8) by the authors of «Computer Networking: A Top Down Approach», and from the.
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:
Virtual Private Networks (VPNs)
NET 536 Network Security Lecture 5: IPSec and VPN
Virtual Private Networks (VPNs)
Chapter 6 IP Security.
CSE 5/7349 – February 15th 2006 IPSec.
Cryptography and Network Security
Presentation transcript:

Lecture 9: Network Level Security – IPSec CS 336/536: Computer Network Security Fall 2015 Nitesh Saxena Adopted from previous lecture by Keith Ross, and Tony Barnard

Course Admin HW3 being graded HW4 will be posted soon Covers IPSec (lecture 9) and Wireless Security (lecture 10) Due 11am on Dec 07 (Monday) Lab exercise involves capturing WiFi packets using Wireshark Labs active this Friday 10/25/2017 Lecture 11: Privacy

Course Admin Final Exam: No class next week – Fall/Thanksgiving break! 7-9:30pm on Dec 9 (Wednesday), in classroom Cumulative Focus more on Post Mid-Term Material (65%) Our last lecture on Dec 2 – we will do exam review then No class next week – Fall/Thanksgiving break! 10/25/2017 Lecture 11: Privacy

Outline IPSec Modes and Protocols IKE Protocol Basics 10/25/2017 Lecture 7 - SSL/TLS

Relative Location of Security Facilities in the TCP/IP Protocol Stack Which Layer to Add Security to? IKE UDP Relative Location of Security Facilities in the TCP/IP Protocol Stack

Security at different layers Application layer: PGP Transport layer: SSL Network layer: IPsec Link layer: WEP / 802.11i IPsec approach: IPsec TCP/UDP/ICMP HTTP/SMTP/IM IPsec can provide security between any pair of network-layer entities (eg, between two hosts, two routers, or a host and a router).

IP Security IP datagrams have no inherent security IP source address can be spoofed Content of IP datagrams can be sniffed Content of IP datagrams can be modified IP datagrams can be replayed IPSec is a method for protecting IP datagrams Standardized by IETF: dozens of RFCs. Only sender and receiver have to be IPsec compliant Rest of network can be regular IP

What is security at the network-layer? Between two network entities: Sending entity encrypts/authenticates the payloads of datagrams. Payload could be: TCP segment, UDP segment, ICMP message, OSPF (routing) message, and so on. All data sent from one entity to the other would be hidden/authenticated: Web pages, e-mail, P2P file transfers, TCP SYN packets, and so on. That is, “blanket coverage”.

Virtual Private Networks (VPNs) Institutions often want private networks for security. Costly! Separate routers, links, DNS infrastructure. With a VPN, institution’s inter-office traffic is sent over public Internet instead. But inter-office traffic is encrypted and/or authenticated before entering public Internet

Virtual Private Network (VPN) IP header IPsec Secure payload headquarters branch office salesperson in hotel Public Internet laptop w/ IPsec Router w/ IPv4 and IPsec

IPsec services Integrity Authentication Replay attack prevention Confidentiality Two modes: Transport and Tunnel Two protocols providing different service models: AH – Authentication Header ESP – Encapsulating Security Payload

IPSec Modes: Transport and Tunnel Modes Transport Mode provides protection primarily for upper-layer protocols – that is, for the IP datagram payload. Transport mode is typically used in end-to-end communication between two hosts. Tunnel Mode extends protection to the entire datagram, by encapsulating it in a new “outer” datagram. Tunnel mode is typically used in communication between two routers (must be used if a router is involved).

IPsec Transport Mode IPsec IPsec datagram emitted and received by end-system. Protects upper level protocols

IPsec – tunneling mode (1) End routers are IPsec aware. Hosts need not be.

IPsec – tunneling mode (2) Also tunneling mode.

IPSec protocols Authentication Header (AH) protocol provides source authentication & integrity but not confidentiality Encapsulation Security Protocol (ESP) provides source authentication, integrity, and confidentiality more widely used than AH

Four combinations are possible! Host mode with AH Host mode with ESP Tunnel mode with AH Tunnel mode with ESP Most common and most important

Security associations (SAs) Before sending data, a virtual connection is established from sending entity to receiving entity. Called “security association (SA)” SAs are simplex: for only one direction Both sending and receiving entites maintain state information about the SA Recall that TCP endpoints also maintain state information. IP is connectionless; IPsec is connection-oriented! How many SAs in VPN w/ headquarters, branch office, and n traveling salesperson?

Tunnel Mode and Transport Mode Functionality

End-to-end encryption ESP in transport mode Alice Bob End-to-end encryption ESP in transport mode conceals what Alice is saying to Bob, but not that Alice and Bob are communicating.

ESP in tunnel mode Alice VPN Bob ESP in tunnel mode over the VPN also conceals the fact that Alice is talking to Bob

Scope of ESP encryption and authentication Original datagram ESP authentication does not extend to the IP header Protocol = 6 ESP in transport mode Protocol = 50 Next = 6 ESP in tunnel mode Protocol = 50 Next = 4

Example SA from R1 to R2 R1 stores for SA 193.68.2.23 200.168.1.100 172.16.1/24 172.16.2/24 SA Internet Headquarters Branch Office R1 R2 R1 stores for SA 32-bit identifier for SA: Security Parameter Index (SPI) the origin interface of the SA (200.168.1.100) destination interface of the SA (193.68.2.23) type of encryption to be used (for example, 3DES with CBC) encryption key type of integrity check (for example, HMAC with with MD5) authentication key

Security Association Database (SAD) Endpoint holds state of its SAs in a SAD, where it can locate them during processing. With n salespersons, 2 + 2n SAs in R1’s SAD When sending IPsec datagram, R1 accesses SAD to determine how to process datagram. When IPsec datagram arrives to R2, R2 examines SPI in IPsec datagram, indexes SAD with SPI, and processes datagram accordingly.

IPsec datagram Focus for now on tunnel mode with ESP new IP header ESP hdr original IP hdr Original IP datagram payload trl auth encrypted “enchilada” authenticated padding pad length next header SPI Seq #

What happens? Internet Headquarters Branch Office SA R1 R2 193.68.2.23 200.168.1.100 172.16.1/24 172.16.2/24 SA Internet Headquarters Branch Office R1 R2 new IP header ESP hdr original IP hdr Original IP datagram payload trl auth encrypted “enchilada” authenticated padding pad length next header SPI Seq #

R1 converts original datagram into IPsec datagram Appends to back of original datagram (which includes original header fields!) an “ESP trailer” field. Encrypts result using algorithm & key specified by SA. Appends to front of this encrypted quantity the “ESP header, creating “enchilada”. Creates authentication MAC over the whole enchilada, using algorithm and key specified in SA; Appends MAC to back of enchilada, forming payload; Creates brand new IP header, with all the classic IPv4 header fields, which it appends before payload.

Inside the enchilada: ESP trailer: Padding for block ciphers new IP header ESP hdr original IP hdr Original IP datagram payload trl auth encrypted “enchilada” authenticated padding pad length next header SPI Seq # ESP trailer: Padding for block ciphers ESP header: SPI, so receiving entity knows what to do Sequence number, to thwart replay attacks MAC in ESP auth field is created with shared secret key

IPsec sequence numbers For new SA, sender initializes seq. # to 0 Each time datagram is sent on SA: Sender increments seq # counter Places value in seq # field Goal: Prevent attacker from replaying a packet Receipt of duplicate, authenticated IP packets may disrupt service Method: Destination checks for duplicates But doesn’t keep track of ALL received packets; instead uses a window

Algorithm at receiver N is highest sequence # rcvd. Default W=64 If rcvd packet falls in window, packet is new, and MAC is valid ➜ slot in window marked If rcvd packet is to right of window, MAC is valid ➜ window advanced & right-most slot marked If rcvd packet is left of window, or already marked, or MAC not valid ➜ packet is discarded

Security Policy Database (SPD) Policy: For a given datagram, sending entity needs to know if it should use IPsec. Needs also to know which SA to use May use: source and destination IP address; protocol number. Info in SPD indicates “what” to do with arriving datagram; Info in the SAD indicates “how” to do it.

Focus on an outbound IP datagram crossing the boundary between an intranet and the Internet. How is it decided what security processes are applied to this datagram? This is a policy decision by administration. The decision for each category of traffic is entered into a Security Policy Database. The menu of available processes is collected into a Security Association Database. Adopt 2-step process - entries in the Security Policy Database point to entries in the Security Association Database.

Linux example: ESP in tunnel mode 193.68.2.23 200.168.1.100 172.16.1/24 172.16.2/24 SA Internet Headquarters Branch Office R1 R2 In each host, create config file: /etc/setkey.conf Execute setkey command in both hosts, which reads the setkey.conf file setkey –f /etc/setkey.conf Creates SAD and SPD databases

setkey.conf for R1 ESP protocol SPI 2 SAs added to SAD # Flush the SAD and SPD flush; spdflush; # SAs encrypt w/ 192 bit keys & auth w/ 128 bit keys Add 200.168.1.100 193.68.2.23 esp 0x201 -m tunnel -E 3des-cbc 0x7aeaca3f87d060a12f4a4487d5a5c3355920fae69a96c831 -A hmac-md5 0xc0291ff014dccdd03874d9e8e4cdf3e6; Add 193.68.2.23 200.168.1.100 esp 0x301 -m tunnel -E 3des-cbc 0xf6ddb555acfd9d77b03ea3843f2653255afe8eb5573965df -A hmac-md5 0x96358c90783bbfa3d7b196ceabe0536b; # Security policies spdadd 172.16.1.0/24 172.16.2.0/24 any -P out ipsec esp/tunnel/ 200.168.1.100 - 193.68.2.23 /require; spdadd 172.16.2.0/24 172.16.1.0/24 any -P in ipsec esp/tunnel/ 193.68.2.23 - 200.168.1.100 /require; ESP protocol SPI 2 SAs added to SAD apply to all packets 2 policies added to SPD

Another Example: AH in Transport Mode between R1 and R2 # Flush the SAD and SPD flush; spdflush; # AH SAs using 128 bit long keys Add 200.168.1.100 193.68.2.23 ah 0x200 -A hmac-md5 0xc0291ff014dccdd03874d9e8e4cdf3e6; Add 193.68.2.23 200.168.1.100 ah 0x300 -A hmac-md5 0x96358c90783bbfa3d7b196ceabe0536b; # Security policies Spdadd 200.168.1.100 193.68.2.23 any -P out ipsec ah/transport//require; Spdadd 193.68.2.23 200.168.1.100 any -P in ipsec 2 SAs added to SAD 2 policies added to SPD

Possible encryption algorithms DES 3DES AES RC5 IDEA 3-IDEA CAST Blowfish ….

IPsec Security Suppose Trudy sits somewhere between R1 and R2. She doesn’t know the keys. Will Trudy be able to see contents of original datagram? How about source, dest IP address, transport protocol, application port? Flip bits without detection? Masquerade as R1 using R1’s IP address? Replay a datagram?

Internet Key Exchange In previous examples, we manually established IPsec SAs in IPsec endpoints: Example SA SPI: 12345 Source IP: 200.168.1.100 Dest IP: 193.68.2.23 Protocol: ESP Encryption algorithm: 3DES-cbc HMAC algorithm: MD5 Encryption key: 0x7aeaca… HMAC key:0xc0291f… Such manually keying is impractical for large VPN with, say, hundreds of sales people. Instead use IPsec IKE (Internet Key Exchange)

IKE: PSK and PKI Authentication (proof who you are) with either pre-shared secret (PSK) or with PKI (pubic/private keys and certificates). With PSK, both sides start with secret: then run IKE to authenticate each other and to generate IPsec SAs (one in each direction), including encryption and authentication keys With PKI, both sides start with public/private key pair and certificate. run IKE to authenticate each other and obtain IPsec SAs (one in each direction). Similar with handshake in SSL.

Note that SA must first be established between the two IKEs Summary of relationship between SPD, IKE, and SAD: Note that SA must first be established between the two IKEs

Note that BYPASS IPsec is a possible policy for non-sensitive traffic that requires no security processing.

PROTOCOL = 50 or 51

Both phases must be complete before user data can flow Before a pair of security gateways can exchange user data protected by IPsec, they must complete a preliminary handshake, the Internet Key Exchange. During the handshake they establish algorithms, keys that will be used, and authenticate each other. IKE itself has two phases: ► phase 1: a secure channel, the IKE Security Association pair is set up between the two security gateways ► phase 2: the two gateways use this channel to negotiate safely one or more IPsec SA pairs that will be used to protect transfer of user data between the two intranets Both phases must be complete before user data can flow

Then the SPD tells IKE what SAs are needed for user traffic. First we must establish a secure channel between the two security gateways – the IKE SA Then the SPD tells IKE what SAs are needed for user traffic. IKE negotiates the user SAs and enters them in the SAD.

IKE Phases IKE has two phases Phase 1: Establish bi-directional IKE SA Note: IKE SA different from IPsec SA Also called ISAKMP security association Phase 2: ISAKMP is used to securely negotiate the IPsec pair of SAs Phase 1 has two modes: aggressive mode and main mode Aggressive mode uses fewer messages Main mode provides identity protection and is more flexible

Diffie-Hellman (DH) Key Exchange Given (g, ga) hard to compute a – Discrete Logarithm Assumption A  B: Ka = ga mod p B  A: Kb = gb mod p A outputs Kab = Kba B outputs Kba = Kab Note Kab = Kba = gab mod p

Security of DH key exchange No authentication of either party Secure only against a passive adversary Under the computational Diffie-Hellman assumption Given (g, ga,gb), hard to compute gab Not secure against an active attacker Man-in-the-middle attack…

Authenticated DH Key Exchange A  B: Ka = ga mod p B  A: Certb, Kb = gb mod p SigSKb(Kb, Ka ) A  B: Certa, SigSKa(Ka,Kb) A outputs Kab = Kba B outputs Kba = Kab

IKE phase 1: The Identity Protection Exchange consists of 6 messages: Messages (1) and (2): Peers negotiate algorithms to be used for establishment of the secure channel between security gateways Messages (3) and (4) generate the keys to be used Messages (5) and (6) authenticate the peers.

IKE and IPSec Security Associations established. IKE Phase 2 We could go through the six-message exchange again, selecting algorithms, producing totally new keys and checking authentication. Instead, use Quick Mode, which takes just three messages. Quick Mode accepts the choice of algorithms made in phase1. It also accepts the DH key generated in phase 1, but hashes it to make “new” keys (“new keys from old”) End of Handshake. IKE and IPSec Security Associations established. We can proceed to transmit user data.

Summary of IPsec IKE message exchange for algorithms, secret keys, SPI numbers Either the AH or the ESP protocol (or both) The AH protocol provides integrity and source authentication The ESP protocol (with AH) additionally provides encryption IPsec peers can be two end systems, two routers/firewalls, or a router/firewall and an end system

Further Reading Stallings Chapter 9