<Vulnerability name="CVE-2026-9669">
    <DocumentDistribution xml:lang="en">Copyright © 2012 Red Hat, Inc. All rights reserved.</DocumentDistribution>
    <ThreatSeverity>Moderate</ThreatSeverity>
    <PublicDate>2026-06-08T22:01:15</PublicDate>
    <Bugzilla id="2486590" url="https://bugzilla.redhat.com/show_bug.cgi?id=2486590" xml:lang="en:us">
python: Python: Denial of Service via out-of-bounds write in BZ2 decompression
    </Bugzilla>
    <CVSS3 status="draft">
        <CVSS3BaseScore>5.9</CVSS3BaseScore>
        <CVSS3ScoringVector>CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H</CVSS3ScoringVector>
    </CVSS3>
    <CWE>CWE-787</CWE>
    <Details xml:lang="en:us" source="Mitre">
bz2.BZ2Decompressor objects could be reused after a decompression error. If an application caught the resulting OSError and retried with the same decompressor, crafted input could cause the decompressor to resume from an invalid internal state and perform out-of-bounds writes to a stack buffer. This could crash the process when processing untrusted data.
    </Details>
    <Details xml:lang="en:us" source="Red Hat">
A flaw was found in Python's `bz2.BZ2Decompressor` component. An attacker could provide specially crafted input that, when processed by an application reusing a decompressor object after an error, could lead to out-of-bounds writes in memory. This memory corruption could cause the application to crash, resulting in a Denial of Service (DoS).
    </Details>
    <Statement xml:lang="en:us">
This Moderate-impact flaw in Python's `bz2.BZ2Decompressor` component affects Red Hat Enterprise Linux 8. It allows an attacker to trigger a denial of service by providing specially crafted compressed data. Exploitation requires an application to reuse a `BZ2Decompressor` object after a decompression error, leading to out-of-bounds writes and a crash.
    </Statement>
    <Mitigation xml:lang="en:us">
Applications processing untrusted BZ2 compressed data should avoid reusing `bz2.BZ2Decompressor` objects after a decompression error. Instead, a new `bz2.BZ2Decompressor` instance should be created for each new decompression attempt or after an error occurs. This prevents the decompressor from resuming from an invalid internal state.
    </Mitigation>
    <PackageState cpe="cpe:/o:redhat:enterprise_linux:8">
        <ProductName>Red Hat Enterprise Linux 8</ProductName>
        <FixState>Fix deferred</FixState>
        <PackageName>python36</PackageName>
    </PackageState>
    <References xml:lang="en:us">
https://www.cve.org/CVERecord?id=CVE-2026-9669
https://nvd.nist.gov/vuln/detail/CVE-2026-9669
https://github.com/python/cpython/issues/150599
https://github.com/python/cpython/pull/150600
https://mail.python.org/archives/list/security-announce@python.org/thread/DBJZETMGUIFK7DVUWMOXHD3Z6IX2QPSX/
    </References>
</Vulnerability>