V
Сканер-ВС
ГлавнаяКаталогИсточникиCWECAPECATT&CKМеры защитыПродуктыВендорыДокументация
CVE-2021-41129
CVE
Высокий

Pterodactyl - это панель управления игровым сервером с открытым исходным кодом, построенная с использованием PHP 7, React и Go. Злоумышленн…

CVSS
8.1
Высокий
EPSS
0.02
p74
Опубликовано
2021-01-01
Обновлено
2021-01-01
Описание

Pterodactyl - это панель управления игровым сервером с открытым исходным кодом, построенная с использованием PHP 7, React и Go. Злоумышленник может изменить содержимое ввода `confirmation_token` во время процесса двухфакторной аутентификации, чтобы сослаться на значение кэша, не связанное с попыткой входа в систему. В редких случаях это может позволить злоумышленнику пройти аутентификацию в качестве случайного пользователя в панели. Злоумышленник должен нацелиться на учетную запись с включенной двухфакторной аутентификацией, а затем должен предоставить правильный токен двухфакторной аутентификации, прежде чем пройти аутентификацию в качестве этого пользователя. Из-за недостатка проверки в логике обработки аутентификации пользователя во время процесса двухфакторной аутентификации злоумышленник может обманом заставить систему загрузить учетные данные для произвольного пользователя, изменив токен, отправленный на сервер. Этот недостаток аутентификации присутствует в методе `LoginCheckpointController@__invoke`, который обрабатывает двухфакторную аутентификацию для пользователя. Этот контроллер ищет входной параметр запроса с именем `confirmation_token`, который, как ожидается, будет 64-символьной случайной буквенно-цифровой строкой, ссылающейся на значение в кэше панели, содержащее значение `user_id`. Это значение затем используется для получения пользователя, который пытался войти в систему, и поиска его токена двухфакторной аутентификации. Из-за конструкции этой системы любой элемент в кэше, содержащий только цифры, может быть использован злоумышленником, и любое значение, хранящееся в этой позиции, будет использоваться в качестве `user_id`. В панели есть несколько разных областей, которые сохраняют значения в кэше, которые являются целыми числами, и пользователь, который определяет, что это за ключи кэша, может передать один из этих ключей, что приведет к тому, что этот путь кода будет ссылаться на произвольного пользователя. По сути, это уязвимость обхода входа в систему с высоким риском. Однако есть несколько дополнительных условий, которые должны быть выполнены для успешного выполнения этого, а именно: 1.) Учетная запись, на которую ссылается вредоносный ключ кэша, должна иметь включенную двухфакторную аутентификацию. Учетная запись без двухфакторной аутентификации вызовет исключение, которое будет запущено логикой аутентификации, таким образом завершая этот поток аутентификации. 2.) Даже если злоумышленник сможет сослаться на действительный ключ кэша, который ссылается на действительную учетную запись пользователя с двухфакторной аутентификацией, он должен предоставить действительный токен двухфакторной аутентификации. Однако из-за конструкции этой конечной точки, как только найдена действительная учетная запись пользователя с включенной двухфакторной аутентификацией, нет никакого ограничения скорости, что позволяет злоумышленнику перебирать комбинации, пока не будет достигнут успех. Это приводит к третьему условию, которое должно быть выполнено: 3.) В течение этой последовательности атак ключ кэша, на который ссылаются, должен продолжать существовать с действительным значением `user_id`. В зависимости от конкретного ключа, используемого для этой атаки, это значение может быстро исчезнуть или быть изменено другими случайными взаимодействиями пользователя на панели, вне контроля злоумышленника. Чтобы смягчить эту уязвимость, базовая логика аутентификации была изменена для использования зашифрованного хранилища сеансов, значение которого пользователь, следовательно, не может контролировать. Это полностью исключило использование значения, контролируемого пользователем. Кроме того, код был проверен, чтобы убедиться, что этот тип уязвимости отсутствует в других местах.

Теги · CWE
Без аутентификации
CWE-502
CAPEC-586
Затронутые продукты
Panel 1.0.0–1.6.2
Вектор CVSS
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Хронология
2021-01-01
Опубликована
2021-01-01
Обновлена
Разбор CVSS 3.1
Вектор атаки
AV: N
Сеть (N)
Сложность атаки
AC: H
Высокая (H)
Требуемые привилегии
PR: N
Отсутствуют (N)
Взаимодействие с пользователем
UI: N
Отсутствует (N)
Область воздействия
S: U
Неизменная (U)
Воздействие на конфиденциальность
C: H
Высокое (H)
Воздействие на целостность
I: H
Высокое (H)
Воздействие на доступность
A: H
Высокое (H)
Индикаторы эксплуатации
EPSS
0.017 · p74
Известна эксплуатация (KEV)
Нет
Проверки Сканер-ВС
Проверок Сканер-ВС для этой уязвимости в базе пока нет.
Затронутые продукты
ПродуктВендорСтатус
panel*Отслеживается
Источники данных
CVE