`
昔雪似花
  • 浏览: 202138 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Mysql concat函数与SQL注入

 
阅读更多
SQL注入语句有时候会使用替换查询技术,就是让原有的查询语句查不到结果出错,而让自己构造的查询语句执行,并把执行结果代替原有查询语句查询结果显示出来。

     例如:原本查询语句是 select username,email,content from test_table where user_id=uid;其中uid,是用户输入的。正常显示结果会出现用户名,用户邮箱,用户留言内容。但是如果uid过滤不严,我们可以构造如下SQL语句来获得任意数据表信息。

uid=-1 union select username ,password,content from test_talbe where user_id=管理员id;

实际执行就是select username,email,content from test_table where user_id=-1 union select username ,password,content from test_talbe where user_id=管理员id;其中显示正常用户emai的地方,变成了显示管理员的密码了。

但是,往往事情并不是这么简单,首先要找到漏洞,其次构造这种语句时候要考虑各个字段的类型,让int或samllint类型的字段显示varchar显然不合适。最后就是本文要说的。

如果出现问题的SQL语句只有一个或两个字段怎么办,我们想知道很多东西,一两个字段太少了,远远不能满足我们的需要。那么我们可以使用concat函数。

concat函数本来是这样用的SELECT CONCAT('My', 'S', 'QL');执行结果是'MySQL'。也就是连接作用的。我们利用它来为我们服务,

uid=-1 union select username ,concat(password,sex,address,telephone),content from test_talbe where user_id=管理员id;

这个语句实际查询了六个字段,但是显示的时候,把password,sex,address,telephone等字段合在一起,显示在原本应该显示email的地方。
分享到:
评论

相关推荐

    Mysql数据库使用concat函数执行SQL注入查询

    主要介绍了Mysql数据库使用concat函数执行SQL注入查询,concat函数在SQL注入查询中会有意想不到的作用,本文就起讲解它的使用,需要的朋友可以参考下

    MySQL常用类型转换函数总结(推荐)

    1、Concat函数。 连接字符串常用:concat函数。如sql查询条件的like查询, AND c.name like concat(#{param.name},’%’) 将Int 转为varchar经常用 concat函数,比如concat(8,’0′) 得到字符串 ’80’  2、Cast...

    详解MySQL中concat函数的用法(连接字符串)

    MySQL中concat函数 使用方法: CONCAT(str1,str2,…)  返回结果为连接参数产生的字符串。如有任何一个参数为NULL ,则返回值为 NULL。 注意: 如果所有参数均为非二进制字符串,则结果为非二进制字符串。 如果...

    mysql函数拼接查询concat函数的使用方法

    //查询表managefee_managefee的年year 和 month ,用concat函数拼成year-month。例如将2017和1 拼成2017-01。. select CONCAT(a.year,'-',if(a.month<=9,CONCAT('0',a.month),a.month))as date,a.* from managefee...

    MySQL中的CONCAT函数使用教程

    使用MySQL CONCAT()函数将两个字符串连接起来,形成一个单一的字符串。试试下面的例子: mysql> SELECT CONCAT('FIRST ', 'SECOND'); +---------------------...了解CONCAT函数更详细,考虑EMPLOYEE_TBL表具有以下记录

    MySQL中group_concat函数深入理解

    本文通过实例介绍了MySQL中的group_concat函数的使用方法,比如select group_concat(name) 。 MySQL中group_concat函数 完整的语法如下: group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] ...

    详解MySQL拼接函数CONCAT的使用心得

    一、concat函数相关的几种用法 1-1、函数:concat(str1,str2,…) concat 函数一般用在SELECT 查询语法中,用于修改返回字段内容,例如有张LOL英雄信息表如下 mysql> select * from `LOL`; +----+---------------+-...

    MySQL GROUP_CONCAT限制解决方案

     GROUP_CONCAT函数可以拼接某个字段值成字符串,默认的分隔符是 逗号,即”,” ,  如果需要自定义分隔符可以使用 SEPARATOR  如: SELECT GROUP_CONCAT(name SEPARATOR '_') FROM user 限制:  GROUP_CONCAT...

    MYSQL,SQLSERVER,ORACLE常用的函数

    SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A A ZERO SPACE --------- --------- --------- --------- ...

    MySQL统计函数GROUP_CONCAT使用陷阱分析

    最近在用MySQL做一些数据的预处理,经常会用到group_concat函数,比如类似下面一条语句 代码如下:mysql>select aid,group_concat(bid) from tbl group by aid limit 1; sql语句比较简单,按照aid分组,并且把相应的...

    mysql的group_concat函数使用示例

    MySQL中group_concat函数,完整的语法如下: 代码如下:group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator ‘分隔符’]) 基本查询 代码如下:select * from aa; 代码如下:+——+——+|...

    sqlilabs,里边赠送包含了,sqlilabs过关手册-注入天书,联系sql注入的绝佳靶场

    介绍几个函数:  (1)version():查看数据库版本  (2)user():查看当前用户  (3)database():查看使用的数据库  (4) limit :limit子句来分批获取所有数据  (5)group_concat():一次性获取...

    sqlilabs过关手册注入天书,过关sqlliabs的绝佳手册

    介绍几个函数:  (1)version():查看数据库版本  (2)user():查看当前用户  (3)database():查看使用的数据库  (4) limit :limit子句来分批获取所有数据  (5)group_concat():一次性获取...

    MySQL拼接字符串函数GROUP_CONCAT详解

    上一篇文章 跨表更新,看到自己写的SQL像个憨憨写了关于跨表个更新的内容。一年过的很快,文中后来的两位员工 ...在 Mysql 官方文档 中,该函数被放在聚合函数章节,如果你要按照指定字段分组拼接,就要配合关键字 GRO

    Mysql5.7中使用group concat函数数据被截断的问题完美解决方法

    前天在生产环境中遇到一个问题:使用 GROUP_CONCAT 函数select出来的数据被截断了,最长长度不超过1024字节,开始还以为是navicat客户端自身对字段长度做了限制的问题。后面故意重新INSERT了一个字段长度超1024字节...

    Mysql保持现有内容在后面增加内容的sql语句

    此命令作用,修改数据表ff_vod,在vod_url字段内容后加入...其实这个主要是使用了CONCAT函数,mysql CONCAT()函数用于将多个字符串连接成一个字符串。 下面就带您了解mysql CONCAT()函数 mysql CONCAT()函数

    mysql如何将多行数据合并成一行

    select group_concat(list_name) from aa_list 您可能感兴趣的文章:MySql采用GROUP_CONCAT合并多条数据显示...concat()函数用法总结MySQL统计函数GROUP_CONCAT使用陷阱分析mysql的group_concat函数使用示例MySQL中gro

    mysql常用函数实例总结【聚集函数、字符串、数值、时间日期处理等】

    合并字符串函数:concat(str1,str2,str3…) 比较字符串大小函数:strcmp(str1,str2) 获取字符串字节数函数:length(str) 获取字符串字符数函数:char_length(str) 字母大小写转换函数:大写:upper(x),ucase(x)...

    MySQL中的常用函数

    在MySQL中,函数不仅可以出现在select语句及其子句中,而且还可以出现在update、delete语句中。...在MySQL中可以通过函数concat()和concat_ws()将传入的参数连接成为一个字符串。 语法定义为: concat(s1, s2,...

    Mysql 数字类型转换函数

    1、将Int 转为varchar经常用 concat函数,比如concat(8,’0′) 得到字符串 ’80’ 2、将varchar 转为Int 用 cast(a as signed) a为varchar类型的字符串 总结:类型转换和SQL Server一样,就是类型参数有点点不同 : ...

Global site tag (gtag.js) - Google Analytics