AndroidプロパティallowBackupセキュリティリスク分析
Android Property Allowbackup Security Risk Analysis
1.allowBackupのセキュリティリスクの説明
Android APIレベル8以上のAndroidシステムは、アプリケーションデータのバックアップおよびリカバリ機能を提供します。この機能の切り替えは、アプリケーションによって決定されます。AndroidManifest.xml
属性値がデフォルトでTrueであるファイル内のallowBackup属性の値。 allowBackupフラグがtrueの場合、ユーザーはadbbackupおよびadbrestoreを使用してアプリケーションデータをバックアップおよび復元できます。これにより、特定のセキュリティリスクが発生する可能性があります。
Android属性allowBackupadbバックアップによるセキュリティリスクにより、USBデバッグスイッチをオンにできる人なら誰でも、Androidフォンから周辺機器にアプリケーションデータをコピーできます。アプリケーションデータがバックアップされると、ユーザーはすべてのアプリケーションデータを読み取ることができます。adbrestoreallowユーザーは、復元されたデータソース(つまり、バックアップされたアプリケーションデータ)を指定して、アプリケーションデータの作成を復元します。したがって、アプリケーションデータをバックアップする場合、ユーザーは同じアプリケーションを他のAndroidスマートフォンやエミュレーターにインストールでき、バックアップしたアプリケーションデータをデバイスに復元することで、デバイスでアプリケーションを開くことでアプリケーションを復元できます。バックアップされているアプリケーションのステータス。
特にアドレスブックアプリケーションの場合、アプリケーションがバックアップおよびリカバリ機能をサポートすると、攻撃者はadbbackupおよびadbrestoreを介して新しくインストールされた同じアプリケーションを復元し、支払い金融アプリケーションのチャットレコードやその他の情報を表示できます。したがって、悪意のある支払い、盗まれた預金など、セキュリティ上の理由から、開発者はallowBackupフラグの値をfalseに設定して、アプリケーションのバックアップとリカバリをオフにし、情報の開示と資産の損傷を回避する必要があります。
2.allowBackupのセキュリティ影響範囲
AndroidAPIレベル8以上。
3.allowBackupのセキュリティリスクの詳細
- allowBackupリスクの場所:
AndroidMannifest.xml
ファイルandroid:allowBackup
属性 - allowBackupリスクトリガーの前提条件:not
AndroidMannifest.xml
ファイル内android:allowBackup
プロパティ値はfalse
に設定されます - allowBackupリスクの原則:allowBackupフラグの値がtrueの場合、アプリケーションデータはadbbackupおよびadbrestoreを介してバックアップおよび復元できます。
4.allowBackupの詳細なリスクPOC
-
入っていない
AndroidManifest.xml
このファイルは、デフォルト値であるallowBackupプロパティの値を設定します。true
、アプリケーションは、adbコマンドを使用してアプリケーション全体のデータをバックアップできます。AndroidManifest.xmlファイルの内容:
allowBackup.ab
下の左の図に示すように、POCアプリケーションが起動された後、およびログイン後、次の図が表示されます。
アプリケーションがadbコマンドを使用してログインした後、アプリケーションデータをバックアップします。
著者NikolayElenkov Android Backup Extractorによって作成された復号化されたプログラムは、バックアップされたファイルを復号化します
AndroidManifest.xml
、以下に示すように、POCアプリケーションのデータ(ログインユーザー名とパスワード)を知ることができます。別のAndroidスマートフォンで、POCアプリをインストールしてから、新しくバックアップしたアプリを復元して、バックアップしたデータを復元してログインします。
データを復元する前に:
データを復元した後、ユーザー名とパスワードを入力せずに、データを復元して[データを復元]をクリックし、アプリケーションアイコンをクリックして、ログインステータスを直接入力します。
-
で
false
ファイル表示設定allowBackup属性値android:allowBackup='false'
、つまり“android:allowBackup”
の場合、Androidアプリはadbコマンドを使用してアプリ全体のデータをバックアップおよび復元することはできません。AndroidManifest.xmlファイルの内容:
“false”
下の左の図に示すように、POCアプリケーションが起動された後、およびログイン後、次の図が表示されます。
アプリケーションがadbコマンドを使用してログインした後、アプリケーションデータをバックアップします。
次の図に示すように、バックアップファイル「allowBackup.ab」を復号化すると、POCアプリケーションのバックアップのデータが空になるため、バックアップは失敗します。
別のAndroidスマートフォンで、POCアプリケーションをインストールし、バックアップされたデータを復元して、新しくバックアップされたデータをログイン状態に復元します。
データを復元する前に:
データを復元した後、アプリを再度開いて、直接ログインステータスがないことを確認します。
5.allowBackupリスク修復の提案
セキュリティ上の理由から、Alibaba Securityはアプリケーションのバックアップ機能をオフにすることをお勧めします。AndroidMenifest.xmlファイルでは、対応するコンポーネントは
になります。次の例に示すように、プロパティはに設定されます。