android:allowbackup="true"

 

 1 <application
 2         android:allowBackup="false"
 3         android:label="@string/app_name">
 4     <activity android:name="LoginActivity"
 5               android:label="@string/app_name">
 6         <intent-filter>
 7             <action android:name="android.intent.action.MAIN"/>
 8             <category android:name="android.intent.category.LAUNCHER"/>
 9         </intent-filter>
10     </activity>
11     <activity android:name=".HomeActivity"/>
12 </application

 

<application android:allowBackup="false">

    是否容許備份應用的數據,默認是true,當備份數據的時候,它的數據會被備份下來。若是設爲false,那麼絕對不會備份應用的數據,即便是備份整個系統。html

 

1.allowBackup安全風險描述

Android API Level 8及其以上Android系統提供了爲應用程序數據的備份和恢復功能,此功能的開關決定於該應用程序中AndroidManifest.xml文件中的allowBackup屬性值[1] ,其屬性值默認是True。當allowBackup標誌爲true時,用戶便可經過adb backup和adb restore來進行對應用數據的備份和恢復,這可能會帶來必定的安全風險。android

Android屬性allowBackup安全風險源於adb backup允許任何一個可以打開USB 調試開關的人從Android手機中複製應用數據到外設,一旦應用數據被備份以後,全部應用數據均可被用戶讀取;adb restore允許用戶指定一個恢復的數據來源(即備份的應用數據)來恢復應用程序數據的建立。所以,當一個應用數據被備份以後,用戶便可在其餘Android手機或模擬器上安裝同一個應用,以及經過恢復該備份的應用數據到該設備上,在該設備上打開該應用便可恢復到被備份的應用程序的狀態。安全

尤爲是通信錄應用,一旦應用程序支持備份和恢復功能,攻擊者便可經過adb backup和adb restore進行恢復新安裝的同一個應用來查看聊天記錄等信息;對於支付金融類應用,攻擊者可經過此來進行惡意支付、盜取存款等;所以爲了安全起見,開發者務必將allowBackup標誌值設置爲false來關閉應用程序的備份和恢復功能,以避免形成信息泄露和財產損失。app

2.allowBackup安全影響範圍

Android API Level 8以及以上系統spa

3.allowBackup安全風險詳情

1)allowBackup 風險位置:

AndroidMannifest.xml文件android:allowBackup屬性;調試

2) allowBackup風險觸發前提條件:

未將AndroidMannifest.xml文件中的android:allowBackup屬性值設爲false;rest

3) allowBackup風險原理:

當allowBackup標誌值爲true時,便可經過adb backup和adb restore來備份和恢復應用程序數據;code

 

 

推薦兩篇文章:http://www.freebuf.com/articles/terminal/60778.htmlxml

      https://www.secpulse.com/archives/5228.htmlhtm

相關文章
相關標籤/搜索