使用福建地区的帐号登录后,点击我的服务-宽带资源查询,输入手机号后点击下一步,可以看到这么一条HTTP请求:
这里的 ADDRNAME 参数可注入:
经测试,WAF会匹配如下关键词
使用/**/代替其中的空格(%20)即可绕过WAF;该WAF还会将传入的<>转为<>,在部分SQL语句中,可以使用BETWEEN AND等来替代大于小于这些运算符。
可以写个脚本来盲注(此处演示仅证明可行性):
传入真时返回地区数据,传入假时返回"未查询到任何结果"
通过该方法获取到当前用户名长度为3, ascii码分别为83 82 77, 对应"SRM"。
也可以通过XML报错的方式来获取数据:
可得到当前用户名确实为SRM。
当前用户权限类型为PLUSTRACE哦 ._.
-
and
/**/
ascii
(
substr
(
SYS_CONTEXT
(
'USERENV'
,
'CURRENT_USER'
),%
s
,
1
))=
'%s
-
USER
:
-
ascii
(
substr
(
SYS_CONTEXT
(
'USERENV'
,
'CURRENT_USER'
),
1
,
1
))=
1
-
and
/**/
length
(
SYS_CONTEXT
(
'USERENV'
,
'CURRENT_USER'
))=
5