1. 问题说明

如果 APP 中有调试日志函数,那么可能输出重要的日志文件,其中包含的信息可能导致客户端用户信息泄露,暴露客户端代码逻辑等。

2. 测试步骤

使用 DDMS/adb logcat 命令查看 APP 的日志输出,检查输出的日志信息中是否包含敏感信息。

2.1 进入 adb 调试

关于 adb 调式和 Drozer 的使用后门会专门出文章进行讲解。

当输入 adb devices 后会看到连接的设备。
logcat 日志检查 - 图1

接成功后再输入 adb logcat 使用 adb 调试 Andoid 的查看日志。

如果出现了中文乱码则说明字体格式不正确(目前只存在于 Windows 系统上),解决办法为在 CMD 命令行下输入 chcp 65001,此时当前代码页使用的就是 UTF-8 编码了。

补充部分字符编码对应代码:

  • 65001:UTF-8
  • 936:简体中文
  • 950:繁体中文
  • 437:美国/加拿大英语
  • 932:日文
  • 949:韩文
  • 866:俄文

2.2 查看日志

在成功打印出日志后,在目标 APP 上进行操作,看是否会把敏感信息打印在日志中,如:登录的账号密码,个人的敏感信息,敏感接口等。
logcat 日志检查 - 图2

3. 修复建议

关闭 APP 中调试日志函数调用,或者确保日志正确输出,涉及敏感数据的日志信息在发布版本中被关闭。