私の論文では、Androidアプリで漏洩する個人データを分析しようとしています。データの大部分が暗号化されていることに気付きました。
このデータを復号化せずに分析するにはどうすればよいですか?
Rory、デバイスからこの種の情報を取得する1つの方法は、アプリの機能が何を参照しているかを読み取るためにバイナリインストルメンテーションを使用することです。
Fridaは、これを行うのに役立つツールキットです。詳細については、こちらを参照してください https://www.notsosecure.com/pentesting-Android-apps-using-frida/ 。関数内で何が起こっているのかを確認したり、それらをまとめて書き直したりできるように、バイナリを逆コンパイルしてガジェットを追加してから再コンパイルすることで機能します。
Drozerは、別のアプリの観点からアプリを見るのに役立つ別のツールキット(無関係)です。ここを参照してください: https://resources.infosecinstitute.com/Android-penetration-tools-walkthrough-series-drozer/#gref 。 Android=データベースの場合、アプリのエクスポートされた関数を使用してdbを直接クエリする場合に使用できます。
これがあなたの質問に関連するものかどうかはわかりませんが、注意しておくべきだと思いました。暗号化されたデータの機密性を侵害せずに分析することは困難です。これを行うための計算上安全な方法を考えることができる唯一の方法は、TEEを使用してデータを復号化および分析し、分析をユーザースペースに送信し、TEEのデータを再暗号化してメモリを消去することです。こうすることで、マルウェアがデータにアクセスする可能性のあるユーザー空間での復号化とは対照的に、安全なデータに対するすべての計算が、暗号的に安全な隔離されたプロセッサー空間で行われます。これは役に立ちますか?