Indico — это система управления событиями, использующая Flask-Multipass, систему аутентификации с несколькими серверами для Flask. Версии до 3.3.10 уязвимы для межсайтовых сценариев при загрузке определенных типов файлов в качестве материалов. Чтобы получить исправление, пользователям следует обновиться до версии 3.3.10.
Чтобы применить исправление, достаточно обновления, но чтобы воспользоваться строгой политикой безопасности контента (CSP), которую Indico теперь применяет по умолчанию для загрузки файлов, обновите конфигурацию веб-сервера, если вы используете nginx, с параметром `STATIC_FILE_METHOD` Indico, установленным на `xaccelredirect`. Дальнейшие указания см. в рекомендациях по безопасности GitHub или в документации по настройке Indico. Доступны некоторые обходные пути.
Используйте конфигурацию веб-сервера, чтобы применить строгий CSP для конечных точек загрузки материалов и/или разрешить создавать контент (включая загрузку материалов, которую обычно также могут делать докладчики) на Indico только заслуживающим доверия пользователям.
Показать оригинальное описание (EN)
Indico is an event management system that uses Flask-Multipass, a multi-backend authentication system for Flask. Versions prior to 3.3.10 are vulnerable to cross-site scripting when uploading certain file types as materials. Users should upgrade to version 3.3.10 to receive a patch. To apply the fix itself updating is sufficient, but to benefit from the strict Content Security Policy (CSP) Indico now applies by default for file downloads, update the webserver config in case one uses nginx with Indico's `STATIC_FILE_METHOD` set to `xaccelredirect`. For further directions, consult the GitHub Security advisory or Indico setup documentation. Some workarounds are available. Use the webserver config to apply a strict CSP for material download endpoints, and/or only let trustworthy users create content (including material uploads, which speakers can typically do as well) on Indico.
Характеристики атаки
Последствия
Строка CVSS v3.1