(PT-2013-02) Positive Technologies Security Advisory
Предугадывание ключа сброса пароля администратора в FluxBB
Уязвимое ПО
FluxBB
Версия: 1.5.2 и более ранняя
Ссылка:
http://fluxbb.org/
Рейтинг опасности
Уровень опасности: высокий
Воздействие: предугадывание ключа сброса пароля администратора
Вектор атаки: удаленный
CVSS v2:
Base Score: 9.3
Vector: (AV:N/AC:M/Au:N/C:C/I:C/A:C)
CVE: отсутствует
Описание программы
FluxBB — один из самых быстрых и лёгких форумов с открытым исходным кодом, написан на PHP.
Описание уязвимости
Специалисты компании Positive Technologies обнаружили уязвимость "Предугадывание ключа сброса пароля администратора " в FluxBB.
Уязвимость обнаружена в алгоритме генерации случайных ключей для сброса паролей пользователей. FluxBB генерирует предугадываемые псевдослучайные числа, используя функцию mt_rand:
function random_key($len, $readable = false, $hash = false)
/* ... */
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for ($i = 0; $i < $len; ++$i)
$key .= substr($chars, (mt_rand() % strlen($chars)), 1);
FluxBB также допускает утечку вывода mt_rand через параметр "search_id":
$search_id = mt_rand(1, 2147483647);
После запроса на восстановление пароля FluxBB генерирует ключ сброса пароля и новый пароль следующим образом:
// Generate a new password and a new password activation code
$new_password = random_pass(8);
$new_password_key = random_pass(8);
Для предугадывания данных значений злоумышленнику необходимо отправить большое количество keep-alive запросов, после чего веб-сервер начнет создавать новые процессы с вновь инициализрованным состоянием генератора Mersenne Twister. Затем ему необходимо совершить два keep-alive запроса:
GET /search.php?action=search&keywords=test&search=Search
POST /login.php?action=forget_2
form_sent=1&req_email=admin%40email.com
Первый запрос вернет параметр "search_id" в URL перенаправления, в котором содержится вывод mt_rand. Так как в keep-alive соединении состояние ГПСЧ сохраняется, используя это число, можно подобрать сид, с помощью которого имеется возможность предугадать ключ для сброса пароля, а также новый пароль.
Решение
Установите последнюю версию приложения.
Статус уведомления
17.01.2013 - Производителю отправлены детали уязвимости
22.02.2013 - Производитель выпустил исправление
07.03.2013 - Публикация уязвимости
Благодарности
Уязвимость обнаружил Арсений Реутов (Исследовательcкий центр Positive Research компании Positive Technologies)
Ссылки
http://www.securitylab.ru/lab/PT-2013-02
Список отчетов о ранее обнаруженных уязвимостях Positive Research:
http://www.ptsecurity.ru/lab/advisory/
http://www.securitylab.ru/lab/
О Positive Technologies
Positive Technologies www.ptsecurity.ru - одна из ведущих российских компаний в области информационной безопасности.
Основные направления деятельности компании - разработка систем комплексного мониторинга информационной безопасности (XSpider, MaxPatrol); предоставление консалтинговых и сервисных услуг в области информационной безопасности; развитие специализированного портала Securitylab.ru.
Заказчиками Positive Technologies являются более 40 государственных учреждений, более 50 банков и финансовых структур, 20 телекоммуникационных компаний, более 40 промышленных предприятий, компании ИТ-индустрии, сервисные и ритейловые компании России, стран СНГ, Балтии, а также Великобритании, Германии, Голландии, Израиля, Ирана, Китая, Мексики, США, Таиланда, Турции, Эквадора, ЮАР, Японии.
Positive Technologies - это команда высококвалифицированных разработчиков, консультантов и экспертов, которые обладают большим практическим опытом, имеют профессиональные звания и сертификаты, являются членами международных организаций и активно участвуют в развитии отрасли.