GHSA-47qc-857f-7w7f PyO3 0.28.1 added support for `#[pyclass(extends=PyList)] struct NativeSub` (and other native types) when targeting Python 3.12 and up with the `abi3` feature.

Not scored Published

Type confusion in PyO3 with abi3 feature allows memory corruption, potentially leading to code execution or crashes.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Not stated
Victim action needed
Not needed
Fix
Available

What is GHSA-47qc-857f-7w7f?

GHSA-47qc-857f-7w7f is a memory corruption vulnerability in pyo3, published on 18 Feb 2026.

Official description

PyO3 0.28.1 added support for #[pyclass(extends=PyList)] struct NativeSub (and other native types) when targeting Python 3.12 and up with the abi3 feature.

It was discovered that subclasses of such classes would use the type of the subclass when attempting to access to data of NativeSub contained within Python objects, amounting to memory corruption.

PyO3 0.28.2 fixed the issue by using the type of (e.g.) NativeSub correctly.

Which versions are affected by GHSA-47qc-857f-7w7f?

3 open source packages ship an affected version, including pyo3.

PackageAffectedFixed in
pyo3 crates.ioFrom 0.28.00.28.2
pyo3 crates.ioFrom 0.28.00.28.2
pyo3 crates.ioFrom 0.28.00.28.2

How do I fix GHSA-47qc-857f-7w7f?

Upgrade pyo3 to 0.28.2 or later.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is GHSA-47qc-857f-7w7f being exploited?

There is no known exploitation of GHSA-47qc-857f-7w7f in the wild and no public exploit code.

Sources

Also known as RUSTSEC-2026-0013.

Is GHSA-47qc-857f-7w7f in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free