Конкретные CMS ниже 9.5.3 не выполняют проверку авторизации на уровне объекта при обновлении типа страницы. Контроллер информационной панели Types::submit() загружал и сохранял тип страницы, определенный предоставленным пользователем ptID, без вызова canEditPageType(), поэтому вошедший в систему пользователь информационной панели, которому разрешено редактировать один тип страницы, мог изменить конфигурацию типов страниц за пределами назначенной ему границы авторизации. Токен update_page_type был проверен, но он предназначен для действия и пользователя, а не для объекта, поэтому он не ограничивал, какой тип страницы может быть целевым.
Команда безопасности Concrete CMS присвоила этой уязвимости оценку CVSS v4.0 5,1 с вектором CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N. Спасибо Эндрю Гонсалесу за репортаж.
Показать оригинальное описание (EN)
Concrete CMS below 9.5.3 does not perform an object-level authorization check when a Page Type was updated. The Types::submit() dashboard controller loaded and saved the Page Type identified by a user-supplied ptID without calling canEditPageType(), so a signed-in dashboard user permitted to edit one Page Type could modify the configuration of Page Types outside their assigned authorization boundary. The update_page_type token was validated but is action- and user-scoped rather than object-scoped, so it did not constrain which Page Type could be targeted. The Concrete CMS security team gave this vulnerability a CVSS v4.0 score of 5.1 with vector CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N. Thanks Andrew Gonzalez for reporting.
Характеристики атаки
Последствия
Строка CVSS v4.0