Admidio — это решение для управления пользователями с открытым исходным кодом. В версиях с 5.0.0 по 5.0.6 режимы удаления, активации и деактивации в файлах groups/groups-roles/groups_roles.php выполняют деструктивные изменения состояния в организационных ролях, но никогда не проверяют токен защиты от CSRF. Пользовательский интерфейс на стороне клиента передает токен CSRF в функцию callUrlHideElement(), которая включает его в тело POST, но обработчики на стороне сервера полностью игнорируют $_POST["adm_csrf_token"] для этих трех режимов.
Злоумышленник, который может обнаружить UUID роли (видимый в представлении общедоступных карточек, когда модуль общедоступен), может встроить поддельную форму POST на любую внешнюю страницу и обманом заставить любого пользователя с правом rol_assign_roles удалить или переключить роли для организации. Удаление роли является необратимым и распространяется на все данные об членстве, ассоциациях событий и правах. В случае использования злоумышленник может обманом заставить любого пользователя с делегированными правами на назначение ролей навсегда удалить роли, массово отозвать все связанные членства и доступ к событиям, документам и спискам рассылки или незаметно активировать или деактивировать целые группы, при этом UUID целевой роли легко извлекается из представления неаутентифицированных общедоступных карточек и не имеет пути отмены, кроме восстановления базы данных.
Эта проблема исправлена в версии 5.0.7.
Показать оригинальное описание (EN)
Admidio is an open-source user management solution. In versions 5.0.0 through 5.0.6, the delete, activate, and deactivate modes in modules/groups-roles/groups_roles.php perform destructive state changes on organizational roles but never validate an anti-CSRF token. The client-side UI passes a CSRF token to callUrlHideElement(), which includes it in the POST body, but the server-side handlers ignore $_POST["adm_csrf_token"] entirely for these three modes. An attacker who can discover a role UUID (visible in the public cards view when the module is publicly accessible) can embed a forged POST form on any external page and trick any user with the rol_assign_roles right into deleting or toggling roles for the organization. Role deletion is permanent and cascades to all memberships, event associations, and rights data. If exploited, an attacker can trick any user with delegated role-assignment rights into permanently deleting roles, mass-revoking all associated memberships and access to events, documents, and mailing lists, or silently activating or deactivating entire groups, with target role UUIDs trivially harvested from the unauthenticated public cards view and no undo path short of a database restore. This issue has been fixed in version 5.0.7.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Admidio Admidio
cpe:2.3:a:admidio:admidio:*:*:*:*:*:*:*:*
|
5.0.0
|
5.0.7
|