IBM Verify

 View Only

LinkedIn Share on LinkedIn

TLS 1.3 Support and IBM Security Access Manager

By Mick GRAY posted Fri October 25, 2019 01:13 PM

  

By Michael Gray and Keiran Robinson

TLS 1.3, RFC 8446, was published in August 2018 and is a major update to TLS 1.2, RFC 5246, published in August 2008.
 

Works out of the box  

Reverse Proxy support for TLS 1.3 was introduced to ISAM in version 9.0.7.0. The new configuration entries can be found in the [ssl] and [junctions] stanzas of the Reverse Proxy configuration file alongside the existing entries which control the enabled SSL protocols. By default, TLS 1.3 is disabled on new or existing Reverse Proxy instances. 

To enable TLS 1.3 for the Reverse Proxy front end, set [ssl] disable-tls-v13 to false. 

To enable TLS 1.3 for backend (junctioned) application connections, set [junction] disable-tls-v13 to false. 

Note that if TLS 1.3 is enabled, SSL 2.0 and SSL 3.0 will be disabled regardless of any value provided for disable-ssl-v2 or disable-ssl-v3. 

Individual ciphers can be managed using the [ssl-qop-mgmt-default] stanza. A complete list of ciphers can be found in the stanza reference documentation. 

Forward Secrecy 

TLS 1.3 only has Forward Secrecy (ECDHE CipherSuites) CipherSuites. By default the X22519 ‘safe’ curve  (https://safecurves.cr.yp.to/) is used  (NIST announced it will be FIPS approved) giving effective security of 125.8 bits.  

Note: The safe curves; X22519 (Bernstein) and X448 (Goldilocks; 222.8 bit security) are currently less performant than NIST P256 (127.8 bit security) as P256 is highly optimised however this gap is expected to close over time. 

 

 

 

Also note that Finite Field Diffie–Hellman key agreement is not currently supported. 

 
Session Tickets 

TLS 1.3 uses Session Tickets instead of Session IDs for Session Resumption.  ISAM uses Session Tickets in a Forward Secrecy mode that causes the SID Cache to be reused and the cache operation, size wise, is same as TLSV12 although caches update will be more frequent.  This mode of operation prevents secrets being transmitted between the Server and Client to ensure Forward Secrecy. 

ISAM also operates in a Resumption Forward Secrecy mode which means a new Key Share is computed for each resumption.   
 
Additionally, Session Tickets have single use only which means a new Session Ticket is issued for every resume operation. 

Encrypted Handshake 
In TLS 1.3 only the Client Hello and Server Hello are transmitted in Clear Text.  All other handshake messages are encrypted and appear as application data flow on the wire; however, it is still possible to deduce aspects of the handshake message flow from size and sequence.   

 

 

 

Handshake Revealed 

 

 

Middle Box Compatibility 

GSKit always operates in what is called the TLS 1.3 Middle Box compatibility mode i.e. it sends fake ChangeCipherSpec and Phoney Session ID’s to maximise interoperability.  In this way the Middle Box assumes that it is seeing a session resumption handshake. 

Automatic Key Updates 

When using AES GCM in TLS 1.3, Keys will be updated transparently every 2^24.5 (23,726,566) records.   
 
The ChaChaPoly1305 CipherSuite does not require Key Updates. 

Security Enforcement 

TLS 1.3 enforces 112 bit minimum security which means RSA Keys must be >= 2048, EC keys >= 224 and DSA Keys >= 2048  

Additionally, TLS 1.3 will not allow fallback to a peer that is offering weak ciphers i.e. less than 112 bits of security. 

Caveat 

TLS 1.3 will not work with traffic inspectors as RSA Key Exchange is not supported by TLS 1.3. 

0 comments
25 views

Permalink