事情起因#
ノートを整理し続けています。
参考記事:
Docker のインストール#
apt-get install docker.io -y
次にdocker -vコマンドを使用してインストールが完了したかどうかを確認します:

ミラーサイトの変更#
- 网易加速器:http://hub-mirror.c.163.com
- 公式中国ミラーサイト:https://registry.docker-cn.com
- ustc のミラーサイト:https://docker.mirrors.ustc.edu.cn
阿里クラウドで独自のミラーアクセラレータを設定することもできます:
まず、阿里開発者プラットフォームにログインし、ログイン後、Dockerイメージリポジトリに入ります。
アクセラレータタブを選択すると、システムが専用のアクセラレータアドレスを生成してくれます:
https://xxxxx.mirror.aliyuncs.com
vim /etc/docker/daemon.json
基本的な設定は以下の通りです:
{
"registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com"],
"graph": "/mnt/docker-data",
"storage-driver": "overlay"
}
後の 2 つは私が使用中に遭遇した問題ですが、ソフトウェアドライバの問題のようです。
とにかく追加して、docker サービスを再起動します:
systemctl daemon-reload
service docker restart
これで完了です。
pikachu のインストール#
pikachuのターゲットには既存のイメージソースがないため、自分でbuildする必要があります。
git clone https://github.com/zhuifengshaonianhanlu/pikachu
cd pikachu
docker build -t "pikachu" .
現在のディレクトリで kerfile を使用してイメージを作成し、pikachuという名前を付けます。Dockerfile と同じディレクトリにある必要があります。コマンドの後ろにはドットがあります。
途中でlnmp環境を取得し、約200Mあります。
docker run -it -d -p 8082:80 pikachu
- -i: インタラクティブモードでコンテナを実行します。通常は -t と一緒に使用します。
- -t: コンテナに疑似入力ターミナルを割り当てます。通常は -i と一緒に使用します。
- -d: コンテナをバックグラウンドで実行し、コンテナ ID を返します。
- -- name:コンテナに名前を付けます。
- -v /xxx:/yyy:ホストマシンの xxx ディレクトリをコンテナの yyy ディレクトリにマウントします。
- -p: マッピングする IP とポートを指定しますが、指定したポートには 1 つのコンテナしかバインドできません。
- コンテナのポートマッピングを設定する:docker run [-P][-p]
- containerPort はコンテナのポートのみを指定し、ホストマシンのポートはランダムにマッピングされます:docker run -p 80 -i -t /bin/bash
- hostPortはホストマシンのポートとコンテナのポートを同時に指定します:docker run -p 8080:80 -i -t /bin/bash0
- ipは IP とコンテナのポートを指定します:docker run -p 0.0.0.0:80 -i -t /bin/bash
- ip:hostPortは IP、ホストマシンのポート、およびコンテナのポートを同時に指定します:docker run -p 0.0.0.0:8080:80 -i -t /bin/bash

ホームページに初期化ボタンがあります。初期化をクリックすると、初期化が完了します。


burp の設定#
従来の方法に従って、ブラウザの設定でプロキシを検索し、カスタムローカルおよび LAN プロキシを127.0.0.1:8080に設定します。
または、ブラウザプラグインSwitchySharpを直接使用することもできます。
インストール後、オプションでburpsuiteモードをカスタマイズします。

その後、プラグインアイコンの右上にあるモードを簡単に切り替えることができます。

通常はシステムのプロキシ設定を使用し、burpをインターセプトする必要がある場合は、ワンクリックで切り替えることができます。
また、ターゲットのipがローカルの場合、burpはデフォルトで127.0.0.1:8080をインターセプトします。
私のようにターゲットがローカルにない場合は、burpをすべての ip でインターセプトする必要があります。
proxyタブのsettingsでデフォルトの127.0.0.1:8080を選択し、
左側のEditをクリックして、2 番目のオプションAll interfacesに変更します。

これにより、ローカル以外のipのresponseもインターセプトできます。
pikachu ターゲットのトークンフォームのブルートフォース攻撃#
プロキシを設定した後、ブルートフォース攻撃のターゲットであるtoken防爆破?ターゲットを選択します。
インターセプトを開始し、任意のデータを入力し、burpがデータパケットをインターセプトします。

F12を押してソースコードを確認すると、token値がloginフォームの下に書かれていることがわかります。

右クリックしてリクエストパケットを Intruder に送信します。
token値はパスワードにのみ関連していると推測し、クリアしてから
passwordとtoken値のみを選択し、攻撃モードAttack typeをPitchforkに設定します。

optionsタブでGrep - Extractを見つけて、Addをクリックします。
Refetch responseをクリックしてリクエストを行うと、レスポンスメッセージが表示され、抽出する文字列を選択します。
上記のフィールドには、開始および終了の識別子が自動的に入力されます。

payloadsタブに切り替えて、最初のpayloadをSimple listに設定します(辞書モード)。

下部に辞書を追加し、2 番目のpayloadをRecursive grepに設定します。

payloadにRecursive grepオプションがある場合、スレッドはサポートされず、オプションでスレッドを 1 に変更します。
スレッドが 1 の場合、問題ありません。burpはパケットを高速に送信します。右上のAttackをクリックして攻撃を開始します。

ブルートフォース攻撃に成功しました!
本文終わり。