Top Banner
IPsec Details IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is an SPI? What’s an SA? Encapsulating Security Payload (ESP) ESP Layout Padding Using ESP IPsec and Firewalls IPsec and the DNS Implementation Issues Key Management Requirements Internet Key Exchange (IKE) Some Attacks 1 / 43
43

IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Jan 27, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

IPsec Details

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

1 / 43

Page 2: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Authentication Header (AH)

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

2 / 43

■ Based on keyed cryptographic hash function.■ Covers AH header, payload and immutable

portion of preceeding IP header.■ Not that useful today, compared to ESP with

null authentication■ Usually used with HMAC-SHA1 or

HMAC-MD5■ HMAC output is frequently truncated■ Details: see RFC 4302

Page 3: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

AH Layout

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

3 / 43

proto length reserved

SPI

Sequence Number

digest (variable length)

Page 4: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Other AH Fields

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

4 / 43

■ “Proto” — what transport protocol header isnext (i.e., TCP, UDP, etc.)

■ “length” — length of AH header in 32-bitwords, minus 2

■ Actually, length is implicit in the securityassociation; putting it in the header permitscontext-free (and unkeyed) examination of thepacket

■ “Sequence” — prevents replay attacks

Page 5: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Mutable Parts of the IP Header

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

5 / 43

■ Some parts of the IP header change in transit■ Obvious: TTL (and hence IP checksum)■ Fragmentation? You generally reassemble

fragments before doing AH processing■ DSCP (previously known as ToS)■ IP options — some change in flight (record

route, source route); others do not. SeeRFC 4302 for details

Page 6: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

What is an SPI?

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

6 / 43

■ SPI — Security Parameter Index■ Identifies Security Association

■ Each SA has its own keys, algorithms, policyrules

■ On packet receipt, look up SA from 〈SPI,dstaddr〉 pair

Page 7: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

What’s an SA?

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

7 / 43

■ SA: Security Association

■ Think of it as an IPsec connection■ All of the parameters needed for an IPsec

session: crypto algorithms (AES, SHA1, etc.),modes of operation (CBC, HMAC, etc.), keylengths, traffic to be protected, etc.

■ Both sides must agree on the SA for securecommunications to work

Page 8: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Encapsulating Security Payload

(ESP)

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

8 / 43

■ Carries encrypted packet.■ An SPI is used, as with AH.■ Preferred use of ESP is for AES in CBC mode

with (truncated) HMAC-SHA1 forauthentication

■ IV, if used, is the first few bytes of “data”■ Older systems use 3DES, perhaps with

HMAC-MD5■ Details in RFC 4303

Page 9: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

ESP Layout

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

9 / 43

SPI

sequence number

data

data padding

padding padlen payload

digest

digest

digest

digest

Digestrange

Page 10: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Padding

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

10 / 43

■ “padlen” says how many bytes of paddingshould be removed from the packet

■ Primary purpose: handle CBC blocksize issue■ Secondary purpose: add random extra

padding, to confuse traffic analysts (but itdoesn’t do a very good job of that)

Page 11: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Using ESP

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

11 / 43

■ Can be used with null authentication or nullencryption

■ With null encryption, provides authenticationonly

■ Easier to implement than AH■ Note: you should virtually always use

authentication with ESP■ Similarly, sequence numbers should be used

whenever possible

Page 12: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

IPsec and Firewalls

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

12 / 43

■ Encryption is not authentication orauthorization

■ Access controls may need to be applied toencrypted traffic, depending on the source.

■ The source IP address is only authenticated ifit is somehow bound to the certificate.

■ Encrypted traffic can use a different firewall;however, co-ordination of policies may beneeded.

Page 13: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

IPsec and the DNS

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

13 / 43

■ IPsec often relies on the DNS.

◆ Users specify hostnames.◆ IPsec operates at the IP layer, where IP

addresses are used.◆ An attacker could try to subvert the

mapping.

■ DNSSEC may not meet some organizationalsecurity standards.

■ DNSSEC — which isn’t deployed yet, either —uses its own certificates, not X.509.

Page 14: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Implementation Issues

IPsec DetailsAuthenticationHeader (AH)

AH Layout

Other AH FieldsMutable Parts of theIP Header

What is an SPI?

What’s an SA?EncapsulatingSecurity Payload(ESP)

ESP Layout

Padding

Using ESP

IPsec and Firewalls

IPsec and the DNSImplementationIssues

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

14 / 43

■ How do applications request cryptographicprotection? How do they verify its existence?

■ How do adminstrators mandate cryptographybetween host or network pairs?

■ We need to resolve authorization issues.

Page 15: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Key ManagementRequirements

IPsec Details

Key ManagementRequirements

Why KeyManagement?

Static Keys

Replay Protection

SA Management

Other Issues

Internet KeyExchange (IKE)

Some Attacks

15 / 43

