{"id":48935,"date":"2022-01-29T01:59:56","date_gmt":"2022-01-29T06:59:56","guid":{"rendered":"https:\/\/euvolution.com\/open-source-convergence\/high-severity-rust-programming-bug-could-lead-to-file-directory-deletion-the-hacker-news.php"},"modified":"2022-01-29T01:59:56","modified_gmt":"2022-01-29T06:59:56","slug":"high-severity-rust-programming-bug-could-lead-to-file-directory-deletion-the-hacker-news","status":"publish","type":"post","link":"https:\/\/euvolution.com\/open-source-convergence\/uncategorized\/high-severity-rust-programming-bug-could-lead-to-file-directory-deletion-the-hacker-news.php","title":{"rendered":"High-Severity Rust Programming Bug Could Lead to File, Directory Deletion &#8211; The Hacker News"},"content":{"rendered":"<p><p>The maintainers of the Rust programming language have released a security update for a high-severity vulnerability that could be abused by a malicious party to purge files and directories from a vulnerable system in an unauthorized manner.<\/p>\n<p>\"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,\" the Rust Security Response working group (WG) said in an advisory published on January 20, 2021.<\/p>\n<p>Rust 1.0.0 through Rust 1.58.0 is affected by this vulnerability. The flaw, which is tracked as CVE-2022-21658 (CVSS score: 7.3), has been credited to security researcher Hans Kratz, with the team pushing out a fix in Rust version 1.58.1 shipped last week.<\/p>\n<p>Specifically, the issue stems from an improperly implemented check to prevent recursive deletion of symbolic links (aka symlinks) in a standard library function named \"std::fs::remove_dir_all.\" This results in a race condition, which, in turn, could be reliably exploited by an adversary by abusing their access to a privileged program to delete sensitive directories.<\/p>\n<p>\"Instead of telling the system not to follow symlinks, the standard library first checked whether the thing it was about to delete was a symlink, and otherwise it would proceed to recursively delete the directory,\" the advisory said. \"This exposed a race condition: an attacker could create a directory and replace it with a symlink between the check and the actual deletion.\"<\/p>\n<p>Rust, while not a widely-used programming language, has witnessed a surge in adoption in recent years for its memory-related safety guarantees. Last year, Google announced that its open-source version of the Android operating system will add support for the programming language to prevent memory safety bugs.<\/p>\n<p><!-- Auto Generated --><\/p>\n<p>See original here:<br \/>\n<a target=\"_blank\" rel=\"nofollow noopener\" href=\"https:\/\/thehackernews.com\/2022\/01\/high-severity-rust-programming-bug.html\" title=\"High-Severity Rust Programming Bug Could Lead to File, Directory Deletion - The Hacker News\">High-Severity Rust Programming Bug Could Lead to File, Directory Deletion - The Hacker News<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p> The maintainers of the Rust programming language have released a security update for a high-severity vulnerability that could be abused by a malicious party to purge files and directories from a vulnerable system in an unauthorized manner. <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-48935","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/posts\/48935"}],"collection":[{"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/comments?post=48935"}],"version-history":[{"count":0,"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/posts\/48935\/revisions"}],"wp:attachment":[{"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/media?parent=48935"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/categories?post=48935"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/euvolution.com\/open-source-convergence\/wp-json\/wp\/v2\/tags?post=48935"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}