第二十关请求方式为POST请求 , 注入点为 单引号字符串型 , 注入方式为 联合注入
通过 cookie 注入
第一步,判断注入方式
先看源码
账号和密码对特殊字符进行过滤 , 固 不能使用常规注入
登录成功会保存 cookie , 有一个根据cookie中的用户名查询的SQL 并且从cookie中获取的用户名没有过滤 , 同时查询的结果会展示在页面中 , 我们可以通过修改 cookie中 uname的内容 进行联合注入
登录成功后有显示位 , 固 可以使用联合注入
我们使用 Burp工具 进行代理拦截 , 刷新网页触发拦截
第二步,获取字段数
使用 order by 从第1列开始排序 , 直至没有该列
Cookie: uname=admin' order by 4 #
第4列时出现异常 , 固 字段数为3
第三步,获取显示位置
使用联合查询获取字段显示的位置
Cookie: uname=-1'union select 1,2,3 #
第四步,脱库
1. Cookie: uname=-1'union select 1, 2. (select group_concat(schema_name) 3. from information_schema.schemata) 4. ,3 #
按照此方法继续获取表,获取字段,直至脱库