CVE-2026-43868
Apache Thrift: Rust implementation vulnerable to CVE-2020-13949 pattern
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- None
- Availability
- Low
Exploit likelihood
What each source reports
CVE List Score used
5.3
Apache Thrift: Rust implementation vulnerable to CVE-2020-13949 pattern
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
CVE-2026-43868- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-789, CWE-789, CWE-1285
- Updated
- 2026-11-02
EUVDEUVD-2026-27243
7.5
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
EUVD-2026-27243- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-2f9f-gq7v-9h6m
5.3
Apache Thrift has a Memory Allocation with Excessive Size Value Vulnerability
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
GHSA-2f9f-gq7v-9h6m- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-789, CWE-1285
- Updated
- 2026-11-02
NVD
5.3
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
CVE-2026-43868- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Weakness
- CWE-789, CWE-1285
- Updated
- 2026-11-02
OSV
5.3
Apache Thrift: Rust implementation vulnerable to CVE-2020-13949 pattern
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
CVE-2026-43868- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-789
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-43868
5.3
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift. This issue affects Apache Thrift: before 0.23.0. Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
DEBIAN-CVE-2026-43868- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Updated
- 2026-11-02
Show 4 moreShow less
OSVGHSA-2f9f-gq7v-9h6m
5.3
Apache Thrift has a Memory Allocation with Excessive Size Value Vulnerability
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
GHSA-2f9f-gq7v-9h6m- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - Weakness
- CWE-1285, CWE-789
- Updated
- 2026-11-02
OSVRUSTSEC-2026-0435
7.5
Unbounded memory allocation in `thrift` binary protocol `read_bytes`
Affected versions of the thrift crate size a buffer directly from an attacker-controlled 4-byte length read off the wire, before reading any payload and with no upper bound, allowing a hostile peer to force a large eager allocation or an immediate abort (denial of service, CWE-400 / CWE-789). This is the Rust implementation's instance of the CVE-2020-13949 pattern, published by the Apache Thrift PMC as CVE-2026-43868.
Details
In TBinaryInputProtocol::read_bytes (src/protocol/binary.rs), the length is read as a i32 from the transport and cast straight to usize to size a zeroing buffer before any payload is read:
fn read_bytes(&mut self) -> crate::Result<Vec<u8>> {
let num_bytes = self.transport.read_i32::<BigEndian>()? as usize; // length from the wire
let mut buf = vec![0u8; num_bytes]; // unbounded eager allocation
self.transport.read_exact(&mut buf).map(|_| buf).map_err(From::from)
}
There is no check that num_bytes is non-negative or that it fits within the data actually available:
- A length of
0x7FFFFFFFforces a ~2 GiB allocation;0x20000000forces 512 MiB; and so on, from only a 4-byte input. - A negative length casts to a huge
usize(up tousize::MAX), causing an immediate allocation failure / abort.
read_string routes through read_bytes, so string fields are affected the same way. The sink is reachable from any peer sending binary-protocol data, so this is an unauthenticated, network-reachable denial of service.
The fix
From thrift 0.23.0 onward, read_bytes goes through read_binary_len, which rejects negative sizes and enforces TConfiguration::max_string_size (default 100 MiB), alongside default message, frame, and recursion limits.
A separate, related gap on the non-strict message-name path was published as CVE-2026-58389 and fixed in 0.24.0; this advisory covers the read_bytes unbounded allocation (CVE-2026-43868), fixed in 0.23.0.
- Record
RUSTSEC-2026-0435- CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-43868
5.3
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift. This issue affects Apache Thrift: before 0.23.0. Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
UBUNTU-CVE-2026-43868- CVSS 3.1
- 5.3 Medium
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L - CVSS 3.1
- 7.5 High
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - Updated
- 2026-11-02
OSVBIT-thrift-2026-43868 No score
Apache Thrift: Rust implementation vulnerable to CVE-2020-13949 pattern
Memory Allocation with Excessive Size Value vulnerability in Apache Thrift.
This issue affects Apache Thrift: before 0.23.0.
Users are recommended to upgrade to version 0.23.0, which fixes the issue.
- Record
BIT-thrift-2026-43868- Updated
- 2026-11-02
Affected products
- apache thrift
- apache software foundation thrift
- red hat ai inference server
- red hat build of apache camel 3.33 for quarkus 3.33.2.sp1
- red hat build of apache camel 4 for quarkus 3
- red hat data grid 8
- red hat enterprise linux ai (rhel ai) 3
- red hat fuse 7
- red hat jboss enterprise application platform expansion pack
- red hat openshift ai (rhoai)
- red hat openshift ai 2.25
Affected packages
| Package | Affected | Fixed |
|---|---|---|
thriftcrates.io |
before 0.23.0 | 0.23.0 |
thriftBitnami |
before 0.23.0 | 0.23.0 |
thriftDebian:12 |
All versions, plus listed versions 0.17.0-20.17.0-30.17.0-40.18.1-10.18.1-2 Show 17 moreShow less0.19.0-10.19.0-20.19.0-2.10.19.0-2.1~exp10.19.0-30.19.0-40.20.0-10.22.0-10.22.0-20.22.0-30.22.0-40.23.0-10.23.0-20.23.0-30.24.0-10.24.0-20.24.0-3 |
None known |
thriftDebian:13 |
All versions, plus listed versions 0.19.0-40.20.0-10.22.0-10.22.0-20.22.0-3 Show 7 moreShow less0.22.0-40.23.0-10.23.0-20.23.0-30.24.0-10.24.0-20.24.0-3 |
None known |
thriftDebian:14 |
before 0.23.0-3, plus listed versions 0.19.0-40.20.0-10.22.0-10.22.0-20.22.0-30.22.0-40.23.0-10.23.0-2 |
0.23.0-3 |
thriftcrates.io |
0.0.0-0 up to 0.23.0 | 0.23.0 |
thriftUbuntu:20.04:LTS |
All versions, plus listed versions 0.11.0-60.13.0-2build10.13.0-2build2 |
None known |
thriftUbuntu:22.04:LTS |
All versions, plus listed versions 0.13.0-6ubuntu10.13.0-6ubuntu20.13.0-6ubuntu30.13.0-70.16.0-2 |
None known |
thriftUbuntu:24.04:LTS |
All versions, plus listed versions 0.17.0-40.19.0-20.19.0-2build10.19.0-2.1build40.19.0-2.1build5 |
None known |
thriftUbuntu:25.10 |
All versions, plus listed versions 0.19.0-4build1 |
None known |
thriftUbuntu:26.10 |
All versions, plus listed versions 0.22.0-3ubuntu10.23.0-30.23.0-3ubuntu1 |
None known |
thriftUbuntu:26.04:LTS |
All versions, plus listed versions 0.19.0-4build10.22.0-30.22.0-3ubuntu1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-43868 is a medium vulnerability (CVSS 5.3) in Apache Thrift, published May 5, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.71%, the 53rd percentile. Fixed in thrift 0.23.0.
References
lists.apache.org/thread/zj76dtwnbbs1m7z3focf4wd51pqpsmn9
access.redhat.com/security/cve/CVE-2026-43868
bugzilla.redhat.com/show_bug.cgi?id=2466670
security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-43868.json
access.redhat.com/errata/RHSA-2026:26586
access.redhat.com/errata/RHSA-2026:42644
Show 11 moreShow less
nvd.nist.gov/vuln/detail/CVE-2026-43868
github.com/apache/thrift/commit/d5152211af61f850ec393604316804096dd4632e
github.com/advisories/GHSA-2f9f-gq7v-9h6m
github.com/CVEProject/cvelistV5/tree/main/cves/2026/43xxx/CVE-2026-43868.json
security-tracker.debian.org/tracker/CVE-2026-43868
github.com/apache/thrift
crates.io/crates/thrift
rustsec.org/advisories/RUSTSEC-2026-0435.html
ubuntu.com/security/CVE-2026-43868
cve.org/CVERecord?id=CVE-2026-43868
openwall.com/lists/oss-security/2026/05/05/2