GET注入-盲注

盲注,意味着页面不会显示SQL语句的错误,我们要通过一定的手段来判断构造的注入语句是否正确执行。

有两种方式:布尔型时间型

布尔型是根据页面是否正确显示来判断我们构造的语句是否正确执行,时间型则是根据页面加载时间是否变化来判断的。

相关函数

盲注需要掌握一些MySQL的相关函数:

length(str):

返回str字符串的长度。如执行select

length(database())

则会返回当前数据库名称的长度。

而单独selectdatabase()则回返回当前数据库的名称。

substr(str, pos, len)

从pos位置取出str字符串的len个字符。
如select substring('abcde', 4, 2)则返回de,pos为负则倒数pos个位置,
如select substring('abcde', -4, 2);返回bc。

ASCII(str):

返回字符串str的最左面字符的ASCII代码值。
如果str是空字符串,返回0。如果str是NULL,返回NULL。如select ASCII('a')返回97

将上面几个函数组合一下就有布尔值出现。

如 Select ascii(substr(database(),2,1)) = 101;

当database()即当前数据库的名称中,正数第二个字符为e,则会返回1,当为其他字符时会返回0。

逐级替换2为其他数字,就可以逐字猜数据库名称了。其中的=号还可以换成<或者>。

if ((exp1, exp2, exp3):

为条件判断语句。
当exp1的值为true时候,返回exp2,否则返回exp3。

如  select if ((select database())='secur',sleep(10),null)
即为判断当当前数据库的名字为secur的时候,MySQL会休眠10秒。

补充

MySQL的主要内置表和字段信息:

information_schema 库的 TABLES 表,主要字段分别是:

TABLE_SCHEMA : 数据库名

TABLE_NAME:表名

ASVII对照表

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值