Every CVE Search/ Get API key

CVE-2022-21658

Race condition in std::fs::remove_dir_all in rustlang

7.3 HighPublic exploitFix available

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
None
Integrity
Low
Availability
High

Exploit likelihood

1.38%Down 3.0 points since Feb 8, 2022
90%50%10%1%

What each source reports

CVE List Score used 7.3

Race condition in std::fs::remove_dir_all in rustlang

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
CVE-2022-21658
CVSS 3.1
7.3 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
Weakness
CWE-363, CWE-367
Updated
2026-11-02
EUVDEUVD-2022-26876 7.3

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
EUVD-2022-26876
CVSS 3.1
7.3 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
Updated
2026-11-02
NVD 7.3

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
CVE-2022-21658
CVSS 3.1
7.3 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
CVSS 3.1
6.3 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
CVSS 2.0
3.3 LowAV:L/AC:M/Au:N/C:N/I:P/A:P
Weakness
CWE-363, CWE-367
Updated
2026-11-02
OSVAZL-8337 6.3

CVE-2022-21658 affecting package rust for versions less than 1.59.0-1

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
AZL-8337
CVSS 3.1
6.3 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
Updated
2026-11-02
OSVBELL-CVE-2022-21658 6.3

CVE-2022-21658 does not affect BellSoft software

Record
BELL-CVE-2022-21658
CVSS 3.1
6.3 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
Updated
2026-11-02
OSV 7.3

Race condition in std::fs::remove_dir_all in rustlang

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
CVE-2022-21658
CVSS 3.1
7.3 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
Weakness
CWE-363, CWE-367
Updated
2026-11-02
Show 20 moreShow less
OSVDEBIAN-CVE-2022-21658 6.3

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
DEBIAN-CVE-2022-21658
CVSS 3.1
6.3 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
Updated
2026-11-03
OSVRHSA-2022:1894 5.3

Red Hat Security Advisory: rust-toolset:rhel8 security, bug fix, and enhancement update

Record
RHSA-2022:1894
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVRLSA-2022:1894 5.3

Moderate: rust-toolset:rhel8 security, bug fix, and enhancement update

Rust Toolset provides the Rust programming language compiler rustc, the cargo build tool and dependency manager, and required libraries.

