Skip to main content

Insecure service configuration - ADB Backups

Description

The application allows backups via ADB (Android Debug Bridge). The backups performed by this functionality are not encrypted. Sensitive data of authenticated users can be included in the backup, and this data can be extracted by a non-authenticated attacker. Additionally, data can be copied into a USB stick and be moved out of the sphere of control of the application.

Impact

Leak sensitive information through backups.

Recommendation

Configure the attribute: application.android:allowBackup to false in the file: AndroidManifest.xml.

Threat

Unauthorized attacker with the APK installed in a device.

Expected Remediation Time

โŒš 60 minutes.

Score

Default score using CVSS 3.1. It may change depending on the context of the vulnerability.

Base

  • Attack vector: L
  • Attack complexity: L
  • Privileges required: N
  • User interaction: N
  • Scope: U
  • Confidentiality: L
  • Integrity: N
  • Availability: N

Temporal

  • Exploit code madurity: P
  • Remediation level: O
  • Report confidence: R

Result

  • Vector string: CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N/E:P/RL:O/RC:R
  • Score:
    • Base: 4.0
    • Temporal: 3.5
  • Severity:
    • Base: Medium
    • Temporal: Low

Code Examples

Compliant code

<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:sharedUserId="android.uid.system" android:versionCode="4" android:versionName="1.0" package="com.android.zerosms">
<uses-permission android:name="android.permission.SEND_SMS"/>
<application android:label="@7F040001" android:icon="@7F020002" android:allowBackup="False">
</application>
</manifest>

Non compliant code

The application manifest does not allow backup

<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:sharedUserId="android.uid.system" android:versionCode="4" android:versionName="1.0" package="com.android.zerosms">
<uses-permission android:name="android.permission.SEND_SMS"/>
<application android:label="@7F040001" android:icon="@7F020002">
</application>
</manifest>

Requirements