Every CVE Search/ Get API key

CVE-2026-43868

Apache Thrift: Rust implementation vulnerable to CVE-2020-13949 pattern

5.3 MediumFix available

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

0.71%Up 0.7 points since May 5, 2026
90%50%10%1%

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 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
7.5 HighCVSS: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 HighCVSS: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 MediumCVSS: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 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
7.5 HighCVSS: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 MediumCVSS: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 MediumCVSS: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 MediumCVSS: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 0x7FFFFFFF forces a ~2 GiB allocation; 0x20000000 forces 512 MiB; and so on, from only a 4-byte input.
  • A negative length casts to a huge usize (up to usize::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 HighCVSS: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 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
CVSS 3.1
7.5 HighCVSS: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

Affected packages

Affected packages
PackageAffectedFixed
thrift
crates.io
before 0.23.0
0.23.0
thrift
Bitnami
before 0.23.0
0.23.0
thrift
Debian: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 less
0.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
thrift
Debian: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 less
0.22.0-40.23.0-10.23.0-20.23.0-30.24.0-10.24.0-20.24.0-3
None known
thrift
Debian: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
thrift
crates.io
0.0.0-0 up to 0.23.0
0.23.0
thrift
Ubuntu:20.04:LTS
All versions, plus listed versions
0.11.0-60.13.0-2build10.13.0-2build2
None known
thrift
Ubuntu: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
thrift
Ubuntu: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
thrift
Ubuntu:25.10
All versions, plus listed versions
0.19.0-4build1
None known
thrift
Ubuntu:26.10
All versions, plus listed versions
0.22.0-3ubuntu10.23.0-30.23.0-3ubuntu1
None known
thrift
Ubuntu:26.04:LTS
All versions, plus listed versions
0.19.0-4build10.22.0-30.22.0-3ubuntu1
None known

History

History
RecordedChangedSources
first indexedCVE 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

Show 11 moreShow less
MoveEnter Open