本来正在苦恼于怎么一个洞都没发现,挖不出来就只能说系统安全了,但是我要滚蛋了呀。话刚说完,咦,好像发现了个注入,单引号能实现完美闭合:
难道要舒服起来了吗?太好了,刚说完就被拦了,淦:
重新构造
不过这里是and被检测了,重新构造下语句,这不就好起来了。在这里的|| ,就是或者的意思,等同于or,因为or还有and没法使用会被拦截:
'||1/1||'
基于已经构造出的语句,测试判断长度的语句。这里为什么用减号不用等于号呢?问得好,因为等于号也不能用,会被拦截:
'||1/(length(123)-3)||'
接下来,尝试获取库名之类的长度,但是全部GG,函数全部用不了啊,完犊子啦:
事情已经到了这一步了,是一定要想办法搞点东西出来交差的。那我只能换到小路走了,获取用户名、数据库、版本的函数全用不了的话,那我就获取你的路径:
'||1/(length(@@datadir)-300)||'
这不就有了吗,你认不认是你的事,我快要可以交差咯:
这下又坏了,但是问题不大,应该又是逗号被干掉了。我们可以用from for来代替逗号,直接没毛病:
这不就好起来了,语句是这样的:
'||1/(ord(substr(@@datadir+from+1+for+1))-300)||'
梭哈,成功爆破出路径,管你认不认我直接写,哈哈哈哈哈哈,886:
我反正是能交差了,我不管咯~
原文始发于微信公众号(犀利猪安全):对不起了系统,为了交差,我只能转走小道进行SQL注入了
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论