十种MYSQL显错注入原理讲解(二)
上一篇讲过,三种MYSQL显错注入原理。下面我继续讲解。
1、geometrycollection()
select * from test where id=1 and geometrycollection((select * from(select * from(select user())a)b));

函数讲解:
GeometryCollection是由1个或多个任意类几何对象构成的几何对象。GeometryCollection中的所有元素必须具有相同的空间参考系(即相同的坐标系)。对GeometryCollection的元素无任何限制,但下面介绍的GeometryCollection的子类会限制其成员。这类限制可能基于:
元素类型(例如,MultiPoint可能仅包含Point元素)。
维数。
对元素间空间交迭程度的限制。
(以上函数解释摘自官方文档.)
说的这么官方,感觉上其实就是“画图工具”,两点一线,四点一面,八点一体.....个人理解感觉就这样的。
官方文档中举例的用法如下:
GEOMETRYCOLLECTION(POINT(10 10), POINT(30 30), LINESTRING(15 15, 20 20))
POINT(x,y) 函数,这玩意是坐标。举个栗子~就相当于X,Y坐标图上的一点。
LINESTRING(x y,x y)函数,这个函数用来描述直线,两点连成的直线。
原理解析:
咱们攻击载荷拆分,查询的为一串字符,然后用处理geometrycollection(),由于MYSQL无法用这样字符串画出图形,所以报错了。
select user()
select * from(...)a
select * from(...)b
select * from test where id=1 and geometrycollection((...));
2、multipoint()
select * from test where id=1 and multipoint((select * from(select * from(select user())a)b));

函数解释:
MultiPoint是一种由Point元素构成的几何对象集合。这些点未以任何方式连接或排序。
MultiPoint示例
在世界地图上,MultiPoint可以代表岛链。
在城市地图上,MultiPoint可以表示售票处的出口。
MultiPoint属性
MultiPoint是0维几何对象。
如果没有两个Point是相同的(具有等同的坐标值),MultiPoint是简单的。
MultiPoint的边界为空集合。
(以上的解释透露出浓浓官方的味道,它的确是官方的解释)
这个解释,我看的云里雾里,不管解释的多么全面以及抽象。MultiPoint()函数中肯定是需要数字的!
原理解析:
由于需要数字,那好吧。GeometryCollection的套路拿来,OK!稳定报错。
3、polygon()
select * from test where id=1 and polygon((select * from(select * from(select user())a)b));

