加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

Rust编程语言暴露漏洞,攻击者可轻松删除文件和目录

发布时间:2022-02-11 11:53:36 所属栏目:安全 来源:互联网
导读:日前,Rust编程语言的维护者修复了一个编号为 CVE-2022-21658的高危漏洞,该漏洞让攻击者可以从易受攻击的系统删除文件和目录。该漏洞影响Rust 1.0.0到Rust 1.58.0,近期发布的Rust 1.58.1版本已修复了该漏洞。 Rust编程语言维护者发布的安全公告称:Rust
       日前,Rust编程语言的维护者修复了一个编号为 CVE-2022-21658的高危漏洞,该漏洞让攻击者可以从易受攻击的系统删除文件和目录。该漏洞影响Rust 1.0.0到Rust 1.58.0,近期发布的Rust 1.58.1版本已修复了该漏洞。
  
      Rust编程语言维护者发布的安全公告称:“Rust安全响应工作组已接到通知,获悉 std::fs::remove_dir_all标准库函数易受启用符号链接跟随的竞态条件攻击(CWE-363)。攻击者可以利用这个安全问题,欺骗特权程序删除攻击者原本无法访问或删除的文件和目录。” 安全公告指出std::fs::remove_dir_all已经含有防范递归删除符号链接的机制,但它们并没有正确实施。
 
      “遗憾的是,该检查机制在标准库中未正确实施,导致了TOCTOU(Time-of-check Time-of-use)竞态条件。标准库不是告诉系统别跟随符号链接,而是先检查它要删除的东西是不是符号链接,否则它将继续递归删除目录。这暴露了竞态条件:攻击者可以创建一个目录,并在检查和实际删除之间将该目录换成符号链接。虽然这种攻击在首次尝试时可能不会得逞,但在试验中能够在几秒钟内可靠地执行这种攻击。” Rust 维护者表示。
 
      攻击者利用该漏洞的原理是:假设对系统拥有非特权访问权限的攻击者想要删除一个名为sensitive/的系统目录,但他没有操作权限,就可以利用该漏洞,找到一个特权程序来删除其有权访问的目录(名为temp/),创建从temp/foo到sensitive/的符号链接,等待上述特权程序删除foo/。特权程序将跟随从temp/foo到ensitive/的符号链接,同时递归删除,从而导致sensitive/被删除。

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读