Every CVESearch/Get API key

CVE-2021-45703

Duplicate Advisory: `Read` on uninitialized buffer may cause UB ('tectonic_xdv' crate)

9.8 CriticalFix available

An issue was discovered in the tectonic_xdv crate before 0.1.12 for Rust. XdvParser::<T>::process may read from uninitialized memory locations.

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
High
Integrity
High
Availability
High

Exploit likelihood

1.23%Up 0.6 points since Dec 27, 2021
90%50%10%1%

What each source reports

NVD Score used9.8

An issue was discovered in the tectonic_xdv crate before 0.1.12 for Rust. XdvParser::<T>::process may read from uninitialized memory locations.

Record
CVE-2021-45703
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.0
7.5 HighAV:N/AC:L/Au:N/C:P/I:P/A:P
Weakness
CWE-908
Updated
2026-11-02
CVE ListNo score

An issue was discovered in the tectonic_xdv crate before 0.1.12 for Rust. XdvParser::<T>::process may read from uninitialized memory locations.

Record
CVE-2021-45703
Updated
2026-11-02
EUVDEUVD-2022-0679No score

An issue was discovered in the tectonic_xdv crate before 0.1.12 for Rust. XdvParser::<T>::process may read from uninitialized memory locations.

Record
EUVD-2022-0679
Updated
2026-11-03
GitHub AdvisoriesGHSA-qwvx-c8j7-5g759.8

Use of Uninitialized Resource in tectonic_xdv

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.

Arbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.

The problem was fixed in commit cdff034 by zero-initializing the buffer before passing it to a user-provided Read implementation.

Record
GHSA-qwvx-c8j7-5g75
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-908
Updated
2026-11-02
GitHub AdvisoriesGHSA-6692-8qqf-79jcNo score

Duplicate Advisory: `Read` on uninitialized buffer may cause UB ('tectonic_xdv' crate)

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-qwvx-c8j7-5g75. This link is maintained to preserve external references.

Original Description

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.

Arbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.

The problem was fixed in commit cdff034 by zero-initializing the buffer before passing it to a user-provided Read implementation.

Record
GHSA-6692-8qqf-79jc
Updated
2026-11-02
OSVGHSA-qwvx-c8j7-5g759.8

Use of Uninitialized Resource in tectonic_xdv

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.

Arbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.

The problem was fixed in commit cdff034 by zero-initializing the buffer before passing it to a user-provided Read implementation.

Record
GHSA-qwvx-c8j7-5g75
CVSS 3.1
9.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weakness
CWE-908
Updated
2026-11-02
OSVGHSA-6692-8qqf-79jcNo score

Duplicate Advisory: `Read` on uninitialized buffer may cause UB ('tectonic_xdv' crate)

Duplicate Advisory

This advisory has been withdrawn because it is a duplicate of GHSA-qwvx-c8j7-5g75. This link is maintained to preserve external references.

Original Description

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.

Arbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.

The problem was fixed in commit cdff034 by zero-initializing the buffer before passing it to a user-provided Read implementation.

Record
GHSA-6692-8qqf-79jc
Updated
2026-11-02
OSVRUSTSEC-2021-0112No score

`Read` on uninitialized buffer may cause UB ('tectonic_xdv' crate)

Affected versions of this crate passes an uninitialized buffer to a user-provided Read implementation.

Arbitrary Read implementations can read from the uninitialized buffer (memory exposure) and also can return incorrect number of bytes written to the buffer. Reading from uninitialized memory produces undefined values that can quickly invoke undefined behavior.

The problem was fixed in commit cdff034 by zero-initializing the buffer before passing it to a user-provided Read implementation.

Record
RUSTSEC-2021-0112
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
tectonic_xdv
crates.io
before 0.1.12
0.1.12
tectonic_xdv
crates.io
0.0.0-0 up to 0.1.12
0.1.12

History

History
RecordedChangedSources
affected
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2021-45703 is a critical vulnerability (CVSS 9.8) in Tectonic Xdv Project Xdv, published February 17, 2021. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.23%, the 69th percentile. Fixed in tectonic_xdv 0.1.12.

References

MoveEnter Open