CVE-2026-102820 pageant: Out-of-bounds read / oversized allocation in `pageant` MemoryMap::read via a malicious Pageant agent (Windows)
A malicious local Pageant agent can trigger an out-of-bounds read and oversized allocation in the Rust pageant library, causing crashes or memory exposure.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-102820?
CVE-2026-102820 is a medium-severity memory corruption vulnerability in Eugeny pageant, published on 29 Sep 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
pageant provides a [PageantStream] type that implements [AsyncRead] and [AsyncWrite] traits and can be used to talk to a running Pageant instance. Prior to pageant 0.2.3, the Windows pageant crate's pageant/src/wmmessage.rs MemoryMap::read function trusts a peer-controlled u32 response length supplied through the 8192-byte Pageant shared-memory mapping reached by AgentClient::connect_pageant. A local process that impersonates the Pageant window can make query_pageant_direct allocate up to approximately 4 GiB and copy beyond the mapped view, reliably crashing a russh client and conditionally exposing adjacent committed memory. This issue is fixed in pageant 0.2.3.
Which versions are affected by CVE-2026-102820?
2 open source packages ship an affected version, including pageant.
| Package | Affected | Fixed in |
|---|---|---|
pageant crates.io | All versions | 0.2.3 |
pageant crates.io | All versions | 0.2.3 |
How do I fix CVE-2026-102820?
Upgrade pageant to 0.2.3 or later.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2026-102820 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-102820 exists.
Sources
Also known as DEBIAN-CVE-2026-102820, GHSA-g4mp-vgx3-xrvm, UBUNTU-CVE-2026-102820.