Данный материал предоставлен сайтом ProWebber.cc исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Скачать бесплатно Уязвимость во всех версиях DLE.
Скачать бесплатно Уязвимость во всех версиях DLE.
Проблема: Недостаточная фильтрация входящих данных в регистрации.
Ошибка в версии: все версии
Степень опасности: Низкая
Баг нашёл: Lion__
Celsoft, если уже будешь выкладывать в багфиксах, то укажи хотя бы автора найденного бага
Баг позволяет узнать префикс к бд.
Как юзать:
1) Переходим по ссылке ?do=register
2) Вводим логин, пароль, капчу, email более 50 символов.
Пример email:
3) Нажимаем зарегистрироваться
4) Повторяем операцию с 1 по 3 шаги.
5) Получаем ошибку о дубликате поля. В ней смотрим префикс к бд. :biggrin:
Как это работает? Дело в том что поле email стоит ограничение в 50 символов, таким образом остальное всё обрезается, при первой регистрации в бд попало значение
После второй регистрации идёт поиск поля email со значением
Которого нет, отправляется запрос, получаем ошибку
Исправить:
Найти в engine/modules/register.php
Заменить на:
Ошибка в версии: все версии
Степень опасности: Низкая
Баг нашёл: Lion__
Celsoft, если уже будешь выкладывать в багфиксах, то укажи хотя бы автора найденного бага
Баг позволяет узнать префикс к бд.
Как юзать:
1) Переходим по ссылке ?do=register
2) Вводим логин, пароль, капчу, email более 50 символов.
Пример email:
qawsedrftgsqawsedrftgqawsedrftgqawsedrftgqawsedrftg@qawsedrftg.qawsedrftg
3) Нажимаем зарегистрироваться
4) Повторяем операцию с 1 по 3 шаги.
5) Получаем ошибку о дубликате поля. В ней смотрим префикс к бд. :biggrin:
Как это работает? Дело в том что поле email стоит ограничение в 50 символов, таким образом остальное всё обрезается, при первой регистрации в бд попало значение
qawsedrftgsqawsedrftgqawsedrftgqawsedrftgqawsedrft
После второй регистрации идёт поиск поля email со значением
qawsedrftgsqawsedrftgqawsedrftgqawsedrftgqawsedrftg@qawsedrftg.qawsedrftg
Которого нет, отправляется запрос, получаем ошибку
Исправить:
Найти в engine/modules/register.php
$email = $db->safesql( $parse->process( $_POST['email'] ) );
Заменить на:
$email = $db->safesql( $parse->process( substr($_POST['email'], 0,50) ) );
Предыдущая Следующая