CVE-2026-93578: Io.netty/netty-handler-ssl-ocsp: netty: missing extended key usage (eku) check in ocsp client allows certificate revocation bypass

Published Sep 18, 2026
·
Updated

A flaw was found in Netty's Online Certificate Status Protocol (OCSP) Client. The client fails to verify the 'id-kp-OCSPSigning' Extended Key Usage (EKU) in OCSP responder certificates. A remote attacker, holding any valid certificate issued by the same Certificate Authority (CA), can exploit this by forging 'GOOD' OCSP responses for revoked certificates. This bypasses certificate revocation checks, allowing applications using Netty's OCSP Client to accept certificates that should have been revoked, leading to an authorization bypass.

Other sources

Missing Extended Key Usage (EKU) check in OCSP Client allows certificate revocation bypass

A public GitHub Security Advisory (GHSA-jhjp-5q4f-8wr2) describes the following issue:

Summary Netty's OcspClient does not verify that an OCSP responder certificate contains the id-kp-OCSPSigning Extended Key Usage (EKU). A bad actor with any valid certificate issued by the same CA can forge "GOOD" OCSP responses for revoked certificates, bypassing revocation checks.

Details In io.netty.handler.ssl.ocsp.OcspClient, validateSignature uses CertPathBuilder to validate the responder's certificate chain to the trust anchor. However, it fails to verify if the responder is authorized to sign OCSP responses. Per RFC 6960, delegated OCSP responders must explicitly hold the id-kp-OCSPSigning EKU. Because OcspClient omits this check, any CA-issued certificate can successfully sign forged OCSP responses.

https://datatracker.ietf.org/doc/html/rfc6960#section-4.2.2.2

Systems or applications that rely on OCSP responses MUST be capable of detecting and enforcing the use of the id-kp-OCSPSigning value as described above. ... They MUST reject the response if the certificate required to validate the signature on the response does not meet at least one of the following criteria:

1. Matches a local configuration of OCSP signing authority for the certificate in question, or

2. Is the certificate of the CA that issued the certificate in question, or

3. Includes a value of id-kp-OCSPSigning in an extended key usage extension and is issued by the CA that issued the certificate in question as stated above.

PoC The following test in io.netty.handler.ssl.ocsp.OcspClientTest demonstrates the vulnerability. A bad actor creates a forged OCSP response signed by a standard, non-OCSP-signing certificate. Netty validates the signature without throwing an exception.

java @Test void validateSignatureWithoutEkuSucceedsBypass() throws Exception { X509Bundle caRoot = new CertificateBuilder() .algorithm(CertificateBuilder.Algorithm.rsa2048) .subject("CN=TrustedRootCA") .setIsCertificateAuthority(true) .buildSelfSigned();

X509Bundle badActorCert = new CertificateBuilder() .algorithm(CertificateBuilder.Algorithm.rsa2048) .subject("CN=BadActorServer") .buildIssuedBy(caRoot);

X509CertificateHolder badActorHolder = new JcaX509CertificateHolder(badActorCert.getCertificate());

BasicOCSPResp forgedResponse = createBasicOcspResponse( badActorCert, new X509CertificateHolder[]{badActorHolder} );

assertDoesNotThrow(() -> OcspClient.validateSignature(forgedResponse, caRoot.getCertificate()), "Validation should have thrown an exception due to missing EKU."); }

Impact Authorization Bypass. Applications using Netty's OcspClient will accept revoked certificates if a network-positioned bad actor possesses any other certificate from the same CA.

Affected: - maven:io.netty:netty-handler-ssl-ocsp affected >=4.2.0.Final, <=4.2.17.Final; fixed unknown - maven:io.netty:netty-handler-ssl-ocsp affected >= 4.1.0.Final, <=4.1.137.Final; fixed unknown

Fixed versions: see advisory

Advisory: https://github.com/netty/netty/security/advisories/GHSA-jhjp-5q4f-8wr2

— Red Hat

Affected Software

2 affected components
Netty netty-handler-ssl-ocsp>=4.2.0.Final<=4.2.17.Final
Netty netty-handler-ssl-ocsp>=4.1.0.Final<=4.1.137.Final

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade maven:io.netty:netty-handler-ssl-ocsp to a version that resolves this vulnerability.

    Patch GHSA-jhjp-5q4f-8wr2

Event History

Sep 18, 2026
Data Sourced
via Red Hat·10:35 AM
DescriptionSeverityAffected Software
CVE Published
via MITRE·10:53 AM
Data Sourced
via MITRE·10:53 AM
DescriptionSeverityWeakness
Data Sourced
via NVD·11:17 AM
DescriptionSeverityWeakness

Frequently Asked Questions

1

What does an attacker need to exploit this issue?

The attacker needs any valid certificate issued by the same CA. They can use it to sign a forged "GOOD" OCSP response for a revoked certificate because the responder certificate's OCSP-signing EKU is not checked.

2

Which deployments are exposed?

Deployments using Netty's io.netty.handler.ssl.ocsp.OcspClient and relying on its OCSP responses for certificate revocation checking are exposed. The issue concerns validation of delegated OCSP responder certificates.

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