The following packages have been upgraded to a later upstream version: rust (1.58.0). (BZ#2002883)

Security Fix(es):

  • rust: Race condition in remove_dir_all leading to removal of files outside of the directory being removed (CVE-2022-21658)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Additional Changes:

For detailed information on changes in this release, see the Rocky Linux 8.6 Release Notes linked from the References section.

Record
RLSA-2022:1894
CVSS 3.1
5.3 MediumCVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N
Updated
2026-11-02
OSVUBUNTU-CVE-2022-21658 7.3

Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency. The Rust Security Response WG was notified that the std::fs::remove_dir_all standard library function is vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete. Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability with 1.58.1 containing a patch. Note that the following build targets don't have usable APIs to properly mitigate the attack, and are thus still vulnerable even with a patched toolchain: macOS before version 10.10 (Yosemite) and REDOX. We recommend everyone to update to Rust 1.58.1 as soon as possible, especially people developing programs expected to run in privileged contexts (including system daemons and setuid binaries), as those have the highest risk of being affected by this. Note that adding checks in your codebase before calling remove_dir_all will not mitigate the vulnerability, as they would also be vulnerable to race conditions like remove_dir_all itself. The existing mitigation is working as intended outside of race conditions.

Record
UBUNTU-CVE-2022-21658
CVSS 3.1
7.3 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:N/I:L/A:H
CVSS 3.1
6.3 MediumCVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
Updated
2026-11-02
OSVALSA-2022:1894 No score

Moderate: rust-toolset:rhel8 security, bug fix, and enhancement update

Rust Toolset provides the Rust programming language compiler rustc, the cargo build tool and dependency manager, and required libraries.

The following packages have been upgraded to a later upstream version: rust (1.58.0). (BZ#2002883)

Security Fix(es):

  • rust: Race condition in remove_dir_all leading to removal of files outside of the directory being removed (CVE-2022-21658)

For more details about the security issue(s), including the impact, a CVSS score, acknowledgments, and other related information, refer to the CVE page(s) listed in the References section.

Additional Changes:

For detailed information on changes in this release, see the AlmaLinux Release Notes linked from the References section.

Record
ALSA-2022:1894
Updated
2026-11-02
OSVMGASA-2022-0044 No score

Updated rust packages fix security vulnerability

This update provides Rust 1.57.0 as a feature and bugfix update. See the release notes for details.

The 'std::fs::remove_dir_all' standard library function was vulnerable a race condition enabling symlink following (CWE-363). An attacker could use this security issue to trick a privileged program into deleting files and directories the attacker couldn't otherwise access or delete (CVE-2022-21658). This vulnerability was fixed by patching Rust 1.57.0.

Record
MGASA-2022-0044
Updated
2026-11-02
OSVopenSUSE-SU-2022:0149-1 No score

Security update for rust1.56

This update for rust1.56 fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
openSUSE-SU-2022:0149-1
Updated
2026-11-02
OSVopenSUSE-SU-2022:0171-1 No score

Security update for rust1.55

This update for rust1.55 fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
openSUSE-SU-2022:0171-1
Updated
2026-11-02
OSVopenSUSE-SU-2022:0175-1 No score

Security update for rust1.57

This update for rust1.57 fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
openSUSE-SU-2022:0175-1
Updated
2026-11-02
OSVopenSUSE-SU-2022:0491-1 No score

Security update for rust

This update for rust fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
openSUSE-SU-2022:0491-1
Updated
2026-11-02
OSVopenSUSE-SU-2022:0843-1 No score

Security update for rust, rust1.58, rust1.59

This update for rust, rust1.58, rust1.59 fixes the following issues:

This update provides both rust1.58 and rust1.59.

Changes in rust1.58:

  • Add recommends for GCC for installs to be able to link.
  • Add suggests for lld/clang which are faster than gcc for linking to allow users choice on what they use.
  • CVE-2022-21658: Resolve race condition in std::fs::remove_dir_all (bsc#1194767)

Version 1.58.0 (2022-01-13)

Language

  • [Format strings can now capture arguments simply by writing {ident} in the string.][90473] This works in all macros accepting format strings. Support for this in panic! (panic!('{ident}')) requires the 2021 edition; panic invocations in previous editions that appear to be trying to use this will result in a warning lint about not having the intended effect.
  • [*const T pointers can now be dereferenced in const contexts.][89551]
  • [The rules for when a generic struct implements Unsize have been relaxed.][90417] Compiler

  • [Add LLVM CFI support to the Rust compiler][89652]
  • [Stabilize -Z strip as -C strip][90058]. Note that while release builds already don't add debug symbols for the code you compile, the compiled standard library that ships with Rust includes debug symbols, so you may want to use the strip option to remove these symbols to produce smaller release binaries. Note that this release only includes support in rustc, not directly in cargo.
  • [Add support for LLVM coverage mapping format versions 5 and 6][91207]
  • [Emit LLVM optimization remarks when enabled with -Cremark][90833]
  • [Update the minimum external LLVM to 12][90175]
  • [Add x86_64-unknown-none at Tier 3*][89062]
  • [Build musl dist artifacts with debuginfo enabled][90733]. When building release binaries using musl, you may want to use the newly stabilized strip option to remove these debug symbols, reducing the size of your binaries.
  • [Don't abort compilation after giving a lint error][87337]
  • [Error messages point at the source of trait bound obligations in more places][89580] * Refer to Rust's [platform support page][platform-support-doc] for more information on Rust's tiered platform support.

Libraries

  • [All remaining functions in the standard library have #[must_use] annotations where appropriate][89692], producing a warning when ignoring their return value. This helps catch mistakes such as expecting a function to mutate a value in place rather than return a new value.
  • [Paths are automatically canonicalized on Windows for operations that support it][89174]
  • [Re-enable debug checks for copy and copy_nonoverlapping][90041]
  • [Implement RefUnwindSafe for Rc<T>][87467]
  • [Make RSplit<T, P>: Clone not require T: Clone][90117]
  • [Implement Termination for Result<Infallible, E>][88601]. This allows writing fn main() -> Result<Infallible, ErrorType>, for a program whose successful exits never involve returning from main (for instance, a program that calls exit, or that uses exec to run another program).

Stabilized APIs

  • [Metadata::is_symlink]
  • [Path::is_symlink]
  • [{integer}::saturating_div]
  • [Option::unwrap_unchecked]
  • [Result::unwrap_unchecked]
  • [Result::unwrap_err_unchecked]
  • [NonZero{unsigned}::is_power_of_two]
  • [File::options] These APIs are now usable in const contexts:
  • [Duration::new]
  • [Duration::checked_add]
  • [Duration::saturating_add]
  • [Duration::checked_sub]
  • [Duration::saturating_sub]
  • [Duration::checked_mul]
  • [Duration::saturating_mul]
  • [Duration::checked_div]
  • [MaybeUninit::as_ptr]
  • [MaybeUninit::as_mut_ptr]
  • [MaybeUninit::assume_init]
  • [MaybeUninit::assume_init_ref]

Cargo

  • [Add --message-format for install command][cargo/10107]
  • [Warn when alias shadows external subcommand][cargo/10082]

Rustdoc

  • [Show all Deref implementations recursively in rustdoc][90183]
  • [Use computed visibility in rustdoc][88447]

Compatibility…

Record
openSUSE-SU-2022:0843-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11767-1 No score

cargo1.56-1.56.1-4.1 on GA media

These are all security issues fixed in the cargo1.56-1.56.1-4.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11767-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11768-1 No score

cargo1.57-1.57.0-3.1 on GA media

These are all security issues fixed in the cargo1.57-1.57.0-3.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11768-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:11769-1 No score

cargo1.58-1.58.0-2.1 on GA media

These are all security issues fixed in the cargo1.58-1.58.0-2.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:11769-1
Updated
2026-11-02
OSVSUSE-SU-2022:0149-1 No score

Security update for rust1.56

This update for rust1.56 fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
SUSE-SU-2022:0149-1
Updated
2026-11-02
OSVSUSE-SU-2022:0171-1 No score

Security update for rust1.55

This update for rust1.55 fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
SUSE-SU-2022:0171-1
Updated
2026-11-02
OSVSUSE-SU-2022:0175-1 No score

Security update for rust1.57

This update for rust1.57 fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
SUSE-SU-2022:0175-1
Updated
2026-11-02
OSVSUSE-SU-2022:0200-1 No score

Security update for rust

This update for rust fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
SUSE-SU-2022:0200-1
Updated
2026-11-02
OSVSUSE-SU-2022:0491-1 No score

Security update for rust

This update for rust fixes the following issues:

  • CVE-2022-21658: Fixed race condition in std::fs::remove_dir_all (bsc#1194767).
Record
SUSE-SU-2022:0491-1
Updated
2026-11-02
OSVSUSE-SU-2022:0843-1 No score

Security update for rust, rust1.58, rust1.59

This update for rust, rust1.58, rust1.59 fixes the following issues:

This update provides both rust1.58 and rust1.59.

Changes in rust1.58:

  • Add recommends for GCC for installs to be able to link.
  • Add suggests for lld/clang which are faster than gcc for linking to allow users choice on what they use.
  • CVE-2022-21658: Resolve race condition in std::fs::remove_dir_all (bsc#1194767)

Version 1.58.0 (2022-01-13)

Language

  • [Format strings can now capture arguments simply by writing {ident} in the string.][90473] This works in all macros accepting format strings. Support for this in panic! (panic!('{ident}')) requires the 2021 edition; panic invocations in previous editions that appear to be trying to use this will result in a warning lint about not having the intended effect.
  • [*const T pointers can now be dereferenced in const contexts.][89551]
  • [The rules for when a generic struct implements Unsize have been relaxed.][90417] Compiler

  • [Add LLVM CFI support to the Rust compiler][89652]
  • [Stabilize -Z strip as -C strip][90058]. Note that while release builds already don't add debug symbols for the code you compile, the compiled standard library that ships with Rust includes debug symbols, so you may want to use the strip option to remove these symbols to produce smaller release binaries. Note that this release only includes support in rustc, not directly in cargo.
  • [Add support for LLVM coverage mapping format versions 5 and 6][91207]
  • [Emit LLVM optimization remarks when enabled with -Cremark][90833]
  • [Update the minimum external LLVM to 12][90175]
  • [Add x86_64-unknown-none at Tier 3*][89062]
  • [Build musl dist artifacts with debuginfo enabled][90733]. When building release binaries using musl, you may want to use the newly stabilized strip option to remove these debug symbols, reducing the size of your binaries.
  • [Don't abort compilation after giving a lint error][87337]
  • [Error messages point at the source of trait bound obligations in more places][89580] * Refer to Rust's [platform support page][platform-support-doc] for more information on Rust's tiered platform support.

Libraries

  • [All remaining functions in the standard library have #[must_use] annotations where appropriate][89692], producing a warning when ignoring their return value. This helps catch mistakes such as expecting a function to mutate a value in place rather than return a new value.
  • [Paths are automatically canonicalized on Windows for operations that support it][89174]
  • [Re-enable debug checks for copy and copy_nonoverlapping][90041]
  • [Implement RefUnwindSafe for Rc<T>][87467]
  • [Make RSplit<T, P>: Clone not require T: Clone][90117]
  • [Implement Termination for Result<Infallible, E>][88601]. This allows writing fn main() -> Result<Infallible, ErrorType>, for a program whose successful exits never involve returning from main (for instance, a program that calls exit, or that uses exec to run another program).

Stabilized APIs

  • [Metadata::is_symlink]
  • [Path::is_symlink]
  • [{integer}::saturating_div]
  • [Option::unwrap_unchecked]
  • [Result::unwrap_unchecked]
  • [Result::unwrap_err_unchecked]
  • [NonZero{unsigned}::is_power_of_two]
  • [File::options] These APIs are now usable in const contexts:
  • [Duration::new]
  • [Duration::checked_add]
  • [Duration::saturating_add]
  • [Duration::checked_sub]
  • [Duration::saturating_sub]
  • [Duration::checked_mul]
  • [Duration::saturating_mul]
  • [Duration::checked_div]
  • [MaybeUninit::as_ptr]
  • [MaybeUninit::as_mut_ptr]
  • [MaybeUninit::assume_init]
  • [MaybeUninit::assume_init_ref]

Cargo

  • [Add --message-format for install command][cargo/10107]
  • [Warn when alias shadows external subcommand][cargo/10082]

Rustdoc

  • [Show all Deref implementations recursively in rustdoc][90183]
  • [Use computed visibility in rustdoc][88447]

Compatibility…

Record
SUSE-SU-2022:0843-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
cargo
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
cargo-doc
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
clippy
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rls
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-analysis
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-debugger-common
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-doc
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-gdb
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-lldb
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
Show 76 moreShow less
Affected packages
PackageAffectedFixed
rust-src
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-std-static
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-std-static-wasm32-unknown-unknown
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-std-static-wasm32-wasi
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust-toolset
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rustfmt
AlmaLinux:8
before 1.58.1-1.module_el8.6.0+2748+176088b3
1.58.1-1.module_el8.6.0+2748+176088b3
rust
Azure Linux:2
before 1.59.0-1
1.59.0-1
rustc
Debian:12
before 1.57.0+dfsg1-1
1.57.0+dfsg1-1
rustc
Debian:13
before 1.57.0+dfsg1-1
1.57.0+dfsg1-1
rustc
Debian:14
before 1.57.0+dfsg1-1
1.57.0+dfsg1-1
rust
Mageia:8
before 1.57.0-1.1.mga8
1.57.0-1.1.mga8
cargo
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
cargo-debuginfo
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
cargo-doc
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
clippy
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
clippy-debuginfo
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rls
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rls-debuginfo
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-analysis
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-debugger-common
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-debuginfo
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-debugsource
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-doc
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-gdb
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-lldb
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-src
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-std-static
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-std-static-wasm32-unknown-unknown
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-std-static-wasm32-wasi
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust-toolset
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rustfmt
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rustfmt-debuginfo
Red Hat:enterprise_linux:8::appstream
before 0:1.58.1-1.module+el8.6.0+14021+586eff1a
0:1.58.1-1.module+el8.6.0+14021+586eff1a
rust
Rocky Linux:8
before 0:1.58.1-1.module+el8.6.0+826+60f85975
0:1.58.1-1.module+el8.6.0+826+60f85975
rust-toolset
Rocky Linux:8
before 0:1.58.1-1.module+el8.6.0+826+60f85975
0:1.58.1-1.module+el8.6.0+826+60f85975
rust1.56
SUSE:Linux Enterprise Module for Development Tools 15 SP3
before 1.56.1-150300.7.6.1
1.56.1-150300.7.6.1
rust1.55
SUSE:Linux Enterprise Module for Development Tools 15 SP3
before 1.55.0-150300.7.6.1
1.55.0-150300.7.6.1
rust1.57
SUSE:Linux Enterprise Module for Development Tools 15 SP3
before 1.57.0-150300.7.7.1
1.57.0-150300.7.7.1
rust
SUSE:Linux Enterprise High Performance Computing 15-ESPOS
before 1.53.0-3.40.1
1.53.0-3.40.1
rust
SUSE:Linux Enterprise High Performance Computing 15-LTSS
before 1.53.0-3.40.1
1.53.0-3.40.1
rust
SUSE:Linux Enterprise Server 15-LTSS
before 1.53.0-3.40.1
1.53.0-3.40.1
rust
SUSE:Linux Enterprise Server for SAP Applications 15
before 1.53.0-3.40.1
1.53.0-3.40.1
rust
SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise High Performance Computing 15 SP2-ESPOS
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Real Time 15 SP2
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Server 15 SP1-BCL
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Server 15 SP1-LTSS
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Server 15 SP2-BCL
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Server 15 SP2-LTSS
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Server for SAP Applications 15 SP1
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Server for SAP Applications 15 SP2
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Manager Proxy 4.1
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Manager Retail Branch Server 4.1
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Manager Server 4.1
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Enterprise Storage 6
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Enterprise Storage 7
before 1.53.0-22.1
1.53.0-22.1
rust
SUSE:Linux Enterprise Module for Development Tools 15 SP3
before 1.59.0-150300.21.20.1
1.59.0-150300.21.20.1
rust1.58
SUSE:Linux Enterprise Module for Development Tools 15 SP3
before 1.58.0-150300.7.3.1
1.58.0-150300.7.3.1
rust1.59
SUSE:Linux Enterprise Module for Development Tools 15 SP3
before 1.59.0-150300.7.4.2
1.59.0-150300.7.4.2
rustc
Ubuntu:Pro:14.04:LTS
All versions, plus listed versions
1.15.1+dfsg0-1~exp1ubuntu2~14.04.71.17.0+dfsg2-8~ubuntu0.14.04.31.21.0+dfsg1+llvm-0ubuntu3~14.04.51.22.1+dfsg1+llvm-0ubuntu2~14.04.21.24.1+dfsg1+llvm-0ubuntu1~14.04.1
Show 5 moreShow less
1.25.0+dfsg1+llvm-0ubuntu1~14.04.11.28.0+dfsg1+llvm-0ubuntu1~14.04.11.30.0+dfsg1+llvm-2ubuntu1~14.04.11.31.0+dfsg1+llvm-2ubuntu1~14.04.11.31.0+dfsg1+llvm-2ubuntu1~14.04.1ubuntu1
None known
rustc
Ubuntu:Pro:16.04:LTS
All versions, plus listed versions
1.7.0+dfsg1-11.15.1+dfsg0-1~exp1ubuntu2~16.04.31.17.0+dfsg2-8~ubuntu0.16.04.21.21.0+dfsg1+llvm-0ubuntu3~16.04.11.22.1+dfsg1+llvm-0ubuntu2~16.04.2
Show 15 moreShow less
1.24.1+dfsg1+llvm-0ubuntu1~16.04.11.25.0+dfsg1+llvm-0ubuntu1~16.04.11.28.0+dfsg1+llvm-0ubuntu1~16.04.11.30.0+dfsg1+llvm-2ubuntu1~16.04.11.31.0+dfsg1+llvm-2ubuntu1~16.04.11.32.0+dfsg1+llvm-1ubuntu1~16.04.11.34.1+dfsg2+llvm-0ubuntu1~16.04.11.35.0+dfsg0.1+llvm-0ubuntu1~16.04.11.36.0+dfsg1+llvm-2ubuntu1~16.04.11.37.0+dfsg1+llvm-1ubuntu1~16.04.11.39.0+dfsg1+llvm-3ubuntu1~16.04.11.41.0+dfsg1+llvm-0ubuntu1~16.04.11.43.0+dfsg1+llvm-1~exp1ubuntu2~16.04.11.47.0+dfsg1+llvm-1ubuntu1~16.04.11.47.0+dfsg1+llvm-1ubuntu1~16.04.1ubuntu2
None known
rustc
Ubuntu:20.04:LTS
before 1.59.0+dfsg1~ubuntu1~llvm-1~ubuntu1~20.04.2, plus listed versions
1.37.0+dfsg1+llvm-1ubuntu11.38.0+dfsg0.2+llvm-0ubuntu11.38.0+dfsg0.2+llvm-0ubuntu21.39.0+dfsg1+llvm-3ubuntu11.40.0+dfsg1+llvm-5ubuntu1
Show 7 moreShow less
1.41.0+dfsg1+llvm-0ubuntu11.41.0+dfsg1+llvm-0ubuntu21.43.0+dfsg1+llvm-1~exp1ubuntu1~20.04.11.47.0+dfsg1+llvm-1ubuntu1~20.04.11.51.0+dfsg1+llvm-1~exp3ubuntu1~20.04.21.53.0+dfsg1+llvm-4ubuntu1~20.04.11.57.0+dfsg1+llvm-0ubuntu1~20.04.1
1.59.0+dfsg1~ubuntu1~llvm-1~ubuntu1~20.04.2
libredwg
SUSE:Package Hub 15 SP3
before 0.12.5-bp153.2.3.1
0.12.5-bp153.2.3.1
libredwg
openSUSE:Leap 15.3
before 0.12.5-bp153.2.3.1
0.12.5-bp153.2.3.1
rust1.56
openSUSE:Leap 15.3
before 1.56.1-150300.7.6.1
1.56.1-150300.7.6.1
rust1.55
openSUSE:Leap 15.3
before 1.55.0-150300.7.6.1
1.55.0-150300.7.6.1
rust1.57
openSUSE:Leap 15.3
before 1.57.0-150300.7.7.1
1.57.0-150300.7.7.1
rust
openSUSE:Leap 15.3
before 1.53.0-22.1
1.53.0-22.1
rust
openSUSE:Leap 15.3
before 1.59.0-150300.21.20.1
1.59.0-150300.21.20.1
rust1.58
openSUSE:Leap 15.3
before 1.58.0-150300.7.3.1
1.58.0-150300.7.3.1
rust1.59
openSUSE:Leap 15.3
before 1.59.0-150300.7.4.2
1.59.0-150300.7.4.2
rust1.56
openSUSE:Tumbleweed
before 1.56.1-4.1
1.56.1-4.1
rust1.57
openSUSE:Tumbleweed
before 1.57.0-3.1
1.57.0-3.1
rust1.58
openSUSE:Tumbleweed
before 1.58.0-2.1
1.58.0-2.1

Public exploits

Links only. Every CVE stores no exploit code.

Public exploits
SourceLinkDate
PoC in GitHubsagittarius-a/cve-2022-216582022-01-21

History

History
RecordedChangedSources
first indexedCVE List, EUVD, NVD, OSV, PoC in GitHub

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2022-21658 is a high vulnerability (CVSS 7.3) in Apple Macos, published January 20, 2022. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 1.38%, the 72nd percentile. Fixed in cargo 1.58.1-1.module_el8.6.0+2748+176088b3.

References

Show 44 moreShow less
This page doesn't list everything

Left out here: the rest of 2 source descriptions. The JSON record has them.

MoveEnter Open