Page 16: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Why Key Management?

IPsec Details

Key ManagementRequirements

Why KeyManagement?

Static Keys

Replay Protection

SA Management

Other Issues

Internet KeyExchange (IKE)

Some Attacks

16 / 43

■ Where do IPsec keys come from?■ Could we use static keys?■ What are the other requirements for key

management?

Page 17: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Static Keys

IPsec Details

Key ManagementRequirements

Why KeyManagement?

Static Keys

Replay Protection

SA Management

Other Issues

Internet KeyExchange (IKE)

Some Attacks

17 / 43

■ In theory, static keys can be used; in practice,they have several disadvantages

■ Primary disadvantage: they almost certainlywill not be random enough

■ (If they’re passwords, attackers can launch apassword guessing attack)

■ History (and theory) suggest that it’s a badidea to encrypt too much plaintext with asingle key

■ You can’t use replay protection with static keys

Page 18: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Replay Protection

IPsec Details

Key ManagementRequirements

Why KeyManagement?

Static Keys

Replay Protection

SA Management

Other Issues

Internet KeyExchange (IKE)

Some Attacks

18 / 43

■ The first packet transmitted on an SA must benumbered 1

■ Any time a machine reboots and losesknowledge of its sequence number status, itwill restart from 1

■ Besides, 232 packets isn’t that many; it will

wrap around at some point■ Replays can be used to attack confidentiality

Page 19: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

SA Management

IPsec Details

Key ManagementRequirements

Why KeyManagement?

Static Keys

Replay Protection

SA Management

Other Issues

Internet KeyExchange (IKE)

Some Attacks

19 / 43

■ We spoke of the SADB■ How does it get populated?■ We must negotiate it!

Page 20: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Other Issues

IPsec Details

Key ManagementRequirements

Why KeyManagement?

Static Keys

Replay Protection

SA Management

Other Issues

Internet KeyExchange (IKE)

Some Attacks

20 / 43

■ SA lifetime■ Dead peer detection■ SA tear-down■ Algorithm negotiation■ Other negotiations

Page 21: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Internet Key Exchange (IKE)

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

21 / 43

Page 22: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

IKE

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

22 / 43

■ Very complex protocol■ Does a lot, probably too much■ We’ll just skim the surface, and we’ll discuss

IKEv2, which is simpler■ I’ll be simplifying it, too. . .

Page 23: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Basic Philosophy

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

23 / 43

■ Two parties, Initiator and Responder

■ First set up a control SA (known in IKEv1 as aPhase 1 SA)

■ Use the control SA to create child SAs (knownas Phase 2 SAs)

■ Actual IPsec data is protected via child SAs■ Other control traffic can use the control SA

Page 24: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Initial Exchange

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

24 / 43

■ (Each message includes a random SPI, todistinguish between different IKE sessions.)

■ Negotiate cryptographic algorithms■ Do a Diffie-Hellman exchange

I → R : SAi1, KEi, Ni

R → I : SAr1, KEr, Nr, [Certreq]

SA Crypto algorithm proposals and answerKE Diffie-Hellman exponentialN Nonce (random number)Certreq List of trust anchors (CAs)

Page 25: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

What Do We Have?

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

25 / 43

■ I has proposed several algorithms; R hasaccepted one of each category

■ The two sides have a Diffie-Hellman sharedsecret. The Diffie-Hellman shared secret iscombined with the two nonces to produce seed

keying material. Any message M protected bykeying material derived from this will bewritten M

■ Different keys are used in each direction■ I knows what CAs R trusts■ Neither side knows the other’s identity yet

Page 26: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Authentication

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

26 / 43

I → R : IDi, SAi2, TSi, TSr, [Cert] , Auth

R → I : IDr, SAr2, TSi, TSr , Auth

Both sides send their own identities, the SA datafor subsequent exchanges, traffic selectors, and anauthenticator.The authenticator is either an HMAC or a digitalsignature of the message (including the SPI)concatenated with the current sender’s identityand the other party’s nonce.There are various other optional payloads forcertificates, CAs, etc.

Page 27: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

What Do We Have?

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

27 / 43

■ Both sides know the other’s identity■ Both sides have authenticated the other■ Both sides have shared seed key material■ I has proposed a traffic selector; R has

accepted a possibly-narrower one

Page 28: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Traffic Selectors

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

28 / 43

■ A traffic selector is a list of IP addresses andport numbers that are to be protected by theSA

■ TSi specifies source addresses and ports; TSr

specifies destination addresses and ports■ I proposes a certain range of traffic it wishes to

protect■ R may agree to a narrower range■ This lets I — possibly a laptop — have a

simple, “protect everything” configuration; thecentral gateway can narrow the scope ofprotection if desired

Page 29: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Child SAs

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

29 / 43

■ The control SA can now be used to createchild SAs for actual user traffic

