sqlmap基础学习(笔记)

此文为自己学习sqlmap基础的笔记,留个痕迹,便于以后复习查询
#sqlmap获取目标
python sqlmap --version
python sqlmap -h
python sqlmap -hh
#sqlmap直连数据库
##服务型数据库(MySQL、Oracle、Microsoft SQL Server、PostqreSQL etc)
DBMS://USER:PASSWORD@DBMS_IP/PORT/DATABASE_NAME
例如:python sqlmap.py -d “mysql://admin:admin@127.0.0.1:3306/testdb” -f --banner --dbs --users
##文件型数据库(SQLite、Microsoft Access、Firebird etc)
DBMS://DATABASE_FILEPATH

#sqlmap URL探测
-u 或 --url
例如:python sqlmap.py -u “testurl”

#sqlmap文件读取目标
1、-l 从burpsuite proxy或WebScarab proxy中读取http请求日志文件
保存日志文件为logs

将日志文件复制到sqlmap所在目录,然后cmd执行
python sqlmap.py -l logs

2、-x 从sitemap.xml站点地图文件中读取目标探测

3、-m 从多行文本格式文件中读取多个目标,对多个目标进行探测

4、-r 从文本文件中读取http请求作为SQL注入探测目标
例如:python sqlmap.py -r target.txt

5、-c 从配置文件sqlmap.conf中读取目标探测
例如:设置sqlmap.conf中的URL

python sqlmap.py -c sqlmap.conf

#sqlmap Google批量注入
sqlmap通过 -g 自动利用Google获取指定Google hack的目标,然后利用交互式向导模式进行SQL注入探测
例如:python sqlmap.py -g “inurl:\”.php?id=1\""

#sqlmap设置请求参数

#sqlmap设置HTTP
在某些具体情况下,需要强制使用具体的HTTP请求方法。例如PUT请求方法(–method=PUT)
#sqlmap设置POST提交参数
默认情况下用于执行HTTP请求的方法是GET,可以通过提供在POST请求中发送的数据隐式地将其改为POST。
##实例Less-11
使用burpsuite截取HTTP请求,将提交的数据复制,用于注入

开始探测
python sqlmap.py -u “http://sql/Less-11/index.php” --data=“uname=admin&passwd=admin&submit=Submit” -f --banner --dbs --users
(-f fingerprint-指纹)


#sqlmap设置参数分隔符
某些情况下,sqlmap需要覆盖默认参数分隔符(例如& in GET和POST数据),才能正确分割处理每个参数。
python sqlmap.py -u “http://sql/Less-11/index.php” --data=“uname=admin&passwd=admin&submit=Submit” --param-del="&" --banner

#sqlmap设置Cookie头
sqlmap中用来设置cookie的参数:
–cookie
–cookie-del
–load-cookie
–drop-cookie
##使用场景
1、Web应用程序具有基于Cookie验证的过程
2、想利用Cookie值上的SQL注入漏洞
##sqlmap使用Cookie过程
1、登录或浏览页面
2、打开审计工具或代理截断,复制Cookie
3、在sqlmap中使用 --cookie 粘贴Cookie
###DVWA测试
python sqlmap.py -u “http://dvwa:8088/vulnerabilities/sqli/?id=1&Submit=Submit#” --banner
提示是否跟随302重定向响应

拒绝后不存在注入

使用burpsuite截断,抓取cookie值

复制cookie,然后
python sqlmap.py -u “http://dvwa:8088/vulnerabilities/sqli/?id=1&Submit=Submit#” --cookie “PHPSESSID=8i8fuens2fa0uq4b83175moham; security=low” --banner
没有302重定向响应提示,直接返回存在的注入信息和banner信息

如果通信过程中web应用程序使用Set-Cookie标头进行响应,sqlmap将在所有进一步的http请求中自动使用其值作为Cookie标头。sqlmap将为SQL注入自动测试这些值。
通过 --drop-set-cookie ,sqlmap将忽略任何即将到来的Set-Cookie头来避免自动测试
如果提供一个带有选项的HTTP Cookie报头——Cookie和目标URL在任何时候发送一个HTTP Set-Cookie报头,sqlmap将询问要为以下HTTP请求使用哪组Cookie。
load-cookie 可以用来提供包含Netscape/wget格式的cookie文件
注:如需对HTTP Cookie值进行SQL注入探测,需设置 --level 2 以上(3)
##实例Less-20
使用burpsuite抓取HTTP请求后,Forward发送包,然后将包含cookie的请求信息复制到target.txt

开始探测
python sqlmap.py -r target.txt --level 2 -p uname

测试payload

#sqlmap设置User-Agent
默认情况下sqlmap使用 sqlmap/1.0-dev-xxxxxxx (http://sqlmap.org) 用户代理头执行HTTP请求。通过提供提供自定义用户代理作为选项的参数,可以使用选项——user-agent伪造。
通过使用 --random-agent,sqlmap将从./txt/user-agent中随机选择一个适用于会话的所有HTTP请求,一些站点在服务端检测HTTP User-Agent值,如果不是一个合法的值,就会中断连接,同时sqlmap也会爆出错误。
##user-agent.txt所在目录

##实例Less-1
###–user-agent
将burpsuite抓取到的User-Agent复制,在sqlmap中执行
python sqlmap.py -u “http://sql/Less-1/?id=1” --user-agent=“Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0” --banner

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值