任务095:SQLMAP自动注入(二)-REQUEST和SQLMAP自动注入(三)-OPTIMIZATION
-
设置时间参数
1.1设置扫描时间
用sqlmap去扫描别人的网站会发送大量的请求可能目标服务器会发现你给你屏蔽掉,我们可以设置发送包的时间--delay 要指定的时间 时间是秒
1.2设置超时时间
--timeout 要设置的时间 默认为30秒,30要没有响就超时了
1.3尝试连接
--retries 要设置的次数 比如超时时间设置30妙那么就是90妙
1.4请求错误
如果你发送大量的错误请求就会被防护机制被注销掉可以用–safe-url每请求错误几次就放送正常的请求--safe-url 要设置几次
-
过滤日志里的没有用的地址参数
--scope
sqlmap -l 日志文件 --scope="(www)?\.target\.(com|net|org)“
解释用日志文件扫描目标,日志文件可以有其他的不想扫描的地址可以用
--scope
进行过滤
--scope
代码里的意思,只扫描有www.target.com
或cet
或org
sqlmap -l 日志文件 --scope="(19)?\.168\.20\.(1|10|100)" --level 3 --dbs
只扫描前面是
19(0-255).168.20.1
或10
或100
的地址
演示一下
看一下日志有很多请求地址只扫描192.168.51.3或30或90里面User-agent也注入测试--level>=3
命令sqlmap -l a --scope="(19)?\.168\.51\.(3|30|90)" --level 3 --dbs
只扫描文件里19(0-255).168.51.3
或30
或90
的地址
-
不URL编码加上这个参数
--skip-urlencode
-
每次请求前执行指定的python代码进行请求的变量参数进行修改添加叫你每次请求的内容都不同
--eval="写的脚步"
(三)-OPTIMIZATION
OPTIMIZATION:优化
-o 打开所有优化开关
--predict-output 预测公共查询输出
--keep-alive 使用永久HTTP(s)连接
--null-connection 没有实际HTTP响应正文的页长度
--threads=THREADS 最大并发HTTP(s)请求数(默认值1
-
-O
-O
就是用一个-O就是用代替下面的所有参数--predict-output 预测公共查询输出 --keep-alive 使用永久HTTP(s)连接 --null-connection 没有实际HTTP响应正文的页长度
-
–predict-output
-
通常sqlmap扫描时间不叫长可以用优化参数
-
根据检测方法,比对返回值和统计表内容,不断缩小检测范围,提高检测效率
-
版本名、用户名、密码、Privileges、role、数据库名称、表名、列名
-
与 –threads 参数不兼容就是你用了–threads那就不能用了–predict-output
-
统计表默认位置:/usr/share/sqlmap/data/txtcommon-outputs.txt
-
-
–keep-alive
-
使用 http(s) 长连接,性能好
-
与 –proxy 参数不兼容就是你用了–proxy 那就不能用了 --keep-alive
-
长连接避免重复建立连接的网络开销,但大量长连接会严重占用服务器资源(节省网络开销,但是会占用服务器资源,防止重复建立连接时被服务器端检测发现)
-
-
–null-connection
-
只获取相应页面的大小值,而非页面具体内容
-
通常用于盲注判断 真/假,降低网络带宽消耗
-
与–text-only参数不兼容(基于页面内容的比较判断 真/假
-
-
–threads
-
最大并发线程
-
盲注时每个线程获取一个字符(7次请求)。获取完成后线程结果
-
默认值为1,建议不要超过10,否则可能影响站点可用性
-
与 --predict-output参数不兼容
-