G03.02. Политика безопасности контента

Редактировал(а) Ирина Сафонова 22.03.2024, 15:17

Что такое политика безопасности контента?


Политика безопасности контента — дополнительный уровень безопасности, который обнаруживает и смягчает определенные типы атак, включая межсайтовые скриптинги (XSS) и атаки с внедрением данных.

Политика безопасности позволяет администраторам серверов уменьшать или устранять векторы, по которым может происходить XSS. Указываются домены, которые браузер рассматривает как допустимые источники исполняемых скриптов. Браузер, совместимый с политикой, выполняет только сценарии, загруженные в исходные файлы и полученные из этих разрешенных доменов. Браузер игнорирует остальные сценарии, включая встроенные и HTML-атрибуты обработки событий.

Переменные для настройки политики

Настройте политику безопасности контента при развертывании Cloud BI, чтобы предотвратить атаки. Cloud BI предоставляет две переменные в config.py для развертывания:

  • TALISMAN_ENABLED по умолчанию имеет значение False. Установите для этого параметра значение True.
  • TALISMAN_CONFIG содержит фактическое определение политики.

Проверка настроек политики

При работе в продуктивном режиме Cloud BI проверяет наличие настройки политики. Если настройка не найдена, то система выдает предупреждение об угрозе безопасности. Для сред, в которых политики безопасности определены вне Cloud BI с помощью другого программного обеспечения, администраторы при необходимости отключают это предупреждение с помощью ключа CONTENT_SECURITY_POLICY_WARNING в файле config.py.

Требования к политике


Для настройки укажите ключевые слова 'unsafe-eval' и 'unsafe-inline'.

default-src 'self' 'unsafe-eval' 'unsafe-inline'

Некоторые дашборды загружают изображения с использованием URI данных.

img-src 'self' data:

Диаграммы MapBox используют воркеры и подключаются к серверам MapBox.

worker-src 'self' blob:
connect-src 'self' https://api.mapbox.com https://events.mapbox.com

Пример с учтенными требованиями требованиями к политике


Пример TALISMAN_CONFIG реализует требования к политике и использует 'self' для ограничения содержимого тем же источником, что и сервер Cloud BI. Пример запрещает устаревшие элементы HTML, устанавливая для object-src значение 'none'.

TALISMAN_CONFIG = {
    "content_security_policy": {
        "default-src": ["'self'", "'unsafe-inline'", "'unsafe-eval'"],
        "img-src": ["'self'", "data:"],
        "worker-src": ["'self'", "blob:"],
        "connect-src": ["'self'", "https://api.mapbox.com", "https://events.mapbox.com"],
        "object-src": "'none'",
    }
}

Сообщение об уязвимостях


Если возникли опасения насчет безопасности Cloud BI или обнаружили уязвимость или угрозу, свяжитесь с технической поддержкой Cloud BI. Укажите в письме для технической поддержки пример и способ воспроизведения проблемы. Техническая поддержка свяжется с вами после оценки и анализа результатов возникшей уязвимости.

В начало 🡱
К следующему разделу 🡲
К предыдущему разделу 🡰