ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Sqlmap工具学习:从基础使用到WAF绕过、盲注深挖、实战避坑(SRC挖洞专用)

Sqlmap工具学习:从基础使用到WAF绕过、盲注深挖、实战避坑(SRC挖洞专用) 前言在上一篇《SQL注入手工实战详解》中我们完整熟悉了手工注入的核心思路与实战流程。大家可能会有一个疑问既然手工注入这么重要为什么还要学 sqlmap其实手工注入是底线能力sqlmap是效率工具二者不是替代关系是互补关系。在真实的 SRC 挖洞、渗透测试场景中简单漏洞靠工具扫描、复杂的漏洞靠手工、批量资产靠工具、疑难绕过WAF靠手工。本文基于sqlmap的基础用法专注实战用法、踩坑点、WAF绕过、盲注优化、工具局限性完全适配日常渗透测试与SRC漏洞挖掘。一、重新认知Sqlmap 的真实定位很多人在挖漏洞时只无脑跑 sqlmap结果就是扫出真正高危洞的效率不高。Sqlmap 核心优势自动化探测海量注入 payload覆盖人工容易遗漏的闭合方式全自动处理布尔盲注、时间盲注节省海量手工猜解时间看过我第一篇文章的看到这应该很舒服了支持 Cookie、Token、代理、批量扫描、自定义脚本拓展Sqlmap 致命短板实战必懂默认流量特征极强极易被 WAF、云防护拦截目前市场上主流的网站都会部署W(web)A(aplication)F(firewall)防火墙无法智能绕过过滤、双写、大小写、空格替换等自定义防护无法识别伪静态、隐藏参数、复杂业务鉴权注入点挖掘思路先手工判断注入点再用sqlmap打数据是最高效的实战流程。二、Sqlmap 配置基于可能大部分人用的都是windows主机这里就讲一下怎么在windows上配置sqlmap。首先我们打开gtihub上sqlmap源码的网址https://github.com/sqlmapproject/sqlmap选择下载源码下载压缩包如果下载速度太慢或者连不上github可以选择在国内的镜像站下载然后我们解压到全英文路径下在解压好的文件夹下右键打开终端然后我们输入python的命令来测试sqlmap是否已经能使用如下图能看到sqlmap的标志性文字logo证明我们sqlmap可以运行啦三、Sqlmap 基础核心命令实战常用精简版只保留挖洞高频命令拒绝冗余参数。1. 基础探测注入sqlmap -u http://xxx.com?id12. 携带 Cookie 登录态探测SRC高频sqlmap -u url --cookie登录cookie3. 批量扫描请求包最推荐、最贴合实战Burp关于这个的使用教程后续会发 抓包保存为 txt直接加载数据包扫描sqlmap -r request.txt4. 直接脱库、查表、查字段查库--dbs查表--tables -D 库名查字段--columns -D 库名 -T 表名查数据--dump -D 库名 -T 表名 -C 字段名四、高阶核心Sqlmap 实战避坑坑1默认扫描速度太慢盲注超时默认线程低、延迟高面对时间盲注几乎跑不出结果。优化参数--threads 10 --delay 0.1提升线程数、降低请求间隔大幅提升盲注效率但是在实战中要注意网站的WAF拦截规则高线程可能会被拦截坑2WAF 拦截默认 payload直接误报无漏洞解决方式随机UA、随机延迟、伪造请求头--random-agent --tamperspace2commentspace2comment空格替换/**/绕过基础空格过滤。坑3页面存在跳转、302 导致扫描失效添加跟随跳转参数--follow-redirects坑4重复扫描、缓存结果导致判断错误当结果异常缓存污染重复扫描判断错误时按需使用--flush-session五、核心进阶Tamper 脚本绕过实战挖洞常用Tamper 是 sqlmap 高阶能力的核心。默认自带数十种绕过脚本应对常见防护。常用实战 Tamper 清单space2comment空格替换为注释绕过空格过滤randomcase关键字随机大小写绕过绕过简单正则拦截doubleencode双重URL编码绕过基础编码过滤charunicodeencodeUnicode编码绕过部分国产WAF组合使用示例实战常用组合sqlmap -r 1.txt --tamperspace2comment,randomcase --random-agent --flush-session六、深度原理为什么工具扫不出「真实高危注入」这里结合上一篇手工注入内容做闭环总结很多 SRC 站点存在自定义轻量过滤禁止空格、禁止union、禁止select、拦截and/or此时 sqlmap 默认 payload 全部失效直接判定无漏洞。但人工可以轻松绕过空格替换 %09、%0a、/**/关键字双写绕过selselectect异或、或逻辑替代and/or这就是为什么手工是下限工具是上限。不会手工永远挖不到高质量漏洞。七、实战标准流程面试/SRC通用标准答案总结出一套行业通用的注入测试流程完全适配真实渗透1. 手工判断单引号、逻辑真假、闭合方式确认2. 手工尝试简单绕过空格替换、大小写测试3. 工具批量探测sqlmap加载数据包携带tamper绕过注意WAF拦截4. 工具无法利用则回归手工盲注手工判断、特殊闭合绕过八、渗透测试规范新人必守避免违规在 SRC 挖洞、授权测试中严格遵守禁止大线程、高频批量扫描避免打垮业务系统禁止批量脱库、导出用户隐私数据仅做漏洞验证、证明漏洞存在即可结语到此我们完成了SQL注入手工实战 Sqlmap高阶工具完整闭环学习后面博主还会出关于SQL注入的文章是偏向于WAF绕过环节的会用SQL注入来举例。许多人的误区就是二选一要么只用手工、要么只用工具。想要提升挖洞效率二者要相结合手工定思路工具提效率。下一篇预告XSS跨站脚本攻击完整实战反射型/存储型/DOM型 SRC真实挖掘思路新的攻击方式要来啦也是非常容易出SRC漏洞的核心方向。声明本文所有内容仅用于本地靶场学习未经授权不得对互联网任何真实网站进行渗透测试
返回列表