Difference between revisions of "Failure to validate host-specific certificate data"

From OWASP
Jump to: navigation, search
(References)
Line 2: Line 2:
 
{{Template:Vulnerability}}
 
{{Template:Vulnerability}}
  
[[Category:FIXME|This is the text from the old template. This needs to be rewritten using the new template.]]
+
__TOC__
 +
 
 +
[[ASDR Table of Contents]]
  
 
Last revision (mm/dd/yy): '''{{REVISIONMONTH}}/{{REVISIONDAY}}/{{REVISIONYEAR}}'''
 
Last revision (mm/dd/yy): '''{{REVISIONMONTH}}/{{REVISIONDAY}}/{{REVISIONYEAR}}'''
  
[[ASDR_TOC_Vulnerabilities|Vulnerabilities Table of Contents]]
+
[[Category:FIXME|This is the text from the old template. This needs to be rewritten using the new template.]]
 
+
[[ASDR Table of Contents]]
+
__TOC__
+
 
+
  
 
==Description==
 
==Description==

Revision as of 08:23, 2 November 2008

This is a Vulnerability. To view all vulnerabilities, please see the Vulnerability Category page.


Contents


ASDR Table of Contents

Last revision (mm/dd/yy): 11/2/2008

Description

The failure to validate host-specific certificate data may mean that, while the certificate read was valid, it was not for the site originally requested.

Consequences

  • Integrity: The data read from the system vouched for by the certificate may not be from the expected system.
  • Authentication: Trust afforded to the system in question - based on the expired certificate - may allow for spoofing or redirection attacks.

Exposure period

  • Design: Certificate verification and handling should be performed in the design phase.

Platform

  • Language: All
  • Operating platform: All

Required resources

Minor trust: Users must attempt to interact with the malicious system.

Severity

High

Likelihood of exploit

High

If the host-specific data contained in a certificate is not checked, it may be possible for a redirection or spoofing attack to allow a malicious host with a valid certificate to provide data, impersonating a trusted host.

While the attacker in question may have a valid certificate, it may simply be a valid certificate for a different site. In order to ensure data integrity, we must check that the certificate is valid and that it pertains to the site that we wish to access.


Risk Factors

TBD

Examples

if (!(cert = SSL_get_peer(certificate(ssl)) || !host)
  foo=SSL_get_veryify_result(ssl);
  if ((X509_V_OK==foo) || X509_V_ERR_SUBJECT_ISSUER_MISMATCH==foo))
//do stuff 


Related Attacks


Related Vulnerabilities


Related Controls

  • Design: Check for expired certificates and provide the user with adequate information about the nature of the problem and how to proceed.


Related Technical Impacts


References

TBD