Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
dwn — d(ockerp)wn - ein Docker-Pwn-Tool-Manager | Kitploit
Tools/GitHubGitHub/sensepost/dwn
Container-SicherheitScripting & AutomatisierungPenetrationstestsDienstprogramme & Frameworks
GitHubsensepost/dwn

dwn

d(ockerp)wn - ein Docker-Pwn-Tool-Manager

Repository anzeigenWebseite
15620vor 5 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen


🥽 dwn

d(ockerp)wn - ein Docker-Angriffstool-Manager

@leonjza PyPI version


Einleitung

dwn ist ein "docker-compose für Hacker". Mit einem einfachen YAML-"Plan"-Format ähnlich wie docker-compose werden Image-Namen, Versionen und Volume-/Port-Zuordnungen definiert, um ein Werkzeug für die Nutzung einzurichten.

Funktionen

Mit dwn kannst du:

  • Gängige Pentest-Tools zur Verwendung in einem Docker-Container konfigurieren
  • Kontextbewusste Volume-Mounts haben
  • Dynamisch Port-Bindungen ohne Container-Neustarts ändern
  • Und mehr!

Installation

Führe einfach pip3 install dwn aus.

Verwendung

dwn ist eigentlich wirklich einfach. Das Hauptkonzept ist das der "Pläne", in denen Informationen über ein Werkzeug (wie Name, Version, Mounts und Bindungen) definiert werden. Es gibt bereits einige eingebaute Pläne, aber du kannst auch deine eigenen erstellen. Ohne Argumente sieht die Ausführung von dwn so aus:

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

Um die verfügbaren Pläne aufzulisten, führe dwn plans show aus.

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

Um einen Plan wie gowitness auszuführen, der Screenshots von https://google.com erstellt, führe dwn run gowitness --disable-db single https://www.google.com aus. Dieser Plan wird nach der Fertigstellung beendet, sodass du nicht dwn stop gowitness ausführen musst.

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

Ein Plan wie netcat-reverse bleibt jedoch aktiv. Du kannst nach dem Start eine Verbindung zum TTY des Plans herstellen, um mit eventuell empfangenen Shells zu interagieren. Eine Beispielnutzung wäre:

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

Verbinden mit dem Plan (und Ausführen von nc -e woanders)

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

Du kannst auch einen Bericht über laufende Pläne erhalten

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               │            │           │
└────────────────┴───────────────────────────────────────┴────────────┴───────────┘

Und schließlich, einen Plan stoppen.

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

Netzwerk

dwn ermöglicht es dir, Ports dynamisch auf Pläne abzubilden, ohne Container neu starten zu müssen. Netzwerkbefehle befinden sich im Unterbefehl dwn network. Am Beispiel des nginx-Plans können wir eine Port-Zuordnung dynamisch hinzufügen. Starte zuerst den nginx-Plan.

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

Als nächstes testest du die Kommunikation mit 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

Port 9000 ist nicht geöffnet, also fügen wir eine neue Port-Bindung hinzu und testen die Verbindung

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!

Aktualisieren von Plänen

Der Befehl dwn plans pull kann verwendet werden, um die in Plänen definierten images zu aktualisieren. Um nur einen einzelnen Plan zu aktualisieren, füge den Plannamen nach pull hinzu. Z.B.: dwn plans pull nginx.

Erstellen von Plänen

Es gibt einen Befehl dwn plans new, um schnell ein neues Plan-Gerüst zu erstellen. Obwohl nur wenige Optionen benötigt werden, um einen Plan zum Laufen zu bringen, sind alle Optionen, die im Python Docker SDK für den run-Aufruf existieren, gültige Tags, die verwendet werden können.

Lizenz

dwn ist lizenziert unter der GNU General Public License v3. Erweiterte Berechtigungen über den Rahmen dieser Lizenz hinaus sind möglicherweise unter http://sensepost.com/contact/ erhältlich.

Tool herunterladen