CVE-2008-5077: Input Validation

Published Dec 16, 2008
·
Updated

Draft advisory from OpenSSL team:

OpenSSL Security Advisory [07-Jan-2009]

Incorrect checks for malformed signatures -------------------------------------------

Several functions inside OpenSSL incorrectly checked the result after calling the EVPVerifyFinal function, allowing a malformed signature to be treated as a good signature rather than as an error. This issue affected the signature checks on DSA and ECDSA keys used with SSL/TLS.

One way to exploit this flaw would be for a remote attacker who is in control of a malicious server or who can use a 'man in the middle' attack to present a malformed SSL/TLS signature from a certificate chain to a vulnerable client, bypassing validation.

This vulnerability is tracked as CVE-2008-5077.

The OpenSSL security team would like to thank the Google Security Team for reporting this issue.

Who is affected? -----------------

Everyone using OpenSSL releases prior to 0.9.8j as an SSL/TLS client when connecting to a server whose certificate contains a DSA or ECDSA key.

Use of OpenSSL as an SSL/TLS client when connecting to a server whose certificate uses an RSA key is NOT affected.

Verification of client certificates by OpenSSL servers for any key type is NOT affected.

Recommendations for users of OpenSSL ------------------------------------

Users of OpenSSL 0.9.8 should update to the OpenSSL 0.9.8j release which contains a patch to correct this issue.

The patch used is also appended to this advisory for users or distributions who wish to backport this patch to versions they build from source. Please note: this patch also includes fixes for a few other cases where return codes are not correctly checked, but these do not have a security implication

Recommendations for projects using OpenSSL ------------------------------------------

Projects and products using OpenSSL should audit any use of the routine EVPVerifyFinal() to ensure that the return code is being correctly handled. As documented, this function returns 1 for a successful verification, 0 for failure, and -1 for an error.

General recommendations -----------------------

Any SSL/TLS server with clients that OpenSSL to verify DSA or ECDSA certificates, regardless of the software used by the server, should either ensure that all clients are upgraded or should stop using DSA/ECDSA certificates. Note that unless certificates are revoked (and clients check for revocation) impersonation will still be possible until the certificate expires.

Other sources

OpenSSL 0.9.8i and earlier does not properly check the return value from the EVPVerifyFinal function, which allows remote attackers to bypass validation of the certificate chain via a malformed SSL/TLS signature for DSA and ECDSA keys.

Red Hat

Affected Software

63 affected componentsFixes available
redhat/openssl<0:0.9.7a-43.17.el4_7.2
0:0.9.7a-43.17.el4_7.2
redhat/openssl096b<0:0.9.6b-22.46.el4_7
0:0.9.6b-22.46.el4_7
redhat/openssl<0:0.9.8b-10.el5_2.1
0:0.9.8b-10.el5_2.1
redhat/openssl097a<0:0.9.7a-9.el5_2.1
0:0.9.7a-9.el5_2.1
OpenSSL OpenSSL<=0.9.8h
OpenSSL OpenSSL=0.9.1c
OpenSSL OpenSSL=0.9.2b
OpenSSL OpenSSL=0.9.3
OpenSSL OpenSSL=0.9.3a
OpenSSL OpenSSL=0.9.4
OpenSSL OpenSSL=0.9.5
OpenSSL OpenSSL=0.9.5-beta1
OpenSSL OpenSSL=0.9.5-beta2
OpenSSL OpenSSL=0.9.5a
OpenSSL OpenSSL=0.9.5a-beta1
OpenSSL OpenSSL=0.9.5a-beta2
OpenSSL OpenSSL=0.9.6
OpenSSL OpenSSL=0.9.6-beta1
OpenSSL OpenSSL=0.9.6-beta2
OpenSSL OpenSSL=0.9.6-beta3
OpenSSL OpenSSL=0.9.6a
OpenSSL OpenSSL=0.9.6a-beta1
OpenSSL OpenSSL=0.9.6a-beta2
OpenSSL OpenSSL=0.9.6a-beta3
OpenSSL OpenSSL=0.9.6b
OpenSSL OpenSSL=0.9.6c
OpenSSL OpenSSL=0.9.6d
OpenSSL OpenSSL=0.9.6e
OpenSSL OpenSSL=0.9.6f
OpenSSL OpenSSL=0.9.6g
OpenSSL OpenSSL=0.9.6h
OpenSSL OpenSSL=0.9.6i
OpenSSL OpenSSL=0.9.6j
OpenSSL OpenSSL=0.9.6k
OpenSSL OpenSSL=0.9.6l
OpenSSL OpenSSL=0.9.6m
OpenSSL OpenSSL=0.9.7
OpenSSL OpenSSL=0.9.7-beta1
OpenSSL OpenSSL=0.9.7-beta2
OpenSSL OpenSSL=0.9.7-beta3
OpenSSL OpenSSL=0.9.7-beta4
OpenSSL OpenSSL=0.9.7-beta5
OpenSSL OpenSSL=0.9.7-beta6
OpenSSL OpenSSL=0.9.7a
OpenSSL OpenSSL=0.9.7b
OpenSSL OpenSSL=0.9.7c
OpenSSL OpenSSL=0.9.7d
OpenSSL OpenSSL=0.9.7e
OpenSSL OpenSSL=0.9.7f
OpenSSL OpenSSL=0.9.7g
OpenSSL OpenSSL=0.9.7h
OpenSSL OpenSSL=0.9.7i
OpenSSL OpenSSL=0.9.7j
OpenSSL OpenSSL=0.9.7k
OpenSSL OpenSSL=0.9.7l
OpenSSL OpenSSL=0.9.8
OpenSSL OpenSSL=0.9.8a
OpenSSL OpenSSL=0.9.8b
OpenSSL OpenSSL=0.9.8c
OpenSSL OpenSSL=0.9.8d
OpenSSL OpenSSL=0.9.8e
OpenSSL OpenSSL=0.9.8f
OpenSSL OpenSSL=0.9.8g

Event History

Dec 16, 2008
Data Sourced
via Red Hat·03:15 PM
DescriptionSeverityAffected Software
Jan 7, 2009
CVE Published
via Red Hat·12:00 AM
CVE Published
via MITRE·05:00 PM
Data Sourced
via MITRE·05:00 PM
Description

Parent advisories

This vulnerability appears in the following advisories.

Frequently Asked Questions

1

What is the severity of CVE-2008-5077?

CVE-2008-5077 is classified as a high severity vulnerability that can allow attackers to bypass certificate chain validation.

2

How do I fix CVE-2008-5077?

To fix CVE-2008-5077, you should upgrade to an OpenSSL version that is higher than 0.9.8h.

3

Which versions of OpenSSL are affected by CVE-2008-5077?

CVE-2008-5077 affects OpenSSL versions 0.9.8i and earlier, including versions 0.9.6 and 0.9.7.

4

What types of keys are impacted by CVE-2008-5077?

CVE-2008-5077 impacts SSL/TLS signatures for DSA and ECDSA keys.

5

Can CVE-2008-5077 be exploited remotely?

Yes, CVE-2008-5077 can be exploited remotely, allowing attackers to bypass validation without needing local access.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203