I → R : SA, Ni, [KEi], [TSi, TSr]

R → I : SA, Nr, [KEr], [TSi, TSr]

■ Send new nonces for use in calculating keyingmaterial. For greater forward secrecy, send anoptional new Diffie-Hellman exponential.

■ Optionally negotiate new traffic selectors

Page 30: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Rekeying

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

30 / 43

■ Any SA can be rekeyed■ To rekey an SA, send a Rekey message with an

SA identifier, new nonces, and perhaps newDiffie-Hellman exponentials

■ Omit traffic selectors

Page 31: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

SA Lifetime

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

31 / 43

■ SAs do not have negotiated lifetimes■ When either side thinks an SA has been

around for long enough, it negotiates a new SA■ Net effect: SA lifetime is the shorter of the

two sides’ preferences■ After the new one is set up, delete the old SA

Page 32: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Other Control Messages

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

32 / 43

■ IKE “ping” — see if the other side is still alive■ Delete SA■ Obtain a remote IP address■ Check version information■ Error messages

Page 33: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Timeouts

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

33 / 43

■ IKE runs over UDP■ Each side must therefore implement its own

timers and retranmissions■ It’s reasonable to keep a cache of

recently-received and -transmitted messages —when a duplicate request arrives, retransmitthe cached copy

Page 34: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Denial of Service

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

34 / 43

■ What if an attacker attempts to exhaust R’sCPU time or memory?

■ CPU time: force it to calculate many D-Hexponentials

■ Memory: create initial SAs; don’t authenticatethem

Page 35: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Defenses

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

35 / 43

■ To prevent CPU time attacks, it’s permissibleto reuse D-H exponentials for a short while(though it hurts perfect forward secrecy)

■ To prevent memory attacks, watch for toomany incomplete SAs

■ When these start to occur, reject new requestsand send a cookie instead

■ These are stateless, cryptographically sealedmessages bound to the sender’s IP address

■ Require that such a cookie be returned withthe actual first message

■ Guards against spoofed IP address attacks

Page 36: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Using IKE

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

IKE

Basic Philosophy

Initial Exchange

What Do We Have?

Authentication

What Do We Have?

Traffic Selectors

Child SAs

Rekeying

SA LifetimeOther ControlMessages

Timeouts

Denial of Service

Defenses

Using IKE

Some Attacks

36 / 43

■ A host is configured with an initial protectionSPD

■ When a packet is to be sent that matches theSPD, IPsec searches for an existing SA

■ If there is none, a request is sent to the localIKE daemon

■ The IKE daemon attempts to create an SA,and updates the SAD

■ (On some systems, this may result in updatingthe SPD)

■ The packet is then transmitted

Page 37: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Some Attacks

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

37 / 43

Page 38: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Attacks!

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

38 / 43

■ I keep talking about subtle attacks■ Let’s look at some old ones. . .

Page 39: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Splicing Attack

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

39 / 43

■ Suppose that (a) ESP is being used with noauthentication, (b) no sequence numbers, and(c) the good guy and the bad guy can sendtraffic on the same SA

■ The bad guy intercepts a good guy’s packet,sends a UDP packet with checksums turnedoff, and intercepts it, too

■ The attacker then uses CBC splicing to replacethe end of the UDP packet with the goodguy’s packet, and reinjects it

■ The receiving IPsec sees this packet, decryptsit, and passes it to the bad guy’s UDP listener

Page 40: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Defenses

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

40 / 43

■ Use ESP authentication■ Use ESP sequence numbers, to prevent

reinjection of the UDP packet (though thereare other variants that make that less useful)

■ Use a separate SA for each connection

Page 41: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Using a Separate SA?

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

41 / 43

■ If you use separate SAs for each connection, itmakes life easier for traffic analysts

■ It can also aid cryptanalysts

Page 42: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Probable Plaintext Attacks

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

42 / 43

■ How does a cryptanalyst know if a guess atthe key was correct?

■ What should the packet look like?■ Compare certain fields from two packets for

the same connection — they should match■ Source and destination IP address must match

exactly■ Probabilistically, most bits of counters (such as

TCP sequence numbers) will match: if youadd 512 to a 32-bit number, probability is .97that the high-order 18 bits remain unchanged,and the low-order 9 bits are always unchanged

■ Other fields can be matched as well

Page 43: IPsec Details - Columbia Universitysmb/classes/f06/l11.pdf · ESP Layout IPsec Details Authentication Header (AH) AH Layout Other AH Fields Mutable Parts of the IP Header What is

Defenses

IPsec Details

Key ManagementRequirements

Internet KeyExchange (IKE)

Some Attacks

Attacks!

Splicing Attack

DefensesUsing a SeparateSA?Probable PlaintextAttacks

Defenses

43 / 43

■ Not easy!■ Try avoiding per-connection SAs■ Don’t use ciphers that are weak enough that

this is a useful attack. . .