就今天晚上一个小插曲,瞬间感觉我被嘲讽了。
SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊。。。好歹我也是上打过网络安全攻防平台,注入卡在第七关,我下玩过 web_for_pentester ,web渗透靶机2pentester_II_i386,这些靶场的小菜比。。。
好了,不扯了,现在开始扯这个第二关。
原本想着明天闲着没事了玩玩吧,后来,我今天也是闲的没事,我就继续开始玩玩吧。
结果玩了一半,,,第二关一个限制都没有。。。。
想了想,这个 Sqli labs系列 ,我除了第一关和第二关详细的全过程弄完,剩下的,我只记录我在玩的时候绕过的技巧吧,毕竟数据库都一样,除了绕过的姿势不一样,其他的都一样,如果在下面的关卡中,遇到不一样的了,我会再详细的写写。
对了上面提到的那两个镜像靶场,我也会记录玩的过程的,等啥时闲了就搞。
好了,不扯了,开始正文了,不过很平常,就当做我一开始总结的 mysql 注入的详细截图吧。。。
首先,设置注入环境。
然后, and 1=1 判断。
返回正常,再开始 and 1=2 进行判断。
返回错误,说明可以进行显错注入。
然后,我开始 order by 查询,我一开始都是5,5的加的。
显示错误,我开始往回减,直到 order by 3 ,才显示正确。
这个第二关还是不错的,还支持 order by 查询,不像第一关,只能联合查。
开始联合构造语句。
让其报错。
因为咱对这源码知根知底,所以就只差用户和当前库。
然后开始猜解库名下的所有表名。
爆出来了。。。
我们继续选择 users 这个表名。
开始爆。。。
,然后选择 user ,password。
我的擦,报错了。。。。然后我好好的分析了下。。
我去!表名错误,还跨库了。。。
最后,成功的出来数据了。
下面贴一下,第二关的源码。
好了,这第二关就这样结束了,太简单了。。。
总结:
这个系列,我从这关以后,只记录如何绕过了,不再这么详细的讲了,因为后面的步骤都是重复的,我以后只讲前面的。恩,就这样了。