知识点:
- 布尔注入
- 只能爆破出不带空格的语句信息
- database() version() 等
- 空格、注释都被过滤了
- 错误不回显了
感觉和26关应该差不多
构造payload:id=0'||1='1
发现可以绕过
尝试进行错误注入
构造payload:id='||exp(710)='1
发现页面没有有价值的回显信息;说明这里不能够进行错误注入
尝试进行if绕过
构造payload:id=0'||if(1,1,0)='1
发现可以执行,说明这里可以进行bool盲注
通过抓包将该请求包放到爆破模块中进行爆破
构造payload:id=0'||if((mid(database(),1,1)='a')1,0)='1
标记对应的标志位,然后设置payload1和payload2,模式和之前的关卡一样
得到对应的爆破数据,对爆破数据进行过滤
将正确页面中的信息放到过滤条件中,然后按照payload1进行排序得到了正确的数据库名
利用布尔注入只能够获取一些基本的数据,如数据库名、版本号、路径、用户等信息
无法利用空格替换导致不能够读取重要的信息
10