aws-samples / aws-samples/sample-code-for-a-secure-vault-using-aws-nitro-enclaves

RUSTSEC-2026-0044: AWS-LC X.509 Name Constraints Bypass via Wildcard/Unicode CN

Open Beginner friendly
#282 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
9
Forks
7
PR merge metrics
No merged PRs in 30d

Description

> AWS-LC X.509 Name Constraints Bypass via Wildcard/Unicode CN

| Details | |
| ------------------- | ---------------------------------------------- |
| Package | `aws-lc-sys` |
| Version | `0.35.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](https://rustsec.org/advisories/RUSTSEC-2026-0044.html) for additional details.

Contributor guide

Open the contributing guide

Research direction

Start by locating aws-lc-sys in the repository's Rust dependency manifests and checking the currently resolved version. Upgrade it to version 0.39.0 or newer, then run the project's existing Rust checks and tests. Done means the patched dependency is selected and the checks pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, rust
Domain
cryptography, security
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.