# CVE-2024-0853: OCSP verification bypass with TLS session reuse

curl 8.5.0 cached the TLS session ID even when OCSP stapling verification failed, letting a later transfer to the same host skip the verify check.

- Payout: hidden
- Severity: low
- Program: Internet Bug Bounty
- Found by (vendor credit): Hiroki Kurosawa
- Found by: kurohiro
- Disclosed: 2024-03-27
- CVE: CVE-2024-0853
- Write-up quality: 6/10
- Original: https://hackerone.com/reports/2341063
- Library page: https://bugbountylibrary.com/r/h1%3A2341063
- Tags: area:oss domain:oss impact:integrity kind:bounty platform:hackerone sev:low tech:curl technique:source-review vuln:auth-bypass vuln:crypto

**Target:** libcurl/curl TLS session cache with OpenSSL, TLS 1.2
**Root cause:** curl kept the SSL session ID in its connection cache even when the OCSP stapling verify status check failed, so a subsequent transfer to the same hostname reused the fresh session and skipped verification.
**Steps:**
1. Build curl against OpenSSL, force TLS 1.2.
2. Connect to a host whose OCSP stapling verify status fails; curl caches the session ID anyway.
3. Issue a second transfer to the same hostname while the session ID cache is still fresh.
4. Second transfer reuses the cached session and skips the verify status check, succeeding despite the failed revocation check.
**Exploitation:** Attacker with a revoked/stapling-failing certificate relies on the victim making a second request to the same host within the session cache lifetime; the reused session bypasses OCSP verification.
**Insight:** Session-resumption caches can short-circuit certificate/revocation checks: audit whether failed verification paths still populate the session cache, and test by repeating a request to the same host after a deliberate verify failure.
