CVE-2021-45703
Duplicate Advisory: `Read` on uninitialized buffer may cause UB ('tectonic_xdv' crate)
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
What each source reports
NVD Score used 9.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 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 7.5 High
AV: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-5g75 9.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 Critical
CVSS: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-5g75 9.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 Critical
CVSS: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
| Package | Affected | Fixed |
|---|---|---|
tectonic_xdvcrates.io | before 0.1.12 | 0.1.12 |
tectonic_xdvcrates.io | 0.0.0-0 up to 0.1.12 | 0.1.12 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected | ||
| aliases | EUVD | |
| first indexed | CVE 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
rustsec.org/advisories/RUSTSEC-2021-0112.html
raw.githubusercontent.com/rustsec/advisory-db/main/crates/tectonic_xdv/RUSTSEC-2021-0112.md
github.com/tectonic-typesetting/tectonic/issues/752
github.com/tectonic-typesetting/tectonic/commit/cdff034e6d93cdfdafd13d8c6956e22fa5a57b79
github.com/advisories/GHSA-6692-8qqf-79jc
nvd.nist.gov/vuln/detail/CVE-2021-45703
github.com/advisories/GHSA-qwvx-c8j7-5g75
github.com/tectonic-typesetting/tectonic
crates.io/crates/tectonic_xdv