Как авторизоваться в админке без пароля?
Если вы потеряли пароль от админки Битрикс или вам дали проект, доступ к которому давно утерян, то не стоит отчаиваться. Помимо способа Забыли пароль есть еще один быстрый способ, для которого понадобится доступ к сайту по SSH или FTP.
Восстановление
Для начала создадим в корне сайта PHP-файл с сложным названием, о котором никто не сможет догадаться, например, jd2k8pp9.php
В качестве содержимого сайта вставляем следующий код:
Примечания к коду:
- Пользователь с – это администратор сайта, права которого нельзя изменить в Битриксе. Поэтому, авторизовавшись под этим пользователем, вы сможете сменить от него пароль или другого пользователя.
- В коде используется более защищенный вариант с GET-параметром auth=Y, на всякий случай.
- После авторизации этот опасный файл удалится с сервера, а зашедший пользователь переместится на главную страницу
Создав файл на сервере, в браузерной строке ввода адреса вводим путь к нашему файлу: http://ваш_сайт/jd2k8pp9.php?auth=Y и заходим по нему.
В итоге вы авторизуетесь под администратором сайта и будете перемещены на главную страницу, а файл будет удален с сервера.
Обязательно проверьте, что после успешной процедуры авторизации файл был удален.
Имейте в виду
- Данный скрипт очень опасен в плане безопасности. Поэтому после его использования необходимо проверить, что файл был удален. В некоторых случаях unlink может быть отключен на сервере и придется удалять файл вручную.
- Ни в коем случае не записывайте данный файл в git и не оставляйте на проекте, так как злоумышленник сможет попасть на сайт и наломать дров.
- Данный способ подходит как для авторизации в Битрикс, так и в Битрикс24 коробочной версии.
Заключение
Таким простым способом вы сможете попасть в админку сайта, имея доступ только к серверу или хостингу. Пожалуйста, не пользуйтесь данным способом не во благо и без разрешения владельца сайта.
Новые записи
- Как авторизоваться в админке без пароля?
- Аудит сайта на Битрикс. Часть 2. Проверка системы
- Как снять бекап базы в Битрикс?
- Подробная статья про функции отладки кода в Битрикс
- Аудит сайта на Битрикс. Часть 1. Зачем нужен аудит сайта?
Авторизация под админом без логина и пароля в 1С-Битрикс
А теперь, если интересна теория. Наткнулся на днях в документации Bitrix’a на интересную (как мне показалось) функцию.
bool CUser::Authorize( int user_id )
Функция непосредственно осуществляет процесс авторизации пользователя. Инициализирует необходимые сессионные переменные и переменные объекта класса CUser. Если авторизация успешна, то возвращает «true», иначе — «false» ( документация ).
А вот, что интересно: функция принимает только ID пользователя. Проверка логина/пароля (видимо) по задумке разработчиков ложится на web-developer’ов. В отличии, например, от CUser::Login, которая перед авторизацией проверяет и логин, и пароль.
mixed CUser::Login( string login, string password, string set_auth_cookie = "N", string convert_password_to_md5 = "Y" )
Функция проверяет логин и пароль и если они корректные, то авторизует пользователя. Если авторизация успешная, то возвращает «true», иначе если логин и пароль некорректные, то возвращает массив с ошибкой для функции ShowMessage ( документация ).
В Битриксе все админы по умолчанию попадают в группу с Зная это получаем список администраторов сайта:
$filterUsers = array( "GROUPS_ID" => array(1), ); $paramsUsers = array( "FIELDS" => array( "ID", "LOGIN", "PASSWORD", "NAME", "LAST_NAME", "EMAIL", "LAST_LOGIN", "DATE_REGISTER"), ); $dbUsers = CUser::GetList(($by='id'), ($order='asc'), $filterUsers, $paramsUsers);
Авторизуем при нажатии.
if ($_GET[«id»])
И пробуем скрипт:
После нажатия на ссылку с логином:
В заключение весь код страницы.
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); $APPLICATION->SetTitle("Песочница"); if(!CModule::IncludeModule("iblock")) < $this->AbortResultCache(); ShowError("IBLOCK_MODULE_NOT_INSTALLED"); return false; > $users = array(); $pageUrl = $_SERVER['REQUEST_URI']; $filterUsers = array( "GROUPS_ID" => array(1), ); $paramsUsers = array( "FIELDS" => array( "ID", "LOGIN", "PASSWORD", "NAME", "LAST_NAME", "EMAIL", "LAST_LOGIN", "DATE_REGISTER", ), ); $dbUsers = CUser::GetList(($by='id'), ($order='asc'), $filterUsers, $paramsUsers); echo "
" . $arUsers["ID"] . " | " . $arUsers["LOGIN"] . " | " . $arUsers["NAME"] . " | " . $arUsers["LAST_NAME"] . " | " . $arUsers["EMAIL"] . " | " . $arUsers["LAST_LOGIN"] . " | " . $arUsers["DATE_REGISTER"] . " |
Обновлено: код не сработает в новых версиях Bitrix. Для авторизации можно использовать:
global $USER; $USER->Authorize(1);
Авторизация в админке Битрикс без пароля
require($_SERVER[«DOCUMENT_ROOT»] . «/bitrix/header.php»);
global $USER;
Authorize(1);
@unlink(__FILE__);
LocalRedirect(«/bitrix/admin/»);
require($_SERVER[«DOCUMENT_ROOT»].»/bitrix/footer.php»);
?>
Возможна и немного более сложная реализация
$rs = $USER->GetList(($by=»ID»), ($order=»ASC»), array(«GROUPS_ID» => array(1)));
if($arUser = $rs->Fetch())
$USER->Authorize($arUser[‘ID’]);
Зайти в админку bitrix если забыли логин или пароль
Сохраню код на всякий случай иногда все же требуется зайти в Bitrix, как отвратительно бы это не звучало 😀
Так же как и в modx в корне сайта создаем файл auth.php и помещаем в него следующий код:
Authorize(1); @unlink(__FILE__); LocalRedirect("/bitrix/admin/");
Переходим по адресу http://site.name/auth.php и вуаля мы в админке, скрипт после запуска удалит сам себя.
Комментарии ( )
Написать комментарий
Авторизация
Есть вопрос или предложение пиши в Telegram
MTProto прokси для Telegram
Прямой эфир
Басыр 25 октября 2023, 09:07
Не работает веб версия Телеграм, что делать?
Diego mont 25 мая 2023, 07:04
Полезные боты в Telegram
cloudsv 24 апреля 2023, 17:56
Обновление Scala Rider G4
Макс 28 марта 2023, 14:22
Решение проблем со шрифтом helvetica
cloudsv 14 декабря 2022, 14:31
Подключение к VPN внутри Docker контейнера
cloudsv 12 ноября 2022, 19:16
Установка и настройка minidlna
cloudsv 03 ноября 2022, 03:42
Настройка прокси mtproto для Telegram
cloudsv 12 мая 2022, 18:48
Jenkins запуск из pipeline дочерней job и получение данных из него
cloudsv 03 января 2022, 10:50
Let’s Encrypt это легко и просто
ataca 30 октября 2021, 13:52
После обновления Arch’a, с chromium и firefox начались проблемы
Игорь 22 января 2021, 18:37
Прикрепить файл из веб-формы к письму в Bitrix
cloudsv 15 ноября 2020, 23:49
Запускаем Battle.net Hearthstone в wine staging на Arch’e
cloudsv 10 сентября 2020, 13:17
MySQL Workbench падает при подключении
cloudsv 05 августа 2020, 11:57
Мне вчера стукнуло 34
cloudsv 14 июля 2020, 01:40
Пробрасываем видеокарту в виртуальную машину, делаем игровую систему.
Андрей 10 мая 2020, 21:11
Патчим conky, исправляем баг работы с apcupsd
vasya 19 апреля 2020, 10:46
Локальное зеркало обновлений Dr.web
cloudsv 03 ноября 2019, 16:35
MODx чиним не работающую авторизацию в HybridAuth Vkontakte