作者:FloatingGuy 转载请注明出处:https://floatingguy.github.io/


记录 在动态调试 app 中 gif库解析漏洞是使用的工具 和 遇到的一些坑, 分析漏洞只是顺带一提不作为重点。

JEB2.2.7 调试阿里2016移动安全 第三题-app部分

说明:

1. app debugable 开关关闭。我采用刷ROM(userdebug 版本)的方式绕过。
2. 测试手机: Nexus 5x
3. Android 版本: 6.0.1

工具:jeb-v2.2.7
需要配置的环境变量:JEB_HOME 和 ANDROID_SDK。

bug 统计

  1. jeb动态调试BUG:
    ANDROID_SDK配置完全正确,但是每次 debug 时都显示找不到 ADB

原因:我是通过Alfred 通过开启的 jeb.app, 这种方式访问不到环境变量所以找不到 ADB。
解决:

1. 可以通过写脚本,每次在终端执行  (完成 jeb_debug...sh)
2. 到 jeb目录下执行 jeb_mac.sh

jeb注意事项:

1. 只有在 bytecode view时才可以 debug
2. 视频中可以从 art 指令直接跳转到 so汇编中执行,但是我本次测试时不行。。。
3. localval 窗口显示的只有 数字没有字符不知道怎么对应。

jeb 快捷键:

* 下断点:cmd+B
* 反编译:q
* 后退/前进: alt+ ←/→

题目注意事项

在上传 gif 解析时,app中将 URL 强制从URLConnection转换成了 HTTPURLConnection类型,所以我们json文件中的address值必须包含http://否则会抛出MalformedURLException异常

参考文献

AN INTRODUCTION TO JEB ANDROID DEBUGGERS
ADVANCED DEBUGGER USAGE VIA THE INTERPRETER