函数解释:
Polygon是代表多边几何对象的平面Surface。它由单个外部边界以及0或多个内部边界定义,其中,每个内部边界定义为Polygon中的1个孔。
Polygon示例
在地区地图上,Polygon对象可表示森林、区等。
Polygon声明
Polygon的边界由一组构成其外部边界和比内部边界的LinearRing归向集合构成(即,简单且封闭的LineString对象)。
Polygon没有交叉的环。Polygon边界中的环可能会在Point处相交,但仅以切线方式相交。
Polygon没有线、尖峰或穿孔。
Polygon有由连接点集合构成的内部。
Polygon可能包含孔。对于具有孔的Polygon,其外部不连接。每个孔定义了连接的外部部件。
前述声明使得Polygon成为简单的几何对象。
(不好意思,这块我得继续使用官方解释,)
原理解释:
Polygon() 这货真不好解释,空间几何总是比较抽象的一种。将几何分成区域,并且连接和交叉(个人是这么理解的)。只要知道这函数也是需要数字,大概就可以报错了,这样的概念。
空间几何,非常的抽象,理解有难度的。附上官方文档。
http://www.mysqlab.net/docs/view/refman-5.1-zh/chapter/spatial-extensions-in-mysql.html
这回就到这里,记得关注。
十种MYSQL显错注入原理讲解(二)的更多相关文章
- 十种MYSQL显错注入原理讲解(一)
开篇我要说下,在<代码审计:企业级Web代码安全架构>这本书中讲十种MYSQL显错注入,讲的很清楚. 感兴趣请去读完,若处于某种原因没读还想了解,那请继续往下. 1.count,rand, ...
- 十种MYSQL显错注入原理讲解(三)
这回间隔时间有点长了,年前年后忙的头晕眼花,外加大病.下面我继续讲解. 1.multipolygon() and multipolygon((select * from(select * from(s ...
- Mysql报错注入原理分析(count()、rand()、group by)
Mysql报错注入原理分析(count().rand().group by) 0x00 疑问 一直在用mysql数据库报错注入方法,但为何会报错? 百度谷歌知乎了一番,发现大家都是把官网的结论发一下截 ...
- ref:学习笔记 UpdateXml() MYSQL显错注入
ref:https://www.cnblogs.com/MiWhite/p/6228491.html 学习笔记 UpdateXml() MYSQL显错注入 在学习之前,需要先了解 UpdateXml( ...
- 学习笔记 UpdateXml() MYSQL显错注入
在学习之前,需要先了解 UpdateXml() . UPDATEXML (XML_document, XPath_string, new_value); 第一个参数:XML_document是Stri ...
- 十种MySQL报错注入
1.floor() select * from test where id=1 and (select 1 from (select count(*),concat(user(),floor(rand ...
- sql注入--双查询报错注入原理探索
目录 双查询报错注入原理探索 part 1 场景复现 part 2 形成原因 part 3 报错原理 part 4 探索小结 双查询报错注入原理探索 上一篇讲了双查询报错查询注入,后又参考了一些博客, ...
- SQL注入之Mysql报错注入
--志向和热爱是伟大行为的双翼. 昨天偷懒了没学什么东西,先自我反省一下 - -. 今天认真的学习了一下Mysql报错注入利用方法及原理,好久之前就像认真的学一下这个了,是在上海市大学生网络安全大赛中 ...
- sql注入 --显错注入
前提知识 数据库:就是将大量数据把保存起来,通过计算机加工而成的可以高效访问数据库的数据集合数据库结构:库:就是一堆表组成的数据集合表:类似 Excel,由行和列组成的二维表字段:表中的列称为字段记录 ...
随机推荐
- 网站的SEO以及它和站长工具的之间秘密
博客迁移没有注意 URL 地址的变化,导致百度和 google 这两只爬虫引擎短时间内找不到路.近段时间研究了下国内最大搜索引擎百度和国际最大搜索引擎google的站长工具,说下感受. 百度的站长工具 ...
- .NET Web开发技术简单整理
在最初学习一些编程语言.一些编程技术的时候,做的更多的是如何使用该技术,如何更好的使用该技术解决问题,而没有去关注它的相关性.关注它的理论支持,这种学习技术的方式是短平快.其实工作中有时候也是这样,公 ...
- mysql sleep进程过多,应用级配置
<property name="hibernateProperties"> <props> <prop key="hibernate.dia ...
- C#非常重要基础之多态
前几天看了一位同志的博客,写的是关于他自己去支付宝面试的经历.过程大体是这样的:问答的时候,前面部分,作者都应答如流,说起自己经验如何之丰富,最后面试官问了作者一个问题:请简述多态的概念和作用.结果这 ...
- GIT服务器的四种协议
本地协议 最基本的就是_本地协议(Local protocol)_,所谓的远程仓库在该协议中的表示,就是硬盘上的另一个目录.这常见于团队每一个成员都对一个共享的文件系统(例如 NFS)拥有访问权,或者 ...
- Spark 生态系统组件
摘要: 随着大数据技术的发展,实时流计算.机器学习.图计算等领域成为较热的研究方向,而Spark作为大数据处理的“利器”有着较为成熟的生态圈,能够一站式解决类似场景的问题.那你知道Spark生态系统有 ...
- PDO概念 分析 练习
PDO 翻译过来叫做数据访问抽象层 它是一个数据访问的层面,实际上是一个类,也就是说所有操作数据库的代码,都是通过这个层面完成的 该图好理解大概就是这样一种模式 现在考虑的是能不能使用同一个类,上层代 ...
- 04. Web大前端时代之:HTML5+CSS3入门系列~HTML5 表单
Web大前端时代之:HTML5+CSS3入门系列:http://www.cnblogs.com/dunitian/p/5121725.html 一.input新增类型: 1.tel:输入类型用于应该包 ...
- PHP资源列表
一个PHP资源列表,内容包括:库.框架.模板.安全.代码分析.日志.第三方库.配置工具.Web 工具.书籍.电子书.经典博文等等. 初始翻译信息来自:<推荐!国外程序员整理的 PHP 资源大全& ...
- [摘录]第三部分 IBM文化(1)
第二十章 论公司文化如果是在20世纪90年代初期,当一个人看见或者听到“IBM”时,他会联想到什么呢?或许是“大计算机”.“个人电脑”或者“ThinkPads”.但是,他们同时也必然会想到“大公司”. ...