审计Android应用程序以确定哪些应用程序截取屏幕截图活动

6次阅读
没有评论

问题描述

最近安装并运行了DiskDigger以恢复被意外删除的图像,发现有大量屏幕截图记录,这些截图来自用户的活动,包括聊天应用和比特币钱包等敏感应用。用户希望了解哪些应用程序截取了这些屏幕截图,并希望获得详细的审计方法。

解决方案

方案1:撤销所有应用程序的root权限

注意:此操作可能会影响部分应用程序的功能,请谨慎执行。

步骤1:撤销所有应用程序的root权限

  1. 打开终端或ADB shell。
  2. 使用命令adb shell pm list packages -3列出所有具有root权限的应用程序。
  3. 对每个具有root权限的应用程序执行adb shell pm clear <package_name>命令撤销其root权限。
  4. 重启设备以确保更改生效。

方案2:监控磁盘写入活动

步骤1:安装inotifywait-for-Android

  1. 下载inotifywait-for-Android源码。
  2. 使用NDK编译源码,生成可执行文件。
  3. 将生成的可执行文件传输到设备上。
  4. 使用命令./inotifywait-for-Android -m /path/to/folder监控指定文件夹的写入活动,记录每次写入的时间戳、负责的应用程序名称和文件名。

方案3:替换screencap工具

  1. 下载并编译screencap工具的替代版本。
  2. 使用adb push命令将替代版本的screencap工具推送到设备。
  3. 修改系统环境变量,使screencap工具指向新版本。

方案4:使用SELinux策略进行审计

注意:此方法需要设备支持SELinux,并且Google有意使此过程变得困难。
1. 检查SELinux状态:adb shell getenforce
2. 设置SELinux为permissive模式:adb shell setenforce 0
3. 使用sealert工具或其他SELinux审计工具监控应用程序的文件访问行为。

方案5:使用第三方审计应用

  1. 查找并安装提供类似功能的第三方审计应用。
  2. 通过应用界面或日志查看应用程序的文件访问记录。

方案6:分析最近应用切换器

根据回复2的信息,屏幕截图可能来源于Android内置的“最近应用”切换器。用户可以通过查阅相关文档或博客进一步了解具体原因。

通过上述方法,用户可以逐步排查并确定哪些应用程序截取了屏幕截图。建议结合多种方法进行综合审计,以确保结果的准确性。

正文完