Android备份漏洞挖掘与利用实战

本文详细分析了Android备份漏洞的成因、检测方法和利用过程。通过检查AndroidManifest.xml中的allowBackup配置,使用adb工具备份应用数据,并利用Android Backup Extractor提取敏感文件,演示了如何利用该漏洞获取应用内部存储数据。

Android移动应用备份漏洞

摘要

大家好,今天我将分享关于Android备份漏洞的内容,这是我在对Android应用进行渗透测试时经常发现的漏洞之一,特别是在移动应用中。我写这篇文章是因为受到了这个博客的启发。现在让我们直接进入讨论。

什么是Android备份漏洞?

Android备份漏洞是指应用程序允许备份的漏洞。如果同一个应用程序存在不安全数据存储漏洞,这个漏洞将非常有影响,因为应用程序的内部文件可以在无需root权限的情况下被窃取,尽管Android设备必须开启USB调试。

如何寻找备份漏洞?

检查AndroidManifest.xml文件并高亮显示android:allowBackup文本。如果android:allowBackup = "true",这意味着应用程序容易受到Android备份漏洞的攻击;反之,如果值为false,则意味着Android应用程序不易受到Android备份漏洞的攻击。这很简单,对吧?好的,继续演示。

演示步骤

第一步:解压应用

使用jadx解压应用程序,然后打开AndroidManifest.xml文件,该文件通常位于Resources目录中。

解压应用

第二步:备份应用数据

使用adb(Android调试桥)工具,我们尝试备份应用程序文件夹,命令大致如下。不要忘记通过USB或无线连接adb。

1
2
3
4
adb backup -f <backup-name.ab> <app-package-name>
adb backup -f application com.app.info

// 创建密码:12345678

备份应用

第三步:提取备份数据

使用ABE(Android备份提取器)将.ab文件转换为.tar文件以便提取。如下图所示,可以获取应用程序的内部文件夹。在转换abe工具时,它会要求输入我们之前创建的密码。

提取数据

提取结果

参考资源

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计