如何直接在PhpBB3 SQL数据库中更改密码?

我从一个无法parsing的前一个pipe理员那里inheritance了一个PhpBB3安装,他没有给我任何密码,或者任何机制来检索它。

它运行在一个MySQL数据库上,我已经用完全的权限login了,以便更改pipe理员密码。 不幸的是,PhpBB3显然使用了我不熟悉的复杂的多阶段腌制哈希技术。 鉴于完全访问数据库,我如何生成一个有效的密码哈希replace旧的?

我尝试了一个普通用户的已知密码的简单MD5,它不符合数据库条目。

通过数据库重设pipe理员密码的任何其他方式也是有帮助的,只要它能工作!

运行mysql并select相关数据库,然后使用MD5函数来设置您想要更改的帐户的密码。

例如,如果您的phpbb3数据库被称为Yourphpbb3db和用户表是phpbb_users然后

mysql -u root -p 

input您的密码

 mysql> show databases; mysql> use database Yourphpbb3db; Database changed mysql> UPDATE phpbb_users SET user_password = MD5('YourPassword') WHERE username='YourAdminName'; 

在其他地方find答案(信用:joshhighland.com)

手动运行更新,但使用以下示例散列之一;

哈希:e10adc3949ba59abbe56e057f20f883e密码:123456

哈希:$ H $ 9Ae3Uk.ECdWW5ya13M4ErWhr4c.761 /密码:密码

例如mysql> update phpbb_users set user_password ='e10adc3949ba59abbe56e057f20f883e'where username ='YourUserName';

…然后login并将密码更改为您将会记得的一个:)

我只是略微熟悉phpBB3的复杂性,但是我会尝试从另一个用户帐户(其密码已知)(一个用于此目的的一次性帐户或其他)中复制散列和盐。 当然,先备份当前的散列和salt,或者可能是整个DB …如果这不起作用,我会尝试提升另一个帐户的权限。 我完全不熟悉phpBB3中的权限系统,但是您可以尝试复制当前pipe理员的权限表条目以获取新帐户,或者仅使用已知帐户replacepipe理员的用户标识。 如果可能的话,我会在testing系统上完成所有这些工作。