ecshop教程:解决会员找回密码无法使用的BUG!使用ecshop最新版会员 找回密码并重置新密码后无法使用新密码登陆。
分析结果:
ecshop密码原则上使用一次性md5加密,当注册新用户成功后观察数据库密码字段,确实为md5值。
而当用户第一次登陆,ecshop做了一次非常牛逼的动作,判断用户数据行是否存在ec_salt
, 如果不存在则生成一个ec_salt
并重写密码!
就是说,你注册时写入数据库的密码和登陆后的密码值发生了改变。
以后再次登陆时,使用ec_salt
值与post的密码进行二次md5加密进行验证
之处在于,当你使用密码找回时,其只是简单降密码字段重置为一次性md5, 注意,此时ec_salt已存在值
用户使用新密码,旧的ec_salt
(salt加密方式)进行登陆,wtf,当然不能登陆
解决办法:
本没打算细看其程序底层,仅仅在includes/modules/integrates/ecshop.php line 170行,增加了
ec_salt=''
强制在其登陆时重置ec_salt
.即可
1.本站大部分内容均收集于网络!若内容若侵犯到您的权益,请发送邮件至:duhaomu@163.com,我们将第一时间处理!
2.资源所需价格并非资源售卖价格,是收集、整理、编辑详情以及本站运营的适当补贴,并且本站不提供任何免费技术支持。
3.所有资源仅限于参考和学习,版权归原作者所有,更多请阅读网站声明。