CVE-2023-0361: High severity gnutls vulnerability
A timing side-channel in the handling of RSA ClientKeyExchange messages was discovered in GnuTLS. This side-channel can be sufficient to recover the key encrypted in the RSA ciphertext across a network in a Bleichenbacher style attack. To achieve a successful decryption the attacker would need to send a large amount of specially crafted messages to the vulnerable server. By recovering the secret from the ClientKeyExchange message, the attacker would be able to decrypt the application data exchanged over that connection.
Other sources
A timing side-channel vulnerability was found in RSA ClientKeyExchange messages in GnuTLS. This side-channel may be sufficient to recover the key encrypted in the RSA ciphertext across a network in a Bleichenbacher style attack. To achieve a successful decryption, the attacker would need to send a large amount of specially crafted messages to the vulnerable server. By recovering the secret from the ClientKeyExchange message, the attacker would be able to decrypt the application data exchanged over that connection.
GnuTLS could allow a remote attacker to obtain sensitive information, caused by a timing side-channel flaw in the handling of RSA ClientKeyExchange messages. By recovering the secret from the ClientKeyExchange message, an attacker could exploit this vulnerability to decrypt the application data exchanged over that connection, and use this information to launch further attacks against the affected system.
— IBM
The time for GnuTLS to respond to malformed RSA ciphertexts in ClientKeyExchange depends on kind of error in the RSA padding.
Generally, it looks like the response time depends on size of encrypted data in the PKCS#1 v1.5 encrypted data.
I've run tests with 1 million connections per probe, on a 2.4GHz skylake CPU with 1024 bit RSA key, the two probes with most dissimilar results were "too long (49-byte) pre master secret" and "invalid MAC in Finished on pos 0", it takes the server an extra 58.5ns to respond one over the other. This is with a 95% confidence interval of +-6.8ns.
Exact results of Wilcoxon signed-rank tests are in this report.csv file, you can find explanation of the plaintexts sent by those probes in https://github.com/tomato42/tlsfuzzer/pull/679
— Red Hat
Affected Software
Remediation
Patch Available
Event History
Parent advisories
This vulnerability appears in the following advisories.
Frequently Asked Questions
What is CVE-2023-0361?
CVE-2023-0361 is a timing side-channel vulnerability found in RSA ClientKeyExchange messages in GnuTLS.
What is the severity level of CVE-2023-0361?
CVE-2023-0361 has a high severity level with a value of 7.
Who discovered the CVE-2023-0361 vulnerability?
The CVE-2023-0361 vulnerability was discovered by the GnuTLS security team.
Which software versions are affected by CVE-2023-0361?
Versions 0:3.6.16-6.el8_7, 0:3.6.16-5.el8_6.1, 0:3.7.6-18.el9_1, and 0:3.7.6-18.el9_0 of GnuTLS are affected by CVE-2023-0361.
How can I fix the CVE-2023-0361 vulnerability?
To fix the CVE-2023-0361 vulnerability, update GnuTLS to version 3.7.7 or higher.