# GHSA-52xf-5p2m-9wrv: s2n-tls has a potentially observable differences in RSA premaster secret handling

> Timing side-channel in s2n-tls RSA key exchange allows theoretical decryption of premaster secrets, affecting servers using RSA ciphers without blinding.

- **Severity:** Not scored
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 6 Jun 2024

## What is GHSA-52xf-5p2m-9wrv?

GHSA-52xf-5p2m-9wrv is a vulnerability in s2n-tls, published on 6 Jun 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

When receiving a message from a client that sent an invalid RSA premaster secret, an issue in s2n-tls results in the server performing additional processing when the premaster secret contains an incorrect client hello version. While no practical attack on s2n-tls has been demonstrated, this causes a small timing difference which could theoretically be used as described in the Marvin Attack [1].

We would like to thank Hubert Kario [2] for reporting this issue.

### Impact

The extent of this issue is a timing difference. No practical attack on s2n-tls has been demonstrated.

This issue affects server applications that permit RSA key exchange. Applications that use the default, built-in blinding feature or properly implement self-service blinding are not affected.

Impacted versions: <= v1.4.15.

### Patches

The patch is included in v1.4.16 [3].

### Workarounds

Applications can work around this issue by using an s2n-tls security policy that disallows RSA key exchange.

If you have any questions or comments about this advisory we ask that you contact AWS/Amazon Security via our vulnerability reporting page [4] or directly via email to [aws-security@amazon.com](mailto:aws-security@amazon.com). Please do not create a public GitHub issue.

[1] https://people.redhat.com/~hkario/marvin/
[2] https://github.com/tomato42
[3] https://github.com/aws/s2n-tls/releases/tag/v1.4.16
[4] https://aws.amazon.com/security/vulnerability-reporting

## Which versions are affected by GHSA-52xf-5p2m-9wrv?

2 open source packages ship an affected version, including s2n-tls.


| Package | Ecosystem | Affected | Fixed in |
| --- | --- | --- | --- |
| `s2n-tls` | crates.io | All versions | 0.2.7 |
| `s2n-tls` | crates.io | All versions | 0.2.7 |

## How do I fix GHSA-52xf-5p2m-9wrv?

Upgrade s2n-tls to 0.2.7 or later.

## Is GHSA-52xf-5p2m-9wrv being exploited?

There is no known exploitation of GHSA-52xf-5p2m-9wrv in the wild and no public exploit code.

## Fix prompt for AI coding agents

```text
Check this codebase for GHSA-52xf-5p2m-9wrv and fix it if it is affected.

What it is: GHSA-52xf-5p2m-9wrv is a vulnerability in s2n-tls, published on 6 Jun 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of GHSA-52xf-5p2m-9wrv in the wild and no public exploit code.

Affected packages and fixed versions:
- s2n-tls (crates.io): affected all versions; fixed in 0.2.7
- s2n-tls (crates.io): affected all versions; fixed in 0.2.7

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/GHSA-52xf-5p2m-9wrv/ (Markdown: https://insights.sbomify.com/GHSA-52xf-5p2m-9wrv/index.md)
```

## Sources

- OSV: https://osv.dev/vulnerability/GHSA-52xf-5p2m-9wrv

---
From sbomify Insights: https://insights.sbomify.com/GHSA-52xf-5p2m-9wrv/
Summaries are generated and may contain mistakes; the official description above is the record.
