SQL Server的WAITFOR DELAY注入

1、waitfor用法介绍

功能:指定触发语句块、存储过程或事务执行的时间、时间间隔或事件。

语法:WAITFOR { DELAY  'time' | TIME  'time' }

参数:

 DELAY:指等过了指定的时间过去后再执行SQL。

 TIME:指等到了指定的时间点后再执行SQL。

 'time':要等待的时间。可以按 datetime 数据可接受的格式指定 time,也可以用局部变量指定此参数。格式为"HH:MM:SS",不支持日期,最长可达 24 小时。

2、waitfor 示例
例子1:指定等待1小时2分钟3秒后执行

waitfor delay '01:02:03'
select * from PS_Category

例子2:指定10点1分2秒时执行

waitfor time '10:01:02'
select * from PS_Category

3、SQL Server的WAITFOR DELAY注入

waitfor delay用来指定等待的时间。如果将该语句成功注入后,会造成数据库返回记录和Web请求也会响应延迟特定的时间。由于该语句不涉及条件判断等情况,所以容易注入成功。根据Web请求是否有延迟,渗透测试人员就可以判断网站是否存在注入漏洞。同时,由于该语句并不返回特定内容,所以它也是盲注的重要检测方法。

例如:

http://www.my.com/find.aspx?ID=100 WAITFOR DELAY '0:0:10'--

其中,WAITFOR DELAY '0:0:10'--  表示延迟10秒,再继续执行。这样网页响应会延迟10秒。

4、注意

由于WAITFOR不是SQL的标准语句,所以它只适用于SQL Server数据库。

—— 完 ——
相关推荐
评论

立 为 非 似

中 谁 昨 此

宵 风 夜 星

。 露 , 辰

文章点击榜

细 无 轻 自

如 边 似 在

愁 丝 梦 飞

。 雨 , 花