tls record layer bugs [email protected] ietf67 tls wg

13
TLS Record Layer Bugs [email protected] IETF67 TLS WG

Upload: erik-davidson

Post on 17-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

TLS Record Layer Bugs

[email protected] TLS WG

Page 2: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Background

• Testing inspired by Yngve’s draft

• No illegal inputs (overflows etc.)

Page 3: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Fragmentation

“multiple client messages of the same ContentType MAY be coalesced into a single TLSPlaintext record, or a single message MAY be fragmented across several records”

Page 4: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Fragmentation: test results

• OpenSSL fail• Microsoft IIS fail• Mozilla NSS OK• Certicom OK• GnuTLS OK• Sun JSSE OK• Cryptlib fail• PureTLS fail• TLSLite fail• MatrixSSL fail

Page 5: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Fragmentation: proposal

• MUST NOT fragment Handshake, Alert, and CCS messages

• Unless larger than max. fragment size

• …At least when using TLS_NULL_WITH_NULL_NULL?

Page 6: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Empty fragments: test results

• OpenSSL fail• Microsoft IIS fail• Mozilla NSS fail• Certicom OK• GnuTLS OK• Sun JSSE fail• Cryptlib fail• PureTLS fail• TLSLite fail• MatrixSSL fail

Page 7: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Empty fragments: proposal

• MUST NOT send empty fragments

• … with Handshake/Alert/CCS content type only?

Page 8: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Large padding

“padding MAY be any length up to 255 bytes, as long as it results in the TLSCiphertext.length being an integral multiple of the block length”

Page 9: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Large padding: test results

• OpenSSL OK• Microsoft IIS OK• Mozilla NSS OK• Certicom OK• GnuTLS OK• Sun JSSE OK• Cryptlib OK• PureTLS OK• TLSLite OK• MatrixSSL fail

Page 10: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Unknown content types

“If a TLS implementation receives a record type it does not understand, it SHOULD just ignore it.”

Page 11: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Unknown content: test results

• OpenSSL OK• Microsoft IIS fail• Mozilla NSS fail• Certicom fail• GnuTLS fail• Sun JSSE OK• Cryptlib fail• PureTLS fail• TLSLite fail• MatrixSSL fail

Page 12: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Unknown content: proposal

• MUST NOT send other content types except when negotiated using a TLS extension

Page 13: TLS Record Layer Bugs Pasi.Eronen@nokia.com IETF67 TLS WG

Summary

• I have some more tests…

• Anyone interested in more testing?– SSL accelerator boxes?– Lotus Domino?