突然想起来我还有一个站点好久没有打理了,那个站点也是使用的typecho程序,趁着有空,就打算把那个域名改一下做成一个浏览器起始页来使用,但是当我登录后台。。。突然发现忘记了密码,于是我搜索了一下typecho忘记密码如果重置,大部分的教程都是关于使用md5来修改密码的,于是我在本地搭建了一个typecho环境,测试了一下。

查看加密方式

首先登录一下数据库,看一下用户名和加密之后的密码

image-20201028210223706

打开数据库,找到存放用户数据的表,然后看一下用户名是admin,然后密码是巴拉巴拉一大串,哎貌似不对,MD5加密之后好像不是这个样子的啊(这个密码是测试环境的密码123456加密后的)

image-20201028210359008

然后我特意打开了我的MD5加密工具,确实不对哈,

image-20201028210603615

重置方式

于是我又搜索一番,不过这次加上了typecho的版本号,在众多教程里面发现了一个宝藏文章:

https://www.ghl.name/archives/typecho-password-reset.html

原来Typecho 1.1版本之后,用户密码验证采用了OpenWall的PHPass来加密用户密码,而不是MD5

然后通过此博主的方法,我们使用Typecho目录下var目录中的PasswordHash.php文件来加密123456这个密码,然后对比一下和数据库中的是不是同一个,如果是相同的,那么证明这个方法可行,我们就可以使用123456加密后的密码来替换数据库中的密码,然后我们就可以使用123456这个密码来登录我们的后台了。

首先,我们在typecho的根目录创建一个test.php文件,文件里面写上以下的内容:

<?php
require 'var/PasswordHash.php';
$a = new PasswordHash(8,true);
echo $a->HashPassword(1234567);
?>

然后访问域名/test.php,下面这一串就是使用typecho密码加密生成的密码

image-20201028211206971

然后将这一串数字替换数据库原本的数据(记得备份之前的)

image-20201028211521491

然后执行。

执行之后,我们打开admin开始登录,用户名为admin,密码为修改之后的1234567,然后点击登录。

image-20201028211650247

登录成功,然后我们就可以来到个人信息这里把弱密码修改成强密码啦!

image-20201028211748887

至此,非常感谢GHL的文章。

顺便观赏一下我的起始页吧:https://www.170601.xyz/

版权声明
本文作者珂泽
文章来源风也雨忆笙
原文链接
转载说明非特殊说明文章均为原创,页脚已标识是否允许转载,转载请注明出处!感谢您的支持!
最后修改:2020 年 10 月 28 日 09 : 23 PM
如果您觉得我的文章有帮助,请随意赞赏!