网站建设

phpcms v9忘记后台密码怎么办?

发表时间:2013-04-18 17:27:40 编辑:admin

 phpcms v9忘记后台密码怎么办?经常在论坛和群里面看到有人把phpcms v9后台的密码给忘记了。
打开v9_admin表然后把密码admin888进行md5加密后写入password字段之后重新登录却提示密码错误!这到底是怎么回事呢?
其实phpcms v9的jiami加密不仅仅是调用md5加密,我们打开phpcms/libs/functions/global.func.php查找password函数

/**
 * 对用户的密码进行加密
 * @param $password
 * @param $encrypt //传入加密串,在修改密码时做认证
 * @return array/password
 */
function password($password, $encrypt='') {
	$pwd = array();
	$pwd['encrypt'] =  $encrypt ? $encrypt : create_randomstr();
	$pwd['password'] = md5(md5(trim($password)).$pwd['encrypt']);
	return $encrypt ? $pwd['password'] : $pwd;
}

把传入的密码进行md5加密后再加上随机码然后进行二次md5加密,为什么要加上随机码再加密呢?可能是怕MD5被破解,其实MD5是不可逆的但是有人弄了一个彩虹表来碰撞MD5。。。具体的也不太清楚。。

回到主题,我们打开在phpcms/modules/content/目录下新建mima.php然后写入如下代码:

class mima{
	private $db;
	function __construct() {
		pc_base::load_sys_func('global');
	}
	
	/**
	 * 配置信息
	 */
	public function init() {
		echo password('admin888','b3UzUQ');//第二个参数是admin对于的加密因子
	}
}

输出结果1e4d730f982d02e48b92a6d236e20d59写入到password里面即可