|
bash 是一个为GNU计划编写的Unix shell。:Bourne-Again SHell — 这是关于Bourne shell(sh)的一个双关语(Bourne again / born again)。Bourne shell是一个早期的重要shell,由史蒂夫·伯恩在1978年前后编写,并Version 7 Unix一起发布。bash则在1987年由布莱恩·福克斯创造。在1990年,Chet Ramey成为了主要的维护者。 shell在linux系统所处的位置:
常见linux和UNIX操作系统环境中使用的shell有Bourne shell(sh),KornShell(ksh),C shell(csh), Bourne-again shell(bash),当今CentOS,RHEL和Ubuntu系统中使用的Shell是 Bourne-again shell(bash),这次爆出的漏洞正是bash。
黑客会利用该漏洞进行对系统的监控,获得系统信息,漏洞调用的bash shell之前创建的特殊的环境变量,这些变量可以包含代码,同时会被bash执行。但这并不表示,像网络上其它用户流传的可以得到计算机的控制权限,虽然黑客利用该漏洞得不到控制权限,但是它容易泄露计算机相关信息,从而为黑客发起攻击提供便利,所以该漏洞依然是很危险的。不过提醒大家的是,只要是shell的漏洞,都是很危险的。shell作为人与计算机沟通的桥梁,如果这层桥梁出现问题,后果可想而知。
如果你的bash版本低于4.3建议修复漏洞。
漏洞检测方法命令:env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
如果执行该命令后,输出“this is a test”,表示bash存在该漏洞会执行我们echo的语句。
修复方法:
CentOS||RHEL:
执行 yum -y update bash
debian:
7.5 64bit && 32bit
apt-get -y install --only-upgrade bash
使用修补方案修复后,bash在执行上诉代码时,就会报错,从而不会执行代码中的shell命令。
bash: warning: x: ignoring function definition attempt
bash: error importing function definition for `x'
|
|