为何修复Shellshock漏洞像打地鼠

安全 漏洞
GNU Bourne Again Shell(bash)的Shellshock漏洞影响了广泛使用bash的Unix/Linux服务器,由于它允许远程执行代码获得与系统管理员相同的 权限去控制系统而被认为破坏力超过Heartbleed。而更糟糕的是,bash官方补丁没有完全修复问题。

GNU Bourne Again Shell(bash)的Shellshock漏洞影响了广泛使用bash的Unix/Linux服务器,由于它允许远程执行代码获得与系统管理员相同的 权限去控制系统而被认为破坏力超过Heartbleed。而更糟糕的是,bash官方补丁没有完全修复问题。为何修复Shellshock漏洞就像打地鼠, 堵了一头另一头又冒出?Shellshock漏洞的工作原理是:攻击者可以向任何使用bash交互的系统如Web服务器、Git版本控制系统和DHCP客 户端发送请求,请求包含了以环境变量储存的数据。

环境变量就像是操作系统的剪切板,储存了帮助系统和软件运行的信息。在本案例中,攻击者发送的请求是精心 构造的,诱骗bash将其视为命令,bash像平常执行良性脚本那样执行命令。这种欺骗bash的能力就是Shellshock漏洞。官方发布的补丁被发 现仍然存在相似的漏洞。

计算机科学家David A. Wheeler在 邮件列表上指出,bash的解析器存在许多漏洞,因为它在设计时就没有考虑过安全性,除非它停止解析环境变量,否则修正就像是打地鼠。Wheeler建议 打上非官方的补丁修正bash,这些补丁会破坏向后兼容性。其中一个补丁来自德国计算机安全专家Florian Weimer,他的补丁为bash函数加入前缀,防止它们被指明为系统变量。另一个补丁来自NetBSD开发者Christos Zoulas博士,他的补丁只允许bash在收到明确请求时输入环境变量,消除安全风险。

FreeBSD的bash实现则在最新的修正中默认关闭了输入功能。Wheeler等人相信,虽然破坏了向后兼容性,但不会影响太多的bash依赖系统。苹果的OS X系统也存在Shellshock漏洞, 苹果表示大部分用户不会面临风险,只有配置了advanced UNIX services的用户会受到影响。OS X使用了v3.2.51.(1)的GNU bash,新版本bash许可证换到了条款更严格的GPLv3,所以苹果仍然使用旧版本。

[[120729]]

 

责任编辑:蓝雨泪 来源: solidot
相关推荐

2016-07-05 09:38:16

2014-09-26 15:57:52

2014-10-13 10:37:59

2014-09-26 15:29:13

2022-07-13 16:24:12

ArkUI(JS)打地鼠游戏

2014-09-30 09:56:03

2014-10-08 10:15:17

2014-10-08 09:25:30

2014-10-09 10:00:39

2010-03-12 16:19:11

Safari漏洞修复

2009-02-09 09:35:20

2021-07-27 12:52:16

苹果WiFi漏洞

2010-08-24 10:42:53

Google安全漏洞

2013-03-24 16:07:35

2018-11-21 10:13:35

2014-03-23 17:51:10

2015-09-08 10:15:16

2009-01-16 16:26:19

2014-04-09 17:40:00

2013-10-15 10:22:43

点赞
收藏

51CTO技术栈公众号