查询语句: * from user where User = ‘root’;
如下图7:
图7 这是mysql查询的标准语句了 。
接下来是我们判断注入点时候的 。画风正常的其实都可以理解,
?type=1 and sleep(3)%23。这样相当于是个数字的注入,查询语句中没有用 ’ 或者 "。
看看奇奇怪怪的:
:40659/flag.php?type=1%20and%(3)%27
将他带入查询语句中大概是这样:
* from user where User = ‘root’ and sleep(3)’;
我们执行之后,结果如图8:
图8 他提示我补全这个 ’ ,补全之后会爆错 。
而且其实仔细看会发现,我前面的手动注入的都没有加分号;,也是mysql语句的结束符号然后我就给直接注释掉了后边 。
也就是说当代码中单独出现结束符;的时候,必要要出现注释符,
没有;的时候,也可以出现注释符,
';# ";# ;# # ’ " 都是可以的成功执行sleep(3)的(#记得变%23) 。
但是按照上面的推断 ?type=1 and sleep(3) 应该也是可以的,但是经过测试网页并不会延时响应 。。。
所以在靶场的源码里是不是有一个类似于if的语句,检测我们输入的代码中有没有 分号 ; ,如果没有自动补全 。检测我们的代码中有没有 ’ " ,如果有删除?因为如果mysql语句报错是不会执行sleep()函数的,所以我们可以推断源码中删除了我们输入中会报错的 ’ " ,而在我们没有输入 ;时,他自动帮我们补全了 ;,但是我们要是没有输入这些特定的符号时,他不会执行查询语句或者添加了一些符号让数据库报错?从无法执行语句?(逻辑应该没有出现什么问题,其实给我弄得也有点懵 。。。)
【时间盲注墨者学院SQL注入(手动注入+sqlmap+对于注入语句中的那个 ’】欢迎各位大佬指正文中的不足与错误,或者提出不同的见解,本人菜鸟,还有很多不足,多多见谅!!!!
- 记在墨者学院业务逻辑漏洞靶场实战感受
- 重温一下C#的时间类型,并简单写一个定时器功能
- 超详细 墨者学院-入门级-浏览器信息伪造-小白必看
- 刹车油多长时间更换一次
- 春分是太阳经过赤道时的哪个时间点
- 四六级报名时间
- 蒸馒头时为什么有的会裂 蒸馒头的时间
- 桂林旅游最佳时间 桂林旅游最佳时间?
- 广州三元里皮具批发城 广州三元里皮具批发城营业时间
- 1、获取当前日期和时间