This vulnerability occurs when software only verifies a certificate's revocation status once, then continues to trust it for subsequent privileged actions without re-checking. This allows operations to proceed even if the certificate is revoked later.
A single initial revocation check creates a dangerous race condition. If an attacker's certificate is revoked after that first check, the system will continue granting it full privileges for all later requests, as if the certificate were still valid. This essentially nullifies the security guarantee that revocation provides. Since certificate revocation almost always signals a compromise or malicious intent, failing to re-validate before each privileged action is a critical oversight. To prevent this, your code must perform a fresh revocation check (e.g., via OCSP or CRL) every time the certificate is used to authorize a sensitive operation, not just during the initial handshake or connection setup.
Impact: Gain Privileges or Assume Identity
Trust may be assigned to an entity who is not who it claims to be.
Impact: Modify Application Data
Data from an untrusted (and possibly malicious) source may be integrated.
Impact: Read Application Data
Data may be disclosed to an entity impersonating a trusted entity, resulting in information disclosure.
c
//do stuff* foo=SSL_get_verify_result(ssl);
cMedium