当前位置首页 > 百科> 正文

Shellshock(一个安全漏洞)

2019-10-15 14:29:00 百科

Shellshock(一个安全漏洞)

Shellshock,又称Bashdoor,是在Unix中广泛使用的Bash shell中的一个安全漏洞,首次于2014年9月24日公开。

基本介绍

  • 中文名:Shellshock
  • 又称:Bashdoor
  • 定义:Bash shell中的一个安全漏洞
  • 提出时间:2014年9月24日
  • 学科:网际网路术语

简介

Shellshock,又称Bashdoor,是在Unix中广泛使用的Bash shell中的一个安全漏洞,首次于2014年9月24日公开。许多网际网路守护进程,如网页伺服器,使用bash来处理某些命令,从而允许攻击者在易受攻击的Bash版本上执行任意代码。这可使攻击者在未授权的情况下访问计算机系统。

定义

许多网际网路守护进程,如网页伺服器,使用bash来处理某些命令,从而允许攻击者在易受攻击的Bash版本上执行任意代码。这可使攻击者在未授权的情况下访问计算机系统。

背景

Shellshock错误将影响Bash,即各种基于Unix的系统用来执行命令行和命令脚本。它通常安装为系统的默认命令行界面。对Bash的原始码历史的分析显示自1989年9月Bash版本1.03发布以来,这些bug已经存在。
Shellshock是一个特权升级漏洞,它为系统用户提供了执行应该不可用的命令的方法。这是通过Bash的“函式导出”功能发生的,因此在一个运行的Bash实例中创建的命令脚本可以与下级实例共享。通过在实例之间共享的表内编码脚本(称为环境变数列表)来实现此功能。Bash的每个新实例都会扫描此表以获取编码脚本,将每个实例组装成一个在新实例中定义该脚本的命令,然后执行该命令。新实例假设在列表中找到的脚本来自另一个实例,但是它不能验证这个,也不能验证它构建的命令是一个正确形成的脚本定义。因此,攻击者可以在系统上执行任意命令,或利用Bash命令解释器中可能存在的其他错误(如果攻击者有办法操纵环境变数列表并导致Bash运行)。
2014年9月24日向公众发布了这个bug,当时Bash更新了这个修补程式,準备发布儘管需要一些时间来更新计算机来解决潜在的安全问题。

攻击报告

在发布Bash漏洞一小时之内,就有机器被这个漏洞攻击的报告。截至2014年9月25日,攻击者正在利用基于计算机攻击的基于计算机的殭尸网路进行分散式拒绝服务(DDoS)攻击和漏洞扫描。卡巴斯基实验室报告称,受到攻击的机器被称为“谢谢 - 罗布”,正在对三个目标进行DDoS攻击,他们没有指出。2014年9月26日,一家名为“wopbot”的与Shellshock有关的殭尸网路被报导,该蠕虫被用于针对Akamai Technologies的DDoS攻击并扫描美国国防部。
9月26日,安全公司Incapsula在过去24小时内对1800多个来自400个唯一IP位址的网路域进行了17400次攻击;55%的攻击来自中国和美国。截至9月30日,网站性能公司CloudFlare表示,它每天跟蹤大约150万次与该bug有关的攻击和探测。
10月6日,广泛报导,雅虎伺服器在涉及Shellshock问题的攻击中受到了损害。然而,第二天却被否认是特别允许这些袭击的是壳牌之击。

具体的开採载体

基于CGI的Web伺服器

当Web伺服器使用公共网关接口(CGI)来处理文档请求时,它会将请求中的某些信息複製到环境变数列中,然后将请求委託给处理程式。如果处理程式是一个Bash脚本,或者如果它使用system(3)调用执行一个,则Bash将接收由伺服器传递的环境变数,并将按上述方式处理它们。这为攻击者提供了使用特製文档请求触发Shellshock漏洞的方法。
广泛使用的ApacheWeb伺服器的安全性文档指出:“如果不仔细检查,CGI脚本可能是非常危险的”,而通常使用其他处理Web伺服器请求的方法。有许多线上服务试图针对暴露给Internet的Web伺服器来测试漏洞。

OpenSSH伺服器

OpenSSH有一个“ForceCommand”功能,在用户登录时执行一个固定的命令,而不是只运行一个不受限制的命令shell。即使用户指定应该运行另一个命令,固定命令也会执行;在这种情况下,原来的命令被放到环境变数“SSH_ORIGINAL_COMMAND”中。当在Bash shell中运行强制命令时(如果用户的shell设定为Bash),Bash shell将在启动时解析SSH_ORIGINAL_COMMAND环境变数,并运行嵌入在其中的命令。用户使用他们的受限shell访问来获得不受限制的shell访问,使用Shellshock错误。

DHCP客户端

一些DHCP客户端也可以将命令传递给Bash;连线到开放的Wi-Fi网路时,易受攻击的系统可能受到攻击。DHCP客户端通常从DHCP伺服器请求并获取IP位址,但也可以提供一系列附加选项。恶意DHCP伺服器可以在这些选项之一中提供一个字元串,用于在易受攻击的工作站或笔记本电脑上执行代码。

Qmail伺服器

当使用Bash处理电子邮件(例如,通过.forward或qmail别名管道)时,qmail邮件伺服器通过一种可以利用脆弱版本的Bash的方式传递外部输入。

IBM HMC受限制的shell

该错误可以被利用来从访问击受限shell所述的IBM硬体管理控制台,一个微小的Linux变化为系统管理员。IBM发布了一个补丁来解决这个问题。
声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net