Weak TLS_DH_RSA_WITH_AES_128_CBC_SHA
- IANA name:
- TLS_DH_RSA_WITH_AES_128_CBC_SHA
- Hex code:
- 0x00, 0x31
- TLS Version(s):
- TLS1.0, TLS1.1, TLS1.2, TLS1.3
- Protocol:
- Transport Layer Security (TLS)
- Key Exchange:
- Diffie-Hellman (DH)
- Authentication:
- Rivest Shamir Adleman algorithm (RSA)
- Encryption:
- Advanced Encryption Standard with 128bit key in Cipher Block Chaining mode (AES 128 CBC)
- Hash:
- HMAC Secure Hash Algorithm 1 (SHA)
- Included in RFC:
- Machine-readable:
- application/json
This key exchange algorithm does not support Perfect Forward Secrecy (PFS) which is recommended, so attackers cannot decrypt the complete communication stream.
The so-called Raccoon Attack affects the specifications of TLS 1.2 and below when using a DH(E) key exchange. According to the researchers, while very hard to exploit, in rare circumstances this timing attack allows attackers to decrypt the connection between users and the server. A fix has been introduced in the TLS 1.3 specification.
There are reports that servers using the RSA authentication algorithm with keys longer than 3072-bit may experience heavy performance issues leading to connection timeouts and even service unavailability if many clients open simultaneous connections.
In 2013, researchers demonstrated a timing attack against several TLS implementations using the CBC encryption algorithm (see isg.rhul.ac.uk). Additionally, the CBC mode is vulnerable to plain-text attacks in TLS 1.0, SSL 3.0 and lower. A fix has been introduced with TLS 1.2 in form of the GCM mode which is not vulnerable to the BEAST attack. GCM should be preferred over CBC.
The Secure Hash Algorithm 1 has been proven to be insecure as of 2017 (see shattered.io).