Androidアプリは、インストールした他のアプリから保存されたパスワードを盗むことができますか?
スナップチャットを使用していて、一度ログインするとログインしたままになるとしましょう。後でそのアプリからキャッシュを削除すると、ログアウトされます。
保存されているパスワードは脆弱ですか?
ようこそアルフレド:)
いいえ。Androidアプリは、オペレーティングシステムの自分のユーザーの内部に「サンドボックス化されています。」したがって、Snapchat/you Androidバージョンに特定の脆弱性がない限り、スマートフォンを更新した場合、これは起こりません)、他のアプリは保存されたパスワードを取得できません。
AndroidはLinuxオペレーティングシステムに基づいています。したがって、アプリを相互に隔離し、アプリとシステムを悪意のあるアプリから保護します。これを行うには、Androidが一意のユーザーIDを各Androidアプリケーションに割り当てます。これは、特に定義されていない限り、すべてのアプリケーションファイルが保護され、この特定のアプリケーション(ユーザーID)。
Androidは、アプリがトークンとパスワードを安全に保存するために アカウントマネージャー も実装しました。つまり、これはオペレーティングシステム自体によって管理される暗号化されたDBであり、すべてのアプリはそれを使用してトークン/パスワードを安全な方法で保存できます。
パスワードを保存することで何を意味するかによって異なります。これは、SharedPreferences、sqliteデータベース、ファイルベースのストレージなどのデータを永続化する各アプリによって実行されます。または、システムによって提供されるAndroidキーストアを参照している可能性があります。
最初のケース(SharedPreferences、sqliteなど):設計上、各アプリは独自のサンドボックスにあると想定されています。他のアプリはデータにアクセスできません。保護はLinuxの権限に基づいています。ただし、脆弱性があるため、近年SELinuxが使用されており、Androidのバージョンごとに権限が厳しくなっています。たとえば、通常のアプリがアクセスできるシステムデータはますます制限されています。
2番目のケースでは、Androidシステムによって管理されるため、より安全であると考えることができます。
ただし、Androidデバイスを見つけることは非常に一般的です。ルート化のプロセスにより、保護の多くが削除されるため、Androidキーストアと他のアプリデータは銀行のアプリなどの一部のアプリやPokemon Goなどのゲームでは、ルート検出機能を実装して、アプリがルート化されたデバイスで実行されないようにします。