十七关有点特别,让我重置密码,但是注入的原理还是一样的。
在输入用户名的地方,我尝试了单引号,双引号,不输入,等测试去判断闭合方式,最终没有得到想要的结果
后来在输入密码的地方尝试了同样的操作,最终结果都是一样。。
实在没有了头绪我选择了代码审计!
在代码中可以看到,先是处理账号,如果账号存在,则才能重置密码,也就是说,如果账号不存在,输入密码也是没用的
在这里我们可以看到,后台接收到uname参数时,调用了一个函数进行过滤了用户输入的内容。但是没有对密码进行过滤,所以密码框才是真正的注入点
如果输入内容非空,则调用substr()函数,作用的只取前十五位字符。这样导致sql注入会变得很难,毕竟只能输入十五个有效字符。密码才是真正注入点。
由图可知,闭合方式是单引号,那么我们可以尝试一下注入了。
使用报错注入注入成功了!!!
其他操作数据库的操作就不展示了。
sqli-labs靶场第十七关
最新推荐文章于 2024-06-01 15:23:48 发布