web-dev-qa-db-ja.com

プログラムでネットワークトラフィックをキャプチャします(ルートなし)

Wi-Fiまたはモバイルネットワークからのデバイスのすべてのネットワークパケットのトラフィックをプログラムでキャプチャできるリソースまたはライブラリを見つけようとしています。すべてのネットワークトラフィックをキャプチャできる このアプリ がPlayストアにあるため、 rootのサメ が要求するため、この無差別モードにするためにrootである必要はないと思います( rootでなくてもSSLをMITMで復号化できます。私は単に同じことをする方法を理解することができません。

私の質問は、このアプリはどのようにしてこのキャプチャを達成したのですか?彼らはどのAPIを使用しましたか?

ご協力ありがとうございました。

10
E-Kami

Android rootなしのAndroid $ ===はループバックです VPNService )でのパケットスニッフィングへの事実上のアプローチ。VPNServiceアプリを作成してアクティブ化すると、デバイス内のすべてのトラフィックがユーザースペースアプリケーションによって管理される新しく作成された仮想インターフェイスを通過します。ここで、仮想インターフェイスから読み取ることによってIPパケットを受信します。

あなたはグーグルからそれのための簡単なコードサンプルをチェックすることができます ここ

完全に機能するサンプルプロジェクトを確認できます ここ

17
Kariem