OpenSSL up to 1.0.x Ticket ssl/t1_lib.c tls_decrypt_ticket length input validation
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.3 | $0-$5k | 0.00 |
Summary
A vulnerability classified as problematic was found in OpenSSL up to 1.0.x. The affected element is the function tls_decrypt_ticket in the library ssl/t1_lib.c of the component Ticket Handler. Such manipulation of the argument length leads to input validation.
This vulnerability is listed as CVE-2016-6302. The attack may be performed from remote. There is no available exploit.
Upgrading the affected component is advised.
Details
A vulnerability, which was classified as problematic, has been found in OpenSSL up to 1.0.x (Network Encryption Software). Affected by this issue is the function tls_decrypt_ticket in the library ssl/t1_lib.c of the component Ticket Handler. The manipulation of the argument length with an unknown input leads to a input validation vulnerability. Using CWE to declare the problem leads to CWE-20. The product receives input or data, but it does
not validate or incorrectly validates that the input has the
properties that are required to process the data safely and
correctly. Impacted is availability. CVE summarizes:
The tls_decrypt_ticket function in ssl/t1_lib.c in OpenSSL before 1.1.0 does not consider the HMAC size during validation of the ticket length, which allows remote attackers to cause a denial of service via a ticket that is too short.
The bug was discovered 09/16/2016. The weakness was presented 08/24/2016 by Shi Lei as USN-3087-1 as confirmed git commit (GIT Repository). The advisory is available at git.openssl.org. The public release was coordinated in cooperation with the vendor. This vulnerability is handled as CVE-2016-6302 since 07/26/2016. The attack may be launched remotely. No form of authentication is required for exploitation. Technical details are known, but there is no available exploit. The following code is the reason for this vulnerability:
if (eticklen < 48)
return 2; The advisory points out:If a ticket callback changes the HMAC digest to SHA512 the existing sanity checks are not sufficient and an attacker could perform a DoS attack with a malformed ticket. Add additional checks based on HMAC size.
The vulnerability was handled as a non-public zero-day exploit for at least 2 days. During that time the estimated underground price was around $25k-$100k. The vulnerability scanner Nessus provides a plugin with the ID 95255 (AIX OpenSSL Advisory : openssl_advisory21.asc (SWEET32)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family AIX Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 316384 (Cisco Unity Express OpenSSL Multiple Vulnerabilities (cisco-sa-20160927-openssl)).
Upgrading to version 1.1.0 eliminates this vulnerability. Applying a patch is able to eliminate this problem. The bugfix is ready for download at git.openssl.org. The best possible mitigation is suggested to be upgrading to the latest version. A possible mitigation has been published immediately after the disclosure of the vulnerability. The vulnerability will be addressed with the following lines of code:
if (eticklen <=
TLSEXT_KEYNAME_LENGTH + EVP_CIPHER_CTX_iv_length(ctx) + mlen) {
ret = 2;
goto err;
}The vulnerability is also documented in the databases at Tenable (95255) and SecurityFocus (BID 92628†). See VDB-87879, VDB-88080, VDB-90396 and VDB-90937 for similar entries. If you want to get best quality of vulnerability data, you may have to visit VulDB.
Product
Type
Name
Version
License
Support
- end of life (old version)
Website
- Product: https://www.openssl.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.4VulDB Meta Temp Score: 6.3
VulDB Base Score: 5.3
VulDB Temp Score: 5.1
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Input validationCWE: CWE-20
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 95255
Nessus Name: AIX OpenSSL Advisory : openssl_advisory21.asc (SWEET32)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
OpenVAS ID: 59958
OpenVAS Name: RedHat Update for openssl RHSA-2016:1940-01
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Upgrade: OpenSSL 1.1.0
Patch: e97763c92c655dcf4af2860b3abd2bc4c8a267f9
Timeline
07/26/2016 🔍08/22/2016 🔍
08/24/2016 🔍
08/24/2016 🔍
08/24/2016 🔍
09/16/2016 🔍
09/16/2016 🔍
09/18/2016 🔍
11/22/2016 🔍
09/19/2022 🔍
Sources
Product: openssl.orgAdvisory: USN-3087-1
Researcher: Shi Lei
Status: Confirmed
Confirmation: 🔍
Coordinated: 🔍
CVE: CVE-2016-6302 (🔍)
GCVE (CVE): GCVE-0-2016-6302
GCVE (VulDB): GCVE-100-91658
OVAL: 🔍
SecurityFocus: 92628 - OpenSSL CVE-2016-6302 Denial of Service Vulnerability
SecurityTracker: 1036885
See also: 🔍
Entry
Created: 09/18/2016 09:59Updated: 09/19/2022 06:40
Changes: 09/18/2016 09:59 (93), 07/07/2019 16:14 (4), 09/19/2022 06:40 (5)
Complete: 🔍
Cache ID: 216::103
If you want to get best quality of vulnerability data, you may have to visit VulDB.
No comments yet. Languages: en.
Please log in to comment.