Insecure TLS_DH_anon_WITH_AES_128_CBC_SHA
- IANA name:
- TLS_DH_anon_WITH_AES_128_CBC_SHA
- OpenSSL name:
- ADH-AES128-SHA
- GnuTLS name:
- TLS_DH_ANON_AES_128_CBC_SHA1
- Hex code:
- 0x00, 0x34
- TLS Version(s):
- TLS1.0, TLS1.1, TLS1.2, TLS1.3
- Protocol:
- Transport Layer Security (TLS)
- Key Exchange:
- Diffie-Hellman (DH)
- Authentication:
- Anonymous (anon)
- 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.
Anonymous key exchanges are generally vulnerable to Man in the Middle attacks.
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).