CVE-2018-8020
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedApache Tomcat Native 1.2.0 to 1.2.16 and 1.1.23 to 1.1.34 has a flaw that does not properly check OCSP pre-produced responses, which are lists (multiple entries) of certificate statuses. Subsequently, revoked client certificates may not be properly identified, allowing for users to authenticate with revoked certificates to connections that require mutual TLS. Users not using OCSP checks are not affected by this vulnerability.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceApache Tomcat Native library contains a flaw in OCSP response validation where it does not properly check pre-produced OCSP responses (lists of multiple certificate statuses). This causes the library to fail identifying revoked client certificates, allowing authentication with revoked certificates in mutual TLS (mTLS) connections.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data= 8.0>= 1.1.23, <= 1.1.34>= 1.2.0, <= 1.2.16CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- High
- Privileges
- None
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- None
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify if Apache Tomcat Native is installedLocate the native library file. On Linux/Unix systems, check for 'libtcnative' files (libtcnative-1.so, libtcnative-1.a, or similar) in the Tomcat library path or search the filesystem: find / -name 'libtcnative*' 2>/dev/null. On Windows, look for 'tcnative-1.dll' in the Tomcat bin or lib directories.Affected if Apache Tomcat Native library is not found on the system - not affected.
-
Determine the installed version of Apache Tomcat NativeRun the library with a version flag if available, or inspect the library filename which typically encodes the version (e.g., libtcnative-1.so.1.2.16). Check Tomcat logs for 'Apache Tomcat Native library' initialization messages which often display the version. Alternatively, use 'ldd' or file inspection commands to identify the exact version.Affected if The version falls outside the affected ranges: less than 1.1.23, between 1.1.35 and 1.1.x (next major), greater than 1.1.34 AND greater than 1.2.16 - not affected.
-
Verify if OCSP checking is enabled for client certificate validationExamine the Tomcat server.xml configuration file for the SSL/TLS connector configuration. Look for attributes related to OCSP: 'ocspEnabled=true' or 'ocspResponderUrl' configuration, or check for the use of a security provider with OCSP support in the JVM or native library configuration.Affected if OCSP checking is NOT enabled in the TLS connector configuration - not affected. The vulnerability only applies when OCSP validation of client certificates is actively used.
-
Confirm mutual TLS (mTLS) with client certificate authentication is in useReview the server.xml connector configuration for 'clientAuth=true' or 'clientAuth=want/require', which enables client certificate authentication. Check if the application relies on client certificate-based authentication.Affected if Client certificate authentication is not configured (clientAuth=false or not set) - not affected.
A user is affected only if Apache Tomcat Native version is 1.1.23-1.1.34 or 1.2.0-1.2.16, OCSP checking is enabled, AND client certificate authentication (mTLS) is configured in the connector.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
From vendor dataUpgrade Apache Tomcat Native to version 1.2.17 or 1.1.35 or later to patch the OCSP validation logic. If OCSP checking is not used, this vulnerability does not apply.
- Consultation2.0 h
- Implementation4.0 h
- Testing4.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $3,328.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2018-8020 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2018-8020 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data