当前位置:首页 > CMS教程 > phpcms > 列表

phpcms重设管理员密码

发布:smiling 来源: PHP粉丝网  添加日期:2014-10-20 21:40:27 浏览: 评论:0 

最近碰到个问题,phpcms管理员的密码丢了,想改数据库找回来,翻了翻数据库发现涉及密码的两个表是xx_member和 xx_member_cathe,(xx是前缀),然后密码是MD5加密的格式,于是乎就想当然的把admin md5加密后替换进去,结果再登录还是提示密码错误,改了几次结果提示5次机会已过,被屏蔽1小时,好崩溃.

到处翻了翻代码发现在admin/login.inc.php里面有屏蔽IP1小时的代码,把下面这行里的3600改成1就行了.

$times->set(‘login’, $PHPCMS['maxiplockedtime']*3600, $PHPCMS['maxloginfailedtimes']);

关于密码,在网上搜了一下,原来phpcms2008采用了会员密钥这么一个概念,其实他就是一个字符串,当会员注册提交后,先将会员密钥和会员的 密码连接起来,然后在md5,而一般的普通系统就是直接给予md5加密,这样别人通过md5直接查询出来的密码和用户本身的密码就对不上号了.从而加大了 密码强度,防止被破解.

方法是先在include/config.inc.php文件里找到PASSWORD_KEY对应的字符串.

例如我的是:define('PASSWORD_KEY', 'jmjt'); //会员密码密钥,为了加强密码强度防止暴力破解,不可更改,然后用notepad建个php文件,代码如下:

  1. <?php 
  2. function password($password
  3. return md5(PASSWORD_KEY.$password); 
  4. }  //phpfensi.com 
  5. echo password(admin); 
  6. ?> 

其中admin即为密码,你可以任意修改,PASSWORD_KEY就是上面找到的字符串.

然后把加密后的字符串复制到表xx_member和xx_member_catche里面密码的字段里,就可以登录了.

Tags: phpcms重设密码 phpcms管理员密码

分享到: