Как изменить пароль непосредственно в базе данных SQL PhpBB3?

Я унаследовал установку PhpBB3 от неконтактируемого предыдущего администратора, который не оставил мне пароль или какой-либо механизм для его восстановления.

Он работает на базе данных MySQL, в которую я вошел с полными привилегиями, чтобы сменить пароль администратора. К сожалению, PhpBB3, по-видимому, использует сложную многоступенчатую технику хеширования с солью, с которой я не знаком. При полном доступе к БД, как сгенерировать действительный хэш пароля для замены старого?

Я попробовал простой MD5 известного пароля обычного пользователя, и он не соответствует записи в БД.

Любой другой способ сброса пароля администратора через БД также полезен, если он работает!

3 ответа

Решение

Запустите mysql и выберите соответствующую базу данных, затем используйте функцию MD5, чтобы установить пароль для учетной записи, которую вы хотите изменить.

Например, если ваша база данных phpbb3 называется Yourphpbb3db, а таблица пользователей - phpbb_users, тогда

mysql -u root -p

введите ваш пароль

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

Ответ найден в другом месте (кредит: joshhighland.com)

запустите обновление вручную, но используйте один из следующих примеров хэшей;

Хеш: e10adc3949ba59abbe56e057f20f883e Пароль: 123456

Хеш: $H$9Ae3Uk.ECdWW5ya13M4ErWhr4c.761/ Пароль: пароль

например, mysql> update phpbb_users set user_password='e10adc3949ba59abbe56e057f20f883e', где username = 'YourUserName';

... затем войдите и измените пароль на тот, который вы запомните потом:)

Я только немного знаком с тонкостями phpBB3, но я бы попробовал скопировать хэш и соль из другой учетной записи пользователя, где известен пароль (одноразовая учетная запись для этой цели или какая-то такая). Конечно, сначала сделайте резервную копию текущего хэша и соли, или, возможно, всей БД... если это не сработает, я бы попытался повысить привилегии другой учетной записи. Я совершенно незнаком с системой привилегий в phpBB3, но вы можете либо попытаться скопировать записи таблицы привилегий текущего администратора для новой учетной записи, либо просто заменить идентификатор пользователя администратора известной учетной записью. Я сделал бы все это на тестовой системе, если это возможно.

Другие вопросы по тегам