[第一章 web入门]-sql注入-WriteUp
目录
寻找注入点
题目:
加URL后面一个单引号,提交发现页面无回显。
再在单引号后面加%23(%23是经过URL编码后的#号),回车,页面又正常回显。这时可以判断出此处存在字符型sql注入。
寻找flag
首先判断有几个字段和显示位。输入 order by 3,正常回显。
输入 order by 4,页面无回显,证明目标有3个字段。
现在判断有几个显示位。尝试采用联合查询的方法进行注入,输入 union select 1,2,3,页面回显数字2和3,说明第二位和第三位是显示位。
在显示位处输入database(),爆出当前使用的数据名称'note'。
下一步是获取当前数据库下的表,输入 union select 1,group_concat('|',table_name),database() from information_schema.tables where table_schema='note',爆出note数据库中存在名为'fl4g'和'notes'的表。我们应该选哪个呢?fl4g和flag相似,更加符合我们想要的信息,而在真实测试中也需要我们判断哪里存放着更为重要的信息。
选择了fl4g这个表,再看看表下的字段 union select 1,group_concat('|',column_name),database() from information_schema.columns where table_schema='note' and table_name='fl4g',只有一个叫'fllllag'的字段。
get flag
得到了这些信息足够得到flag。union select 1,2,group_concat('|',fllllag) from fl4g。
get flag success。注意,我这里用连接函数 group_concat指定数据用 | 隔开,所以flag前面的 | 不要加。提交。
分享完毕