RUSTSEC-2023-0076
cpython
is unmaintained
- Reported
-
- Issued
-
- Package
-
cpython
(crates.io)
- Type
-
INFO
Unmaintained
- References
-
- Patched
-
no patched versions
Description
The cpython
crate and the underlying python3-sys
and python27-sys
crates have been marked as no longer actively maintained by the developer.
There are also open issues for unsound code that is currently in these crates:
- cpython#265: Using some string functions causes segmentation faults on big-endian architectures. Due to incorrect bitfield manipulations, it is possible to create invalid Python objects that crash the Python interpreter.
- cpython#294: Python 3.12 is not supported. Due to ABI changes in Python 3.12, calling some string functions will result in invalid Python objects and / or cause out-of-bounds memory accesses.
Recommended alternatives
pyo3
(version 0.19.2 and newer)
The pyo3
crate is actively maintained. Preliminary support for Python 3.12 was added in version 0.19.2, and version 0.20.0 was released with full support for Python 3.12.
Both versions implement string functions correctly on big-endian architectures. The endianness issue affecting the cpython
crate was fixed in recent versions of pyo3
.
Advisory available under CC0-1.0
license.