sqli靶场中前两关手注算是比较简单的,但之后的报错注入以及盲注需要我们不会脚本的费很大的力气,而kali上的一个工具恰恰可以通过简单的命令将靶场中的信息扫出来
注意:许多ctf题目的sql注入是无法扫出来的,还是需要学习手注以及用bp抓包进行爆破,在此分享只是一种方法,并不代表所有题目均可,认真学习基础知识才是硬本事。
sqli-lab less5为例
首先我们先判断注入类型
当我们输入
1.?id=1 and 1=2 时正常回显
2.?id=1 and 1=2' 时回显报错
3.?id=1 and 1=2'--+时正常回显
那么这道题就是字符型单引号闭合
那么我们直接?id=1'就可以开始进行sqlmap扫描
首先说一下sqlmap的基本用法
1.sqlmap -h 可以查看所有sqlmap功能以及用法
2.sqlmap -u 后接需要扫描的url
3.sqlmap -u URL --current-db 可以显示你当前扫描的url中所使用的数据库
4.-D db 意思是在db这个数据库中进行扫描
-T tb 意思是在tb这个表中进行扫描
-C col 意思是在col这个字段进行扫描
以上三个按照先后层次顺序在后方接--tables、--columns 即可扫出所需内容
5.--dump 则是将扫出来的内容输出出来
下面开始进行操作
首先需要明确一点,这里的ip需要填写物理机连的网络的ip,而不是127.0.0.1,否则无法上网
然后我们就进入了扫描
通过--current-db我们可以看到现在正在使用的数据库为‘security‘
通过在security的数据库下,扫出了所有的表格
可以看到在users这个表格中扫出了所有的列,而id、password、username就是我们需要的信息那么下一步就是输出这些信息
sqlmap -u 'http://192.168.0.93/sqli-labs/Less-5/?id=1' -C username,id,password -T users --dump
这个就是语句
这个就是输出出所有user的信息,关卡完成
今天的分享到此结束