码迷,mamicode.com
首页 > 数据库 > 详细

【sqli-labs】 less24 POST- Second Order Injections *Real treat* -Stored Injections (二次注入)

时间:2018-01-26 22:41:54      阅读:212      评论:0      收藏:0      [点我收藏+]

标签:name   登陆   inject   cond   set   成功   修改密码   ima   参数   

技术分享图片

简单登陆浏览一遍后,发现是一个登陆注册修改密码的应用

审查一下代码

登陆页面的username,password使用了转义

技术分享图片

注册页面的参数也进行了转义处理

技术分享图片

但是在修改password的页面,直接从session中获取了username

这样就有了一个问题,username是在注册时被创建的,虽然进行了转义,但是没有做输入字符的限制

技术分享图片

看一下修改密码的sql语句

$sql = "UPDATE users SET PASSWORD=‘$pass‘ where username=‘$username‘ and password=‘$curr_pass‘ ";

如果username=admin‘#就会构成,#号后面的变成了注释,那么我们就修改了admin的密码

UPDATE users SET PASSWORD=$pass where username=admin‘# and password=$curr_pass

来测试一下

技术分享图片

成功注册,数据库中也添加了对应的数据

技术分享图片

技术分享图片

也可以正常的登陆

技术分享图片

然后我们来修改密码

技术分享图片

为了方便观察,将sql语句输出一下

技术分享图片

技术分享图片

 提示密码修改成功

技术分享图片

这样我们就将admin的密码修改为123456

可以在数据库中确认一下

技术分享图片

 

【sqli-labs】 less24 POST- Second Order Injections *Real treat* -Stored Injections (二次注入)

标签:name   登陆   inject   cond   set   成功   修改密码   ima   参数   

原文地址:https://www.cnblogs.com/superkrissV/p/8361642.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!