CVE-2021-30533

Google Chromium PopupBlocker

ВЫСОКАЯ ВЕРОЯТНОСТЬ

Дата обнаружения

2022-06-27

Официальное описание

Google Chromium PopupBlocker contains an insufficient policy enforcement vulnerability that allows a remote attacker to bypass navigation restrictions via a crafted iframe. This vulnerability could affect multiple web browsers that utilize Chromium, including, but not limited to, Google Chrome, Microsoft Edge, and Opera.

🛡️
Технический анализ и план устранения

Суть уязвимости

CVE-2021-30533 представляет собой логическую ошибку в механизме PopupBlocker браузера Chromium, связанную с недостаточным соблюдением политик безопасности (Insufficient Policy Enforcement). Уязвимость позволяет злоумышленнику обойти ограничения на навигацию и принудительно открыть всплывающее окно или перенаправить пользователя, используя специально сформированный элемент iframe.

Проблема заключается в том, что при определенных манипуляциях с иерархией фреймов и событиями инициализации навигации, фильтры блокировщика всплывающих окон не срабатывают должным образом. Это открывает возможности для проведения атак типа Clickjacking, фишинга или распространения вредоносного ПО через несанкционированные редиректы.

Как исправить

Основным способом устранения уязвимости является обновление движка Chromium до версии 91.0.4472.77 или выше. Поскольку Chromium является базой для многих браузеров, необходимо обновить конкретный программный продукт.

Для Google Chrome (Linux/Debian/Ubuntu):

sudo apt update && sudo apt upgrade google-chrome-stable -y

Для Google Chrome (Windows/PowerShell):

Start-Process "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --check-for-update

Для Microsoft Edge (Windows/PowerShell):

Start-Process "msedge.exe" "edge://settings/help"

Для системных администраторов (групповые политики): Необходимо убедиться, что в ADMX-шаблонах включено автоматическое обновление. Установите параметр Update policy override в значение Always allow updates.

Временные меры

Если немедленное обновление браузеров невозможно, рекомендуется применить следующие настройки для снижения риска эксплуатации:

1. Настройка Content Security Policy (CSP): Внедрите заголовок Content-Security-Policy на корпоративных ресурсах, чтобы ограничить возможность встраивания сайтов во фреймы и запретить выполнение несанкционированных скриптов.

Content-Security-Policy: frame-ancestors 'self'; sandbox allow-scripts allow-same-origin allow-forms;

2. Принудительная блокировка всплывающих окон через реестр (Windows): Для Google Chrome можно принудительно включить блокировщик для всех сайтов.

New-Item -Path "HKLM:\SOFTWARE\Policies\Google\Chrome" -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Google\Chrome" -Name "DefaultPopupsSetting" -Value 2 -PropertyType DWord -Force

3. Использование Site Isolation: Убедитесь, что функция изоляции сайтов включена (в современных версиях активна по умолчанию), чтобы минимизировать риск межсайтовых утечек данных при обходе навигационных ограничений.

New-ItemProperty -Path "HKLM:\SOFTWARE\Policies\Google\Chrome" -Name "SitePerProcess" -Value 1 -PropertyType DWord -Force

4. Ограничение JavaScript: В критических сегментах сети рекомендуется временно отключить выполнение JavaScript для непроверенных внешних ресурсов через настройки контента браузера.