SQLI-libs 9-14

前几天发了个1-8关的过关记录,想了下如果全写到一篇里太多了,第9关从这篇开始更新

mark一篇文章有关sql中的常用语法

第九关&第十关

有点意思,这题题目是时间盲注,因为无论是否输入正确的id,都会回显“you are in”。
百度了一下时间盲注,基本原理大概就是利用sleep()函数,感觉和布尔盲注的区别就是,布尔盲注是页面回显有正确和错误,然而时间盲注只有一种回显,但是可以将bool值转化为是否延迟,如果true就执行sleep()函数,然后根据请求返回的时间来判断结果。
可能用到的函数:

sleep()            //延迟,参数为时间,单位为秒,函数正常执行会返回0,被中断返回1
if(exp1,exp2,exp3) //如果exp1为true,则执行并返回exp2,否则执行并返回exp3

可参考:SQL基于时间的盲注过程

第十一关

这题是一个登录页面,用post方法传递参数unamepasswd,本来以为直接用--注释掉后面的语句就可以登录,但是自己在MySQL中试了很多次,发现很多很迷的地方,总结如下

关于注释符

mysql的注释符

-- 注释(注意'--'后面要有空格)
#注释
//注释
/*注释*/

这一题经过测试如果只使用--注释而不闭合后面的单引号是会报错的,必须闭合所有的单引号而且使sql语句不能有语法错误;但是如果使用#作为注释符,就不用考虑闭合后面的单引号
然后就是正常的注入流程了,经过测试可以联合查询暴库
可参考sqli-lab教程——1-35通关(实际上并没有到35关…)

PHP中@的作用:at符号(@)在PHP中用作错误控制操作符。当表达式附加@符号时,将忽略该表达式可能生成的错误消息。如果启用了track_errors功能,则表达式生成的错误消息将保存在变量$php_errormsg中。每个错误都会覆盖此变量。

第十二关

和第十一关基本一样,根据报错信息推测出闭合方式是"),然后剩下还是联合查询暴库

第十三关

单引号报错之后可以推测闭合方式是'),注释方式可使用#,然后返回页面只有正确和错误,应该是bool盲注了,不知道问什么,用Python脚本发送post请求会不成功,连用hackbar进行postdata都不能成功,只能手工注…

第十四关

闭合方式",其他和第十三关相同

第十五关

未完不续了,csdn不好用,不再更新…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值