Skip to content
OpenAdvisories
Unscored CVE-2020-36317 EUVD-2020-23859GHSA-jc5q-p9cv-j8pj

In the standard library in Rust before 1.49.0, String::retain() function has a panic safety problem. It allows creation of a non-UTF-8 Rust…

Published Apr 11, 2021 · Updated Aug 4, 2024 · Assigned by mitre

Description

In the standard library in Rust before 1.49.0, String::retain() function has a panic safety problem. It allows creation of a non-UTF-8 Rust string when the provided closure panics. This bug could result in a memory safety violation when other string APIs assume that UTF-8 encoding is used on the same string.

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 rustc 1.53.0+dfsg1-1 —
Debian 13 rustc 1.53.0+dfsg1-1 —
Debian 12 rustc 1.53.0+dfsg1-1 —
ReleasePackageFixed inAdvisory
Ubuntu 20.04 LTS rustc 1.51.0+dfsg1+llvm-1~exp3ubuntu1~20.04.2 —
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro 16.04 LTS rustc No fix yet —
Ubuntu Pro 14.04 LTS rustc No fix yet —
ReleasePackageFixed inAdvisory
RHEL 8 rls +13 1.49.0-1.module+el8.4.0+9446+1a463e08 RHSA-2021:1935
Show 1 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Red Hat Devtools 2021 rust-toolset-1.49 +15 1.49.0-1.el7_9 RHSA-2021:2243

Rocky Linux

Errata ↗
ReleasePackageFixed inAdvisory
Rocky Linux 8 rust +1 1.49.0-1.module+el8.4.0+416+259a129a RLSA-2021:1935

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 8 rls +13 1.49.0-1.module+el8.4.0+20083+9f8f961d ELSA-2021-1935

Advisories 4

References