Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
dwn — d(ockerp)wn - Docker PWNツールマネージャー | Kitploit
ツール/GitHubGitHub/sensepost/dwn
コンテナセキュリティスクリプトと自動化ペネトレーションテストユーティリティとフレームワーク
GitHubsensepost/dwn

dwn

d(ockerp)wn - Docker PWNツールマネージャー

リポジトリを見るウェブサイト
156205年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有


🥽 dwn

d(ockerp)wn - Docker攻撃ツールマネージャー

@leonjza PyPI version


はじめに

dwn は「ハッカーのためのdocker-compose」です。docker-compose と同様のシンプルなYAML「プラン」形式を用いて、イメージ名、バージョン、ボリューム/ポートマッピングを定義し、ツールを使えるように設定します。

機能

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 を更新できます。1つのプランのみを更新する場合は、pull の後にプラン名を追加します。例: dwn plans pull nginx。

プランの作成

dwn plans new コマンドを使用すると、新しいプランを素早くスキャフォールディングできます。プランを立ち上げるために必要なオプションはわずかですが、Python Docker SDK の run 呼び出しで使用可能なすべてのオプションが有効なタグとして利用できます。

ライセンス

dwn は GNU General Public v3 License の下でライセンスされています。このライセンスの範囲を超える許可については、http://sensepost.com/contact/ までお問い合わせください。

ツールをダウンロード