如何保护您的服务器免受Shellshock Bash漏洞的影响

打印 上一主题 下一主题

主题 868|帖子 868|积分 2604

前些天发现了一个巨牛的人工智能学习网站,普通易懂,风趣幽默,忍不住分享一下给各人。点击跳转到网站。
简介

2014年9月24日,披露了一个 GNU Bash 漏洞,称为 Shellshock 或 “Bash Bug”。简而言之,该漏洞允许长途攻击者在特定条件下执行任意代码,方法是通过情况变量赋值后传递代码字符串。由于 Bash 在 Linux、BSD 和 Mac OS X 发行版中的普遍存在,许多计算机都容易受到 Shellshock 的影响;所有从 1.14 到 4.3 版本(即现在的所有版本)之间未修补的 Bash 都存在风险。
Shellshock 漏洞可以在运行允许未经授权的长途用户分配 Bash 情况变量的系统上被使用。可被使用的系统示例包括:


  • 使用 Bash 编写的或启动到 Bash 子shell的 Apache HTTP 服务器(通过 mod_cgi 和 mod_cgid)
  • 特定的 DHCP 客户端
  • 使用 ForceCommand 功能的 OpenSSH 服务器
  • 使用 Bash 的各种网络袒露服务
有关该漏洞的详细形貌可在 CVE-2014-6271、CVE-2014-7169、CVE-2014-7186 和 CVE-2014-7187 中找到。
由于 Shellshock 漏洞非常普遍——甚至比 OpenSSL Heartbleed 漏洞更为严重——而且特别容易被使用,因此猛烈建议尽快更新受影响的系统以修复或减轻漏洞。我们将向您展示如何测试您的呆板是否存在漏洞,以及假如存在漏洞,如何更新 Bash 以消除漏洞。
检查系统漏洞

在运行 Bash 的每个系统上,您可以通过在 bash 提示符下运行以下命令来检查 Shellshock 漏洞:
  1. env 'VAR=() { :;}; echo Bash is vulnerable!' 'FUNCTION()=() { :;}; echo Bash is vulnerable!' bash -c "echo Bash Test
  2. "
复制代码
命令中突出表现的 echo Bash is vulnerable! 部门表示长途攻击者可以注入恶意代码的位置;在情况变量赋值内部的函数定义后面的任意代码。因此,假如您看到以下输出,则表示您的 Bash 版本存在漏洞,应该进行更新
  1. Bash is vulnerable!
  2. Bash Test
复制代码
假如您的输出不包括模仿攻击者的有效负载,即未打印出 “Bash is vulnerable”,则至少您已受到第一个漏洞(CVE-2014-6271)的保护,但可能仍旧容易受到厥后发现的其他 CVE 的影响。假如输出中有任何 bash 告诫或错误,您应该将 Bash 更新到最新版本;此过程在下一节中形貌。
假如测试命令的唯一输出是以下内容,则表示您的 Bash 不受 Shellshock 影响:
  1. Bash Test
复制代码
测试长途站点

假如您只想测试网站或特定 CGI 脚本是否存在漏洞,请使用此链接:‘ShellShock’ Bash Vulnerability CVE-2014-6271 Test Tool。
只需在相应的表单中输入要测试的网站或 CGI 脚本的 URL,然后提交。
修复漏洞:更新 Bash

修复漏洞的最简单方法是使用默认的软件包管理器来更新 Bash 的版本。以下各末节先容了在各种 Linux 发行版(包括 Ubuntu、Debian、CentOS、Red Hat 和 Fedora)上更新 Bash 的方法。
APT-GET:Ubuntu / Debian

对于当前支持的 Ubuntu 或 Debian 版本,请通过 apt-get 更新 Bash 到最新版本:
  1. sudo apt-get update && sudo apt-get install --only-upgrade bash
复制代码
现在通过运行上一节中的命令(检查系统漏洞)再次检查您的系统漏洞。
Ubuntu / Debian 已停止支持的版本

假如您正在运行被视为已停止支持状态的 Ubuntu / Debian 版本,则必须升级到受支持的版本才能使用软件包管理器更新 Bash。可以使用以下命令升级到新版本(建议您先备份服务器和重要数据,以防遇到任何问题):
  1. sudo do-release-upgrade
复制代码
升级完成后,请确保更新 Bash。
YUM:CentOS / Red Hat / Fedora

通过 yum 更新 Bash 到最新版本:
  1. sudo yum update
  2. bash
复制代码
现在通过运行上一节中的命令(检查系统漏洞)再次检查您的系统漏洞。
CentOS / Red Hat / Fedora 已停止支持的版本

假如您正在运行被视为已停止支持状态的 CentOS / Red Hat / Fedora 版本,则必须升级到受支持的版本才能使用软件包管理器更新 Bash。可以使用以下命令升级到新版本(建议您先备份服务器和重要数据,以防遇到任何问题):
  1. sudo yum update
复制代码
升级完成后,请确保更新 Bash。
结论

务必将所有受影响的服务器更新到最新版本的 Bash!另外,务必实时更新服务器的最新安全补丁!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

飞不高

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表