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

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

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

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

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

Категории

Все категории
Loading categories
dwn — d(ockerp)wn - менеджер инструментов для взлома Docker | Kitploit
Инструменты/GitHubGitHub/sensepost/dwn
Безопасность контейнеровСкриптинг и автоматизацияТестирование на ПроникновениеУтилиты и фреймворки
GitHubsensepost/dwn

dwn

d(ockerp)wn - менеджер инструментов для взлома Docker

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

Популярное

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

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

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

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

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


🥽 dwn

d(ockerp)wn — менеджер инструментов для атак на Docker

@leonjza PyPI version


введение

dwn — это «docker-compose для хакеров». Используя простой формат YAML «планов», похожий на docker-compose, можно задать имена образов, версии и пробросы томов/портов для настройки инструмента.

возможности

С помощью dwn вы можете:

  • Настраивать распространённые инструменты для пентеста для работы в docker-контейнере
  • Автоматически монтировать тома с учётом контекста
  • Динамически изменять привязки портов без перезапуска контейнера
  • И многое другое!

установка

Просто выполните pip3 install dwn.

использование

dwn действительно очень прост. Основная концепция — «планы», в которых определяется информация об инструменте (например, имя, версия, монтирования и привязки). Уже есть несколько встроенных планов, но вы также можете создать свои собственные. Без аргументов простой запуск dwn выглядит так.

root@kitploit:~
❯ dwn
Usage: dwn [OPTIONS] COMMAND [ARGS]...

       __
   ___/ /    _____
  / _  / |/|/ / _ \
  \_,_/|__,__/_//_/
    docker pwn tool manager
    by @leonjza / @sensepost

Options:
  --debug  enable debug logging
  --help   Show this message and exit.

Commands:
  check    Check plans and Docker environment
  network  Work with networks
  plans    Work with plans
  run      Run a plan
  show     Show running plans
  stop     Stop a plan

Чтобы вывести список доступных планов, выполните dwn plans show.

root@kitploit:~
❯ dwn plans show
                                    dwn plans
┏━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ name             ┃ path                                  ┃
┡━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ sqlmap           │ /tools/dwn/plans/sqlmap.yml           │
│ wpscan           │ /tools/dwn/plans/wpscan.yml           │
│ gowitness-report │ /tools/dwn/plans/gowitness-report.yml │
│ msfconsole       │ /tools/dwn/plans/msfconsole.yml       │
│ gowitness        │ /tools/dwn/plans/gowitness.yml        │
│ nginx            │ /tools/dwn/plans/nginx.yml            │
│ cme              │ /tools/dwn/plans/cme.yml              │
│ netcat-reverse   │ /tools/dwn/plans/netcat-reverse.yml   │
│ semgrep-sec      │ /tools/dwn/plans/semgrep-sec.yml      │
│ semgrep-ci       │ ~/.dwn/plans/semgrep-ci.yml           │
│ neo4j            │ ~/.dwn/plans/neo4j.yml                │
└──────────────────┴───────────────────────────────────────┘
                                     11 plans

Чтобы запустить план, например gowitness для создания скриншота https://google.com, выполните dwn run gowitness --disable-db single https://www.google.com. Этот план завершится после выполнения, так что вам не нужно выполнять dwn stop gowitness.

root@kitploit:~
❯ dwn run gowitness --disable-db single https://www.google.com
(i) found plan for gowitness
(i) volume: ~/scratch -> /data
(i) streaming container logs
08 Feb 2021 10:46:18 INF preflight result statuscode=200 title=Google url=https://www.google.com
❯
❯ ls screenshots
https-www.google.com.png

Однако такой план, как netcat-reverse, будет работать постоянно. Вы можете подключиться к TTY плана после его запуска, чтобы взаимодействовать с любыми полученными шеллами. Пример использования:

root@kitploit:~
❯ dwn run netcat-reverse
(i) found plan for netcat-reverse
(i) port: 4444<-4444
(i) container booted! attach & detach commands are:
(i) attach: docker attach dwn_wghz_netcat-reverse
(i) detach: ctrl + p, ctrl + q

Подключение к плану (и выполнение nc -e где-то ещё)

root@kitploit:~
❯ docker attach dwn_wghz_netcat-reverse
connect to [::ffff:172.19.0.2]:4444 from dwn_wghz_netcat-reverse_net_4444_4444.dwn:46318 ([::ffff:172.19.0.3]:46318)

env | grep -i shell
SHELL=/bin/zsh

read escape sequence

Также можно получить отчёт о работающих планах

root@kitploit:~
❯ dwn show
                                running plan report
┏━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━━━━━━┓
┃ plan           ┃ container(s)                          ┃ port(s)    ┃ volume(s) ┃
┡━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━━━━━━┩
│ netcat-reverse │ dwn_wghz_netcat-reverse_net_4444_4444 │ 4444<-4444 │           │
│                │ dwn_wghz_netcat-reverse               │            │           │
└────────────────┴───────────────────────────────────────┴────────────┴───────────┘

И, наконец, остановка плана.

root@kitploit:~
❯ dwn stop netcat-reverse -y
(i) stopping 2 containers for plan netcat-reverse

сеть

dwn позволяет динамически сопоставлять порты с планами без перезапуска контейнеров. Сетевые команды находятся в подкоманде dwn network. Возьмём в качестве примера план nginx — мы можем динамически добавить сопоставление портов. Сначала запустите план nginx.

root@kitploit:~
❯ dwn run nginx
(i) found plan for nginx
(i) volume: ~/scratch -> /usr/share/nginx/html
(i) port: 80<-8888
(i) container dwn_wghz_nginx started for plan nginx, detaching

Затем проверьте связь с помощью cURL

root@kitploit:~
❯ curl localhost:8888/poo.txt
haha, you touched it!

❯ curl localhost:9000/poo.txt
curl: (7) Failed to connect to localhost port 9000: Connection refused

Порт 9000 не открыт, поэтому добавим новую привязку порта и проверим соединение

root@kitploit:~
❯ dwn network add nginx -i 80 -o 9000
(i) port binding for 9000->nginx:80 created
❯
❯ curl localhost:9000/poo.txt
haha, you touched it!

обновление планов

Команда dwn plans pull используется для обновления образов (images), определённых в планах. Чтобы обновить только один план, добавьте имя плана после pull. Например: dwn plans pull nginx.

написание планов

Существует команда dwn plans new для быстрого создания нового плана. Хотя для запуска плана требуется всего несколько параметров, все опции, доступные в Python Docker SDK для вызова run, являются допустимыми тегами, которые можно использовать.

лицензия

dwn распространяется под лицензией GNU General Public v3 License. Дополнительные разрешения, выходящие за рамки этой лицензии, можно получить по адресу http://sensepost.com/contact/.

Скачать инструмент