DISCUZ的密码错误问题
作者:BLOG118 发布于:2015-6-4 21:12 Thursday 分类:网站技术
没想到还要再写CMS开发的问题,而且是遇到了非常简单的问题,却费了好大劲才解决。
自己做的一个论坛,有会员忘了密码,然后还是省去废话,直接列过程。
A 先从后台会员管理处改,失败,没有修改密码的功能;
B 我记得UCENTER应该可以修改,结果总管理密码错误,但是我从未设置过啊?以前肯定记得,不过忘了,这样也不行;
C 开数据库!最简单。找到会员表,修改成admin,登录错误;难道是5位数密码不行?改成admin888还是不行;
D 我印象中的确有个什么数值来着,是salt,但是我记得那是PHPCMSV9里的玩意儿啊?所以多次尝试,结果超过了5次,被停15分钟;
E 不可能真的等15分钟;找到DISCUZ里关于登录15分钟限制的地方,即900秒那里修改,根本无效!!!坑人!!!在这里反复纠结了多次,也无效,删除了FTP缓存也无效;
F 因为反复修改表里的密码,不小心把自己的主管理密码也给改的不能登录了;
G 我把自己的MD5密码复制到那个会员那里,本来以为能成功,结果还是不行;
H 用密码段,搜索,找到了UCENTER表里的salt,原来也有这个!!!相信是V9向他们学的;
I 同步修改了MD5密码,还是不行!
J DISCUZ有工具箱的,但是我不抱希望,因为前段时间才试过,网上的DZ工具箱已经N久没更新了,几乎都不能用;
K 经过最后的测试修改,登录,仍然全面失败;
L 从本地安装了另一套新的DISCUZ系统,获取了MD5;
M 把本地的MD5和salt复制过去,成功了!!!
结论:
1 DISCUZ数据里的MD5是经过二次加密的,网上的应该不行;
2 普通会员表和UCENTER里两个MD5密码是不一样的,跟salt对应的,而且,每次都会变化;
3 想通过复制密码和salt的方式登录,基本不可能,但这方法在phpcmsV9里是可行的;
4 新装另一个DISCUZ,不需要理会用户名,只要把密码设置好就行,然后分别复制会员表和UCENTER表里的md5以及salt数据就行了;
发表评论: