Плагин Flex Objects (до версии 1.4.6, протестирован с Grav 2.0.11) содержит уязвимость неправильной авторизации в API Flex Objects. FlexApiController::update() проверяет только общие разрешения каталога Flex и не применяет дополнительные проверки цели/поля/суперадминистратора, выполняемые выделенными контроллерами API пользователей и групп. Прошедшая проверку подлинности учетная запись с разрешениями api.access, admin.login иusers.update (но без api.users.write или admin.super) может использовать общую конечную точку /api/v1/flex-objects/user-accounts для изменения пароля суперадминистратора или конечную точку /api/v1/flex-objects/user-groups для предоставления своей группе admin.super, что приводит к полному захвату сайта. Исправлено в Flex Objects 1.4.7.
Показать оригинальное описание (EN)
The Flex Objects plugin (through 1.4.6, tested with Grav 2.0.11) contains an incorrect authorization vulnerability in its Flex Objects API. FlexApiController::update() checks only the general Flex directory permission and does not apply the additional target/field/super-admin checks enforced by the dedicated Users and Groups API controllers. An authenticated account with api.access, admin.login, and users.update permissions (but without api.users.write or admin.super) can use the generic /api/v1/flex-objects/user-accounts endpoint to change a super administrator's password, or the /api/v1/flex-objects/user-groups endpoint to grant its group admin.super, resulting in full site takeover. Fixed in Flex Objects 1.4.7.
Характеристики атаки
Последствия
Строка CVSS v4.0
Тип уязвимости (CWE)
Уязвимые продукты 2
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Getgrav Grav
cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
|
2.0.11
|
<= 2.0.11
|
|
Getgrav Grav
cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*
|
— |
1.4.7
|