LoginSignup
6
1

More than 1 year has passed since last update.

Burp suite を使って iPhone アプリを診断した時に困ったことと、解決方法

Last updated at Posted at 2016-12-15

概要

Webアプリケーション脆弱詩診断の業務に携わっています。
診断時に特定のドメインだけ通信が取れなくて困った事があったので、備忘録として残します。

(2019/04/09 追記)
時が経ち、有線LANに接続できるMacが手元にないので追記しました。

スライド

2016/11/18 に、Burp Suite Japan LT Carnival に登壇させていただいたときの資料になります。
こちらもどうぞご覧ください。
Burp suite を使って iPhone アプリを診断した時に困ったことと、解決方法

通信が取れなくなった原因

プロキシ設定が無視されてるのではと考えていますが、特定できず…

解決方法

Macの機能を使いました。

インターネット共有

  1. Macを有線LANに接続
  2. システム環境設定 > 共有 > インターネット共有 > Wi-Fiの設定 > インターネット共有開始
  3. iPhoneからMacに無線LANで接続

有線LANへ接続できない場合、モバイルルーターのUSBテザリング機能で代替可能でした。

検証時の環境は下記です。

  • PC
    • MacBook Pro 15インチ 2015
  • モバイルルーター

手順は下記です。

  1. Aterm MR05LN の設定を変更します。
    設定 > LAN側設定 > USBテザリング機能OFF→ON でテザリング機能を有効化できました。
  2. PC と Aterm MR05LN をUSB接続して、テザリングします。
  3. システム環境設定 > 共有 > インターネット共有 > Wi-Fiの設定 > インターネット共有開始
  4. iPhoneからMacに無線接続

※CatalinaでUSBテザリングができない場合、Mac側にドライバが必要かもしれません。
HoRNDIS: USB tethering driver for Mac OS X | Joshua Wise's domain の HoRNDIS-9.2.pkg をいれたら動きました。

※USBテザリングで追記。
Catalinaだとインストール途中でエラーを吐くようになったので、下記を使っています。(Big Surでは使えないようなので注意)
HoRNDIS-9.2-catalina_install.pkg.zip

※USBテザリングで追記。その2。
Big Surの場合は下記を参照のこと
Big SurにアップデートしたHoRNDISを再インストールする

パケットフィルタ

設定ファイルを作成します。

pf_burp.conf
rdr inet proto tcp from any to port 80 -> 127.0.0.1 port 8080
rdr inet proto tcp from any to 診断対象のIPアドレス port 443 -> 127.0.0.1 port 8080
rdr inet proto tcp from any to any port 443 -> 127.0.0.1 port 8081

ターミナルからパケットフィルタを起動します。

% sudo pfctl -ef pf_burp.conf

あとはBurpを3つ起動して通信を取得するだけです。

# port os 備考
Burp1 8081 Mac 診断対象外
SSL Path Throughで通信を取得しない
Burp2 8080 Mac 診断対象
Burp3に通信をリダイレクト
Burp3 8080 Win 通常通り診断

参考リンク

6
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1