web-dev-qa-db-ja.com

Sniff Android and IOSアプリトラフィックのプライバシー監査

アプリからのHttpおよびHttpsトラフィックをスニッフィングして、アプリが誰とデータを共有しているか、アプリが共有しているデータを確認する方法を見つけようとしています。この情報は、プライバシーポリシーが正しいことを通知しているかどうかを監査するために使用する必要があります。このソリューションは、WindowsとOS Xの両方で実行可能でなければなりません。

これまでのところ、charlesproxy(OS XおよびIphone)を試しましたが、プロキシを設定するたびに、テストしているアプリからインターネットに接続できません。誰かがこれを引き起こす可能性があることを知っていますか?それとも私が試すべきもっと良い設定はありますか?

2
Jonas Andersen

Charlesproxyからの証明書をAndroid/IOSデバイスにインストールしましたか?いいえの場合、TLSハンドシェイクは失敗し、接続はありません。 「はい」の場合、アプリが証明書/秘密鍵のピン留めを使用している可能性があります。接続を傍受することが非常に難しい場合。

Androidの場合、ルート( https://www.genymotion.com/ )を使用してAndroid-Emulatorをセットアップし、xposedフレームワークをインストールできます。モジュールもあります。 validation-funktionをフックしますが、これはcertificat-pinningを実装するすべての方法で機能するわけではありません。

APKファイルを逆アセンブルして、コードにパッチを適用することもできます。その後、コードを再構築してアプリをインストールできます。

1
spitzbuaamy

Troy Huntは、彼のPluralsightビデオ「Hack yourself first」でフィドラーの使用を提唱しています。 こちらをご覧ください

したがって、PCにFiddlerをインストールし、インターネット接続を電話に共有すると、トラフィックフローを確認できます。 HTTPSは当然暗号化されます。

私はカーリーを使い、ターゲットとゲートウェイをarpspoofしてからwiresharkを開きます

1.Kaliを開き、ネットワークに接続します

2.インターフェースを特定する(eth0またはwlan0)

3. nmapを使用してターゲットのIPアドレスを特定します。また、ゲートウェイアドレスを確認してください。

例:

nmap 192.168.1.0/24
  • ターゲットが192.168.1.50であるとしましょう
  • ゲートウェイが192.168.1.254であるとしましょう

4. ipトラフィックを転送するようにkaliボックスをセットアップする

echo 1 > /proc/sys/net/ipv4/ip_forward

必ずターゲットをarpspoofに含めてください。そうしないと、ネットワーク全体が汚染されて、時間が悪くなります

5.ゲートウェイをaprspoofして、MACアドレスをターゲットのIPアドレスに関連付けるように指示します

arpspoof -i wlan0 -t 192.168.1.254 192.168.1.50

6.ターゲットをarpsoofし、IPをゲートウェイのMACアドレスに関連付けるように指示します。

arpspoof -i wlan0 -t 192.168.1.50 192.168.1.254

7. Wiresharkを開いてインターフェースを使用する(この例ではwlan0)

8.利益

-補足として、HTTPS経由で送信されているものを確認したい場合は、この時点からSSLストリップするのも簡単です。

arpspoofing(私のサイトではありません)について詳しくはこちら)

0
Anthony Russell