Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
DockerENT — Единственный инструмент с открытым исходным кодом для анализа уязвимостей и проблем конфигурации в работающих Docker-контейнерах и Docker-сетях. | Kitploit
Инструменты/GitHubGitHub/rosehgal/dockerent
Сканеры уязвимостейБезопасность контейнеровАудит конфигурацииНеправильная Конфигурация
GitHubrosehgal/dockerent

DockerENT

Единственный инструмент с открытым исходным кодом для анализа уязвимостей и проблем конфигурации в работающих Docker-контейнерах и Docker-сетях.

Репозиторий
127155 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться


GitHub Workflow Status GitHub release (latest by date) PyPI - Downloads Libraries.io dependency status for GitHub repo GitHub code size in bytes GitHub
GitHub issues GitHub stars Twitter Follow GitHub followers

DockerENT

DockerENT — это активный инструмент сканирования безопасности среды выполнения приложений (RAST). Он представляет собой подключаемую платформу, написанную на Python. Включает CLI-приложение и чистый веб-интерфейс, созданный с помощью StreamLit.

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

Как запустить

TL;DR

Спешите протестировать? Загрузите последний стабильный релиз с PyPi и запустите веб-приложение — всё остальное интуитивно понятно.

pip install DockerENT

Затем запустите приложение так:

DockerENT -w

Вот и всё.

Запуск последней версии из master

DockerENT создан с учётом простоты и удобства. Сейчас достаточно клонировать репозиторий и установить зависимости или собрать Dockerfile. После установки зависимостей в локальной системе можно запускать инструмент и анализировать конфигурации запущенных контейнеров.

root@kitploit:~
# Скачивание и настройка
git clone https://github.com/r0hi7/DockerENT.git
cd DockerENT
make venv
source venv/bin/activate

# Запуск
python -m DockerENT --help 
usage: Find the vulnerabilities hidden in your running container(s).
       [-h] [-d [DOCKER_CONTAINER]] [-p [DOCKER_PLUGINS]]
       [-d-nw [DOCKER_NETWORK]] [-p-nw [DOCKER_NW_PLUGINS]] [-w]
       [-n [PROCESS_COUNT]] [-a] [-o [OUTPUT]]

optional arguments:
  -h, --help            show this help message and exit
  -w, --web-app         Run DockerENT in WebApp mode. If this parameter is
                        enabled, other command line flags will be ignored.
  -n [PROCESS_COUNT], --process [PROCESS_COUNT]
                        Run scans in parallel (Process pool count).
  -a, --audit           Flag to check weather to audit results or not.

  -d [DOCKER_CONTAINER], --docker [DOCKER_CONTAINER]
                        Run scan against the running container.
  -p [DOCKER_PLUGINS], --plugins [DOCKER_PLUGINS]
                        Run scan with only specified plugins.
  -p-nw [DOCKER_NW_PLUGINS], --nw-plugins [DOCKER_NW_PLUGINS]
                        Run scan with only specified plugins.

  -d-nw [DOCKER_NETWORK], --docker-network [DOCKER_NETWORK]
                        Run scan against running docker-network.

  -o [OUTPUT], --output [OUTPUT]
                        Output plugin to write data to.

# или через контейнер
docker build . -t dockerent
docker run -d -v /var/run/docker.sock:/var/run/docker.sock -p 8501:8501 --name dockerent dockerent
# Затем откройте браузер по адресу http://localhost:8051

Посмотрите это короткое видео, чтобы начать.

Возможности

  • Плагинная архитектура.
  • Использует низкоуровневый docker API для взаимодействия с запущенными контейнерами.
  • Чистый и простой интерфейс.
  • Включает 9 плагинов сканирования docker, из которых 6 плагинов могут выполнять аудит результатов.
    • Полный список: Плагины сканирования Docker
  • Готовая поддержка docker-сетей.
    • Полный список: Плагины сканирования Docker сетей
  • Плагины вывода могут записывать данные в file и html.
  • Единственный интерактивный инструмент сканирования Docker с открытым исходным кодом.
  • Может запускать плагины параллельно.
  • Активно разрабатывается 😄.

