Posted 9 апреля, 20231 yr comment_191957 Бывают ситуации когда забыл пароль от ACP форума, или банально ввел символ случайно и тебе не дает залогиниться, но при этом есть доступ к FTP или Панели Управления веб сервером. В следующем коде используются функции для смены пароля предоставляемые самим ips. Перед началом важно: Вы не должны хранить этот файл у себя на сервере! Оставляя этот файл у себя на сервере, ВЫ подвергаете свое сообщество КРИТИЧЕСКОЙ опасности После смены пароля НЕМЕДЛЕННО удалите файл с сервера и смените пароль через ACP Что нужно сделать для смены пароля: Создаем файл с нужным названием и расширением .php Например: backdoor.php Открываем файл и вставляем в него код (ПРЕДОСТАВЛЕН В САМОМ КОНЦЕ СООБЩЕНИЯ) Сохраняем файл Загружаем созданный файл (например через FTP или менеджер файлов Панели Управления Веб сервером) в корневую директорию форума (там где у вас находится файл init.php) В адресной строке набираем: https://название_сайта.com/название_файла.php?id=ид_пользователя&pass=новый_пароль Например: https://site.com/backdoor.php?id=1&pass=123 Где взять ид_пользователя? Например перейти в профиль пользователя на форуме, в адресной строке будет например: https://site.com/profile/1-admin/ (Где 1 - это ид_пользователя) Переходим Если все прошло успешно вы увидите примерно следующую надпись: Password for user [ member_id: 1 member_name: ADMIN ] changed! Код: <?php require_once 'init.php'; if ( \IPS\Request::i()->id AND \IPS\Request::i()->pass ) { try { $id = intval( \IPS\Request::i()->id ); $newPass = \IPS\Request::i()->pass; $member = \IPS\Member::load( $id ); $changed = $member->changePassword( $newPass ); if ( !$changed and \IPS\Login\Handler::findMethod( 'IPS\Login\Handler\Standard' ) ) { $member->setLocalPassword( $newPass ); $member->save(); } $member->invalidateSessionsAndLogins( TRUE, \IPS\Session::i()->id ); $message = 'Password for user: [ member_id: ' . $id . ' member_name: ' . $member->name . ' ] changed!'; } catch ( \OutOfRangeException $e ) { $message = 'Failed to load user!'; } } else { $message = 'No data'; } echo $message; exit;
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.