ENV:🧱 ホストブラウザの通信を,WSL2上のNixOSで動作するBurpsuiteでインターセプトする方法
ENV:🧱 ホストブラウザの通信を,WSL2上のNixOSで動作するBurpsuiteでインターセプトする方法
WSL2上のNixOSで,名前付きdevshell内で使用しているburpsuiteでホストブラウザの通信をインターセプトする方法
Request Listeners の変更 (恒久的)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(pkgs.writeShellScriptBin "burpsuite" ''
# 一時ディレクトリに設定用JSONを書き出す
CONFIG_FILE="/tmp/burp_proxy_all_interfaces.json"
cat <<EOF > "$CONFIG_FILE"
{
"proxy":{
"request_listeners":[
{
"certificate_mode":"per_host",
"listen_mode":"all_interfaces",
"listener_port":8080,
"running":true,
"support_http2":true
}
]
}
}
EOF
# 元のburpsuiteバイナリを、生成した設定ファイルを付与して実行
exec ${pkgs.burpsuite}/bin/burpsuite --config-file="$CONFIG_FILE" "\$@"
'')
CA証明書のインポート
https通信でも傍受できるように,127.0.0.1:8080 にアクセスして証明書をダウンロードし,使用しているブラウザにインポートします. 必ず,信頼されたルート証明機関 としてインポートします.
また,このままではWSL2が再起動したときに割り当てられているIPが変更されてしまいます. 毎回,設定しなおすのは面倒なのでネットワークのミラー化を行います.
WSL2 ミラー化ネットワークの有効化
ミラーモードを使用することで,WindowsホストとWSL2がネットワークインターフェースを完全に共有することができます. このおかげで,127.0.0.1:8080 を介したインターセプトが可能になります.
C:\Users\<username>\.wslconfig
[wsl2]
networkingMode=mirrored
1
PS:> wsl --shutdown
Foxy Proxy の設定
Foxy Proxy に,設定を行えば完了です. タブ上部の ping を使って正常なレスポンスが返れば使用できます.
This post is licensed under CC BY 4.0 by the author.