Как создать свой плагин

  • Имейте идею для выполнения сканирования среды выполнения.
  • Скопируйте файл, чтобы создать свой демо-плагин.
root@kitploit:~
cp DockerENT/docker_plugins/docker_sample_plugin.py DockerENT/docker_plugins/docker_demo_plugin.py
  • Убедитесь, что вы сохраняете следующую структуру.
root@kitploit:~
_plugin_name = 'demo_plugin'

def scan(container, output_queue, audit=False, audit_queue=None):
    _log.info('Staring {} Plugin ...'.format(_plugin_name_))

    res = {}

    result = {
        'test_class': {
            'TEST_NAME': ['good']
        }
    }

    res[container.short_id] = {
        _plugin_name_: result
    }
    
    # Do something magical.

    _log.info('Completed execution of {} Plugin.'.format(_plugin_name_))

    '''Make Sure you put dict of following structure in Q.
    {
        'contiainer_id': {
            'plugin_name': {
                'test_name_demo1': {
                    resultss:[]
                },
                'test_name_demo2': {
                    results: []
                }
            }
        }
    }
    '''
    output_queue.put(res)

    if audit:
        _audit(container, res, audit_queue)

def _audit(container, results, audit_queue):
    '''Make Sure to add dict of following structure to Audit Q
    res = {
        "container_id": [
            "_plugin_name_, WARN/INFO/ERROR, details"
        ]
    }
    '''
    # Magical logic to perform Audit.
    audit_queue.put(res)
  • Вот и всё. Всё ещё непонятно? Опишите идею в Issues — мы рассмотрим и поможем, или вместе поработаем над ней.
  • Этот плагин автоматически появится в выпадающем списке UI. 😄 Легко, правда?
  • Расслабьтесь и оценивайте результаты.

Возможности плагинов:

CLI интерфейс

Плюсы

  • Rich интерфейс логирования, помогает в отладке благодаря подробным логам.
  • Возможность параллельного запуска: передайте -n <count>, чтобы указать количество процессов.
  • Вывод результатов в JSON и HTML файлы.

Минусы

  • Результаты аудита не сохраняются в файл.
  • Выбор нескольких конкретных контейнеров неудобен.

UI интерфейс

Плюсы

  • Чистый и простой интерфейс.
  • Всё на одной странице.
  • Удобный выбор нескольких образов Docker, нескольких плагинов и нескольких Docker-сетей.
  • Присутствует отчёт об аудите.

Минусы

  • Логирование не такое богатое, как в CLI.
  • JSON отчёты громоздкие.
  • Зависимость от сторонней библиотеки StreamLit, все проблемы фреймворка наследуются.

Помогите улучшить этот инструмент

  • Создавайте PR, приветствуются Issues.
  • Пробуйте, тестируйте и улучшайте его.
Скачать инструмент
Имя плагинаФайл плагинаФункцияАудит
CMD_HISTORYFileОпределяет историю команд оболочкиИстория root и пользователя
FILESYSTEMFileОпределяет RW файловые системыЕсли присутствуют RW файловые системы
NETWORKFileОпределяет состояние сетиОпределяет все проброшенные порты
PLAINTEST_PASSWORDFileОпределяет пароли в разных файлах
SECURITY_PROFILESFileОпределяет слабые профили безопасностиПеречисляет слабые профили
USER_INFOFileОпределяет информацию о пользователяхПеречисляет права в passwd и других критических файлах
SYSTEM_INFOFileОпределяет системную информацию DockerНет аудита
FILES_INFOFileОпределяет общедоступные для записи каталоги и файлыПеречисляет все такие файлы
PROC_INFOFileОпределяет список процессов в Docker