rustls-webpki known bugs
cargo9 known bugs in rustls-webpki, with affected versions, fixes and workarounds. Sourced from upstream issue trackers.
9
bugs
Known bugs
| Severity | Affected | Fixed in | Title | Status | Source |
|---|---|---|---|---|---|
| high | any | 0.100.2 | rustls-webpki: CPU denial of service in certificate path building When this crate is given a pathological certificate chain to validate, it will spend CPU time exponential with the number of candidate certificates at each step of path building.
Both TLS clients and TLS servers that accept client certificate are affected.
We now give each path building operation a budget of 100 signature verifications.
The original `webpki` crate is also affected, see [GHSA-8qv2-5vq6-g2g7](https://github.com/advisories/GHSA-8qv2-5vq6-g2g7).
This was previously reported in the original crate <https://github.com/briansmith/webpki/issues/69> and re-reported to us recently. | fixed | osv:GHSA-fh2r-99q2-6mmg |
| medium | 0.104.0-alpha.1 | 0.104.0-alpha.7 | Reachable panic in certificate revocation list parsing A panic was reachable when parsing certificate revocation lists via [`BorrowedCertRevocationList::from_der`]
or [`OwnedCertRevocationList::from_der`]. This was the result of mishandling a syntactically valid empty
`BIT STRING` appearing in the `onlySomeReasons` element of a `IssuingDistributionPoint` CRL extension.
This panic is reachable prior to a CRL's signature being verified.
Applications that do not use CRLs are not affected.
Thank you to @tynus3 for the report. | fixed | osv:RUSTSEC-2026-0104 |
| medium | 0.104.0-alpha.1 | 0.104.0-alpha.6 | Name constraints were accepted for certificates asserting a wildcard name Permitted subtree name constraints for DNS names were accepted for certificates asserting a wildcard name.
This was incorrect because, given a name constraint of `accept.example.com`, `*.example.com` could feasibly allow a name of `reject.example.com` which is outside the constraint.
This is very similar to [CVE-2025-61727](https://go.dev/issue/76442).
Since name constraints are restrictions on otherwise properly-issued certificates, this bug is reachable only after signature verification and requires misissuance to exploit.
This vulnerability is identified as [GHSA-xgp8-3hg3-c2mh](https://github.com/rustls/webpki/security/advisories/GHSA-xgp8-3hg3-c2mh). Thank you to @1seal for the report. | fixed | osv:RUSTSEC-2026-0099 |
| medium | 0.104.0-alpha.1 | 0.104.0-alpha.6 | Name constraints for URI names were incorrectly accepted Name constraints for URI names were ignored and therefore accepted.
Note this library does not provide an API for asserting URI names, and URI name constraints are otherwise not implemented. URI name constraints are now rejected unconditionally.
Since name constraints are restrictions on otherwise properly-issued certificates, this bug is reachable only after signature verification and requires misissuance to exploit.
This vulnerability is identified as [GHSA-965h-392x-2mh5](https://github.com/rustls/webpki/security/advisories/GHSA-965h-392x-2mh5). Thank you to @1seal for the report. | fixed | osv:RUSTSEC-2026-0098 |
| medium | 0.102.0-alpha.0 | 0.103.10 | CRLs not considered authoritative by Distribution Point due to faulty matching logic If a certificate had more than one `distributionPoint`, then only the first `distributionPoint` would be considered against each CRL's `IssuingDistributionPoint` `distributionPoint`, and then the certificate's subsequent `distributionPoint`s would be ignored.
The impact was that correctly provided CRLs would not be consulted to check revocation. With `UnknownStatusPolicy::Deny` (the default) this would lead to incorrect but safe `Error::UnknownRevocationStatus`. With `UnknownStatusPolicy::Allow` this would lead to inappropriate acceptance of revoked certificates.
This vulnerability is thought to be of limited impact. This is because both the certificate and CRL are signed -- an attacker would need to compromise a trusted issuing authority to trigger this bug. An attacker with such capabilities could likely bypass revocation checking through other more impactful means (such as publishing a valid, empty CRL.)
More likely, this bug would be latent in normal use, and an attacker could leverage faulty revocation checking to continue using a revoked credential.
This vulnerability is identified as [GHSA-pwjx-qhcg-rvj4](https://github.com/rustls/webpki/security/advisories/GHSA-pwjx-qhcg-rvj4). Thank you to @1seal for the report. | fixed | osv:RUSTSEC-2026-0049 |
| medium | 0.101.0 | 0.101.4 | rustls-webpki: CPU denial of service in certificate path building When this crate is given a pathological certificate chain to validate, it will
spend CPU time exponential with the number of candidate certificates at each
step of path building.
Both TLS clients and TLS servers that accept client certificate are affected.
We now give each path building operation a budget of 100 signature verifications.
The original `webpki` crate is also affected.
This was previously reported in the original crate
<https://github.com/briansmith/webpki/issues/69> and re-reported to us
recently by Luke Malinowski. | fixed | osv:RUSTSEC-2023-0053 |
| medium | 0.102.0-alpha.0 | 0.103.10 | webpki: CRLs not considered authoritative by Distribution Point due to faulty matching logic If a certificate had more than one `distributionPoint`, then only the first `distributionPoint` would be considered against each CRL's `IssuingDistributionPoint` `distributionPoint`, and then the certificate's subsequent `distributionPoint`s would be ignored.
The impact was that correct provided CRLs would not be consulted to check revocation. With `UnknownStatusPolicy::Deny` (the default) this would lead to incorrect but safe `Error::UnknownRevocationStatus`. With `UnknownStatusPolicy::Allow` this would lead to inappropriate acceptance of revoked certificates.
This vulnerability is thought to be of limited impact. This is because both the certificate and CRL are signed -- an attacker would need to compromise a trusted issuing authority to trigger this bug. An attacker with such capabilities could likely bypass revocation checking through other more impactful means (such as publishing a valid, empty CRL.)
More likely, this bug would be latent in normal use, and an attacker could leverage faulty revocation checking to continue using a revoked credential. | fixed | osv:GHSA-pwjx-qhcg-rvj4 |
| low | 0.101.0 | 0.103.12 | webpki: Name constraints were accepted for certificates asserting a wildcard name Permitted subtree name constraints for DNS names were accepted for certificates asserting a wildcard name.
This was incorrect because, given a name constraint of `accept.example.com`, `*.example.com` could feasibly allow a name of `reject.example.com` which is outside the constraint.
This is very similar to [CVE-2025-61727](https://go.dev/issue/76442).
Since name constraints are restrictions on otherwise properly-issued certificates, this bug is reachable only after signature verification and requires misissuance to exploit. | fixed | osv:GHSA-xgp8-3hg3-c2mh |
| low | 0.101.0 | 0.103.12 | webpki: Name constraints for URI names were incorrectly accepted Name constraints for URI names were ignored and therefore accepted.
Note this library does not provide an API for asserting URI names, and URI name constraints are otherwise not implemented. URI name constraints are now rejected unconditionally.
Since name constraints are restrictions on otherwise properly-issued certificates, this bug is reachable only after signature verification and requires misissuance to exploit. | fixed | osv:GHSA-965h-392x-2mh5 |
API access
Get this data programmatically \u2014 free, no authentication.
curl https://depscope.dev/api/bugs/cargo/rustls-webpki