RUSTSEC-2026-0044: AWS-LC X.509 Name Constraints Bypass via Wildcard/Unicode CN
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 1.2k
- Forks
- 232
- Avg merge
- 11h 35m
- Merged PRs (30d)
- 60
Description
AWS-LC X.509 Name Constraints Bypass via Wildcard/Unicode CN
| Details | |
|---|---|
| Package | aws-lc-sys |
| Version | 0.38.0 |
| Date | 2026-03-19 |
| Patched versions | >=0.39.0 |
| Unaffected versions | <0.32.0 |
A logic error in CN (Common Name) validation allows certificates with
wildcard or raw UTF-8 Unicode CN values to bypass name constraints
enforcement. The cn2dnsid function does not recognize these CN patterns
as valid DNS identifiers, causing NAME_CONSTRAINTS_check_CN to skip
validation. However, X509_check_host accepts these CN values when no
dNSName SAN is present, allowing certificates to bypass name constraints
while still being used for hostname verification.
Customers of AWS services do not need to take action. Applications using
aws-lc-sys should upgrade to the most recent release of aws-lc-sys.
Workarounds
Applications that set X509_CHECK_FLAG_NEVER_CHECK_SUBJECT to disable CN
fallback are not affected. Applications that only encounter certificates
with dNSName SANs (standard for public WebPKI) are also not affected.
Otherwise, there is no workaround and applications using aws-lc-sys should
upgrade to the most recent releases of aws-lc-sys.
See advisory page for additional details.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The report concerns the aws-lc-sys package and recommends upgrading to version 0.39.0 or later. Start by checking whether docs.rs has a dependency or advisory entry for this package; no affected file, test, or concrete docs.rs change is identified, so completion would require first defining the repository change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- security
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100