Android APK包 调试输出检测


为什么要看调试信息

在对apk包测试安全的时候,可以使用Android Studio的Locat功能查看一下这个apk包的调试信息,主要是查看APK发布版本为release版本时,是否输出带有敏感数据的调试信息。

环境准备

  1. Android Studio
    1552062-20181228103315559-2108515431.png

  2. 华为手机
    华为手机连接PC需要安装华为自家的程序“华为手机助手”
    1552062-20181228103305844-578595047.png

  3. 某apk包
    xxx.apk (只能是Android debug包,因为打了release包,是不会输出日志了)

使用流程

能正常使用Android Studio是接下来流程的前提。

1552062-20181228104702335-947349795.png

  1. 选择Logcat面板
  2. 选择你的apk包名
    这里一般只能选择 Android debug 包,同一个包有以下两种信息输出:
    com.xxx.xxx 选择查看该应用程序的输出信息
    com.xxx.xxx : pushservice 选择查看该应用程序的推送输出信息
  3. 选择输出信息的等级(androi调试输出分为5个级别,详细请查百度)
    3-1. [V]:详细(Verbose)信息,输出颜色为黑色
    3-2. [D]:调试(Debug)信息,输出颜色是蓝色
    3-3. [I]:通告(Info)信息,输出颜色为绿色
    3-4. [W]:警告(Warn)信息,输出颜色为橙色
    3-5. [E]:错误(Error)信息,输出颜色为红色
  4. 默认先选择 Show only selected application ,表示只看这个应用程序的输出(过滤后面说)

这里输出一些通告信息、警告信息、错误信息,其中错误信息是OkHttp这个组件报错输出的,可以通过这个报错信息里面保存的日志文件,查看里面是否有程序的敏感信息输出。

Edit Filter Configuration

1552062-20181228104046776-504096601.png

1552062-20181228103731242-1590517539.png
Fileter Name 得先写一个名字,保存;
勾选了Regex 表示可以正则匹配;
这里案例只匹配 "log"字符,表示只输出包含"log"字符标签的全部输出信息,并显示在logcat面板。

Log Tag 和 Log Message 的区别在哪?

我们先看看 Android是怎么输出调试信息的:

protected void onStart() {
    super.onStart();
    Log.i("log001", "output string hello world");
}
// Log.i  就是是上面说的I等级。(通告(Info)信息,输出颜色为绿色)
// log001 就是输出信息时自定义的一个标签,我这里定义为log001
// "output string hello world" 就是message信息

了解了Log Tag ,那么理解Log Message 也不难了,Log Message 就是指输出的实体的输出信息,详细如下图:
1552062-20181228113148388-2060411043.png

转载于:https://www.cnblogs.com/mysticbinary/articles/10092818.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值