PT-2024-41060 · Fyrox · Fyrox

Published

2024-12-19

·

Updated

2024-12-19

None

No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
Name of the Vulnerable Software and Affected Versions Fyrox versions prior to the latest version on the master branch
Description The issue arises from the transmute vec as bytes API, which incorrectly assumes that any generic type T has a stable layout. This can lead to uninitialized memory exposure if users pass types with padding bytes as T and cast it to a u8 pointer. A proof of concept (PoC) demonstrates that passing a struct type to transmute vec as bytes can result in undefined behavior with Vec::from raw parts. The problem is resolved by changing the trait from Copy to Pod, ensuring that T is plain data.
Recommendations For versions prior to the latest version on the master branch, update to the latest version on the master branch, which includes the patch that changes the trait from Copy to Pod. As a temporary workaround, consider avoiding the use of the transmute vec as bytes API with types that have padding bytes until the issue is resolved.

Related Identifiers

RUSTSEC-2024-0435

Affected Products

Fyrox