📑 Содержание
🎯 Обзор
DockerScan v2.0 — это сканер безопасности нового поколения для контейнеров и образов Docker, полностью переписанный на Go. Он объединяет несколько методов сканирования безопасности на основе последних исследований 2024–2025 годов, отраслевых стандартов (CIS Benchmark, NIST SP 800-190) и реальных шаблонов атак, обнаруженных в производственных средах.
Почему DockerScan v2.0?
- ✅ Самый всеобъемлющий: Объединяет 5+ методов сканирования безопасности в одном инструменте
- ✅ Новейшие исследования: Основан на атаках на цепочки поставок 2024–2025 годов и CVE
- ✅ Готов к производству: Вывод SARIF для CI/CD, коды завершения для автоматизации
- ✅ Молниеносная скорость: Написан на Go с конкурентным сканированием
- ✅ Расширяемый: Архитектура плагинов для пользовательских сканеров
- ✅ Бесплатно и с открытым исходным кодом: Лицензия BSD-3
🌟 Особенности
🛡️ Модули сканирования безопасности
1. CIS Docker Benchmark v1.7.0
Полная проверка соответствия с более чем 80 автоматизированными контролями:
- ✅ Безопасность конфигурации хоста (13 проверок)
- ✅ Укрепление демона Docker (18 проверок)
- ✅ Права доступа к файлам и каталогам (9 проверок)
- ✅ Лучшие практики образов контейнеров (13 проверок)
- ✅ Проверка безопасности во время выполнения (31+ проверок)
- ✅ Соответствие операционным требованиям безопасности
2. Обнаружение атак на цепочку поставок 🆕
Основано на реальных кампаниях атак 2024 года:
- ✅ Обнаружение контейнеров без образов — Выявляет вредоносные контейнеры без фактических слоёв (4 млн+ найдено на Docker Hub)
- ✅ Обнаружение криптомайнеров — Выявляет майнинговое вредоносное ПО (обнаружено 120 тыс.+ вредоносных загрузок образов)
- ✅ Обнаружение библиотек с бэкдорами — Ловит скомпрометированные зависимости (инциденты с xz-utils, liblzma)
- ✅ Проверка подписи образов — Валидация подписей с помощью Notary/Cosign
- ✅ Обнаружение фишингового контента — Сканирует документацию на предмет социальной инженерии
- ✅ Вредоносные сетевые назначения — Идентифицирует C2-серверы, майнинговые пулы, узлы Tor
3. Расширенное обнаружение секретов 🔑
40+ шаблонов секретов, включая современные API (обновление 2024):
- ✅ Облачные провайдеры: Учётные данные AWS, GCP, Azure
- ✅ Системы контроля версий: Токены GitHub, GitLab, Bitbucket
- ✅ AI/ML API: Ключи OpenAI, Anthropic, Hugging Face
- ✅ Платёжные системы: Ключи Stripe, PayPal, Square
- ✅ Коммуникации: Ключи Slack, SendGrid, Twilio, Mailchimp
- ✅ Аутентификация: JWT-токены, OAuth-токены
- ✅ Криптография: Приватные ключи (RSA, SSH, PGP, EC, DSA), сертификаты
- ✅ Базы данных: Строки подключения PostgreSQL, MySQL, MongoDB
- ✅ Docker: Токены аутентификации реестра
- ✅ Энтропийный анализ: Расчёт энтропии Шеннона для неизвестных секретов (порог >4.5)
4. Сканирование CVE и уязвимостей 🚨
Обнаружение критических CVE 2024–2025:
- ✅ CVE-2024-21626 — Побег из контейнера runc (CVSS 8.6)
- ✅ CVE-2024-23651 — RCE через отравление кэша BuildKit (CVSS 9.1)
- ✅ CVE-2024-23652 — Состояние гонки BuildKit (CVSS 7.5)
- ✅ CVE-2024-23653 — Повышение привилегий BuildKit
- ✅ CVE-2024-8695/8696 — RCE в Docker Desktop (CVSS 8.8)
- ✅ CVE-2025-9074 — Уязвимость локального доступа Docker Desktop
- ✅ Обнаружение устаревших базовых образов
- ✅ Сканирование известных уязвимых пакетов
5. Анализ безопасности времени выполнения ⚙️
Проверки укрепления контейнеров во время выполнения:
- ✅ Аудит возможностей Linux — Выявляет опасные возможности (CAP_SYS_ADMIN, CAP_NET_ADMIN и др.)
- ✅ Валидация профиля Seccomp — Убеждается, что фильтрация системных вызовов включена
- ✅ Проверки AppArmor/SELinux — Верификация обязательного контроля доступа
- ✅ Обнаружение привилегированных контейнеров — Идентифицирует контейнеры с полным доступом к хосту
- ✅ Изоляция пространств имён — Проверки пространств имён PID, IPC, сети, пользователей
- ✅ Индикаторы побега из контейнера — Обнаруживает распространённые техники побега
📊 Отчёты и интеграция
- JSON — Машиночитаемый вывод для автоматизации
- SARIF — Нативная интеграция с:
- Вкладкой безопасности GitHub
- Azure DevOps
- Расширениями VS Code
- Панелями безопасности GitLab
- Красивый CLI — Цветовая кодировка уровней серьёзности с эмодзи
- Коды завершения — Удобно для CI/CD (0=чисто, 1=предупреждения, 2=критично)
🚀 Производительность
- ⚡ В 10 раз быстрее альтернатив на Python
- 🔄 Конкурентное сканирование с помощью горутин Go
- 💾 Низкое потребление памяти (~50–100 МБ)
- 📦 Один бинарный файл — без зависимостей
🆕 Что нового в v2.0?
DockerScan v2.0 — это полная переработка с нуля. Вот что изменилось по сравнению с v1.x:
Основные изменения
| Функция | v1.x (Python) | v2.0 (Go) |
|---|
| Язык | Python 3.5+ | Go 1.21+ |
| Производительность | ~500 образов/час | ~5000 образов/час |
| Использование памяти | 200–500 МБ | 50–100 МБ |
| Распространение | pip install + зависимости | Один бинарный файл |
| Сканеры безопасности | 2 модуля | 5 модулей |
| CIS Benchmark | Частично | Полный v1.7.0 (80+ проверок) |
| Цепочка поставок | ❌ Недоступно | ✅ Основано на исследованиях 2024 |
| Шаблоны секретов | 10 шаблонов | 40+ шаблонов |
| Обнаружение CVE | Базовое | CVE 2024–2025 |
| Безопасность времени выполнения | ❌ Недоступно | ✅ Полный аудит возможностей |
| Вывод SARIF | ❌ Недоступно | ✅ Полная поддержка |
| Интеграция CI/CD | Вручную | Нативная (коды завершения, SARIF) |
Что сохранено из v1.x