django CMS — это простая в использовании и удобная для разработчиков система управления корпоративным контентом на базе Django. До версии 5.0.8 конечная точка copy_plugins в cms/admin/placeholderadmin.py авторизует только целевой буфер обмена. Пути _copy_plugin_to_clipboard и _copy_placeholder_to_clipboard принимают значения source_placeholder_id и source_plugin_id, но используют has_copy_plugins_permission и check_source только для буфера обмена запрашивающего пользователя без проверки исходного заполнителя.
В соответствии с CMS_PERMISSION штатный пользователь с глобальным разрешением на добавление для типа плагина может копировать плагины с неавторизованной страницы или заполнителя в буфер обмена пользователя и читать секретный текст, имена ссылок и URL-адреса. Эта проблема исправлена в версиях 5.0.8.
Показать оригинальное описание (EN)
django CMS is an easy-to-use and developer-friendly enterprise content management system powered by Django. Prior to 5.0.8, the copy_plugins endpoint in cms/admin/placeholderadmin.py authorizes only the destination clipboard. The _copy_plugin_to_clipboard and _copy_placeholder_to_clipboard paths accept source_placeholder_id and source_plugin_id values but use has_copy_plugins_permission and check_source only for the requesting user’s clipboard, without validating the source placeholder. Under CMS_PERMISSION, a staff user with the global add permission for a plugin type can copy plugins from an unauthorized page or placeholder into the user’s clipboard and read secret text, link names, and URLs. This issue is fixed in versions 5.0.8.
Характеристики атаки
Последствия
Строка CVSS v3.1