社区编辑申请
注册/登录
Rust编程语言曝出漏洞,攻击者可轻松删除文件和目录
安全 漏洞
日前,Rust编程语言的维护者修复了一个编号为 CVE-2022-21658的高危漏洞,该漏洞让攻击者可以从易受攻击的系统删除文件和目录。

日前,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/被删除。

参考链接:

https://securityaffairs.co/wordpress/127135/security/rust-programming-language-flaw.html

责任编辑:赵宁宁 来源: 51CTO专栏
相关推荐

2022-05-18 23:42:08

网络安全安全分析工具

2022-05-10 16:04:40

编程语言PythonC语言

2022-04-11 11:38:44

Python代码游戏

2022-04-07 11:03:07

Rust编程语言开发人员

2022-04-10 23:02:08

GoRust语言

2022-05-16 13:37:12

Sysrv僵尸网络微软

2022-05-05 14:01:02

DNS高危漏洞uClibc

2022-03-25 09:57:18

C++Rust语言

2022-05-20 14:54:33

数据安全数字化转型企业

2022-04-20 20:28:40

HDF 驱动框架鸿蒙操作系统

2022-03-10 17:02:51

Rust单链表数据结构

2022-05-16 15:35:00

漏洞黑客

2022-05-09 15:43:34

JavaScriptRust开发

2022-04-26 09:23:07

Hare编程语言C

2022-05-16 13:34:35

漏洞SonicWall攻击者

2022-05-16 10:36:08

GitHub开源项目

2022-05-26 07:41:24

Ftp服务器

2022-05-08 20:48:34

Exchange版本漏洞

2022-05-17 14:03:42

勒索软件远程工作

2022-03-30 09:09:39

漏洞网络安全网络攻击

同话题下的热门内容

影响Angular和React应用的常见六大漏洞PoC代码已公布,这个 VMware auth 高危漏洞需尽快修补Google发出提醒:Android用户警惕间谍软件利用零日漏洞进行监控谷歌:Predator间谍软件使用零日漏洞感染Android设备从微补丁应用看漏洞修复技术的发展与挑战OAS 平台受关键 RCE 和 API 访问漏洞的影响

编辑推荐

Log4j史诗级漏洞,从原理到实战,只用3个实例就搞明白!漏洞情报 | Spring RCE 0day高危漏洞预警Kubernetes的严重漏洞将所有服务器暴露在DoS攻击面前!Tomcat爆出安全漏洞!Spring Cloud/Boot框架多个版本受影响二维码新漏洞出现,遇到此类二维码小心中招
我收藏的内容
点赞
收藏

51CTO技术栈公众号