Panic Safety Vulnerability in Rust's String::retain() Function

Panic Safety Vulnerability in Rust's String::retain() Function

CVE-2020-36317 · HIGH Severity

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

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.

Learn more about our Api Penetration Testing.