Выкатили срочный патч для всех, кто использует Docker Desktop на Windows и macOS. Обнаружена критическая уязвимость (CVE-2025-9074, CVSS 9.3), которая позволяет вредоносному контейнеру осуществить побег и захватить контроль над хост-системой.
Суть уязвимости в простом недосмотре. API Docker Engine оказался доступен изнутри любого запущенного контейнера без аутентификации по TCP-сокету на
192.168.65.7:2375. Это открывает дорогу к классической серверной подделке запросов (SSRF). Атакующему достаточно отправить пару HTTP POST-запросов, чтобы полностью скомпрометировать хост.Выглядит так:
🟢 Отправляется POST-запрос с JSON-пейлоадом на
/containers/create. В нем указывается, что нужно смонтировать диск C: хоста в папку /mnt/host внутри нового контейнера.🟢 Отправляется POST-запрос на
/containers/{id}/start, который запускает этот свежесозданный контейнер.🟢 Всё. Атакующий получает полный доступ к файловой системе хоста и может читать любые файлы или перезаписывать системные DLL для повышения привилегий.
Особенно опасно это для пользователей Windows, где Docker Engine работает через WSL2 с правами администратора. На macOS чуть лучше, тут благодаря дополнительному слою изоляции система запросит у пользователя разрешение на монтирование домашней директории. Но даже там злоумышленник получает полный контроль над самим приложением Docker и всеми контейнерами, что позволяет, например, внедрить бэкдор через изменение конфигурации.
Версию для Linux эта уязвимость не затрагивает, так как там для API используется named pipe в файловой системе, а не TCP-сокет. Надо было ставить Linux 🤣
Уязвимость уже исправлена в Docker Desktop версии 4.44.3.
Типичный 🥸 Сисадмин