Dalvik方法调用的字节码分析——逆向安卓 QQ 时小问题引起的思考

QQ 出了表情骂人的 bug 后,随手逆了一下,过程中发现有些调用过程颠覆了我的三观,出现了同名同参数、返回值不一样的两个方法,这样代码编译都不过,为什么会正常运行呢?

继续阅读“Dalvik方法调用的字节码分析——逆向安卓 QQ 时小问题引起的思考”

为FlowDroid加上addJavascriptInterface分析(下)(未完待续)

其实我们最初的目的已经实现了,本文讲如何实现对callback的精准标记Source,最后讲一下对整个FlowDroid代码的理解和评价。

继续阅读“为FlowDroid加上addJavascriptInterface分析(下)(未完待续)”

为FlowDroid加上addJavascriptInterface分析(中)

接上篇,上篇主要遇到问题是Source无法对Parameter进行标记,本文两部分,第一部分讲如何加上标记并且完成整个CFG(隔的时间太长了,不大记得这个操作了),第二部分讲通过加入Callback的方式让JSInterface的代码变得可达,并且成功实现预期。

继续阅读“为FlowDroid加上addJavascriptInterface分析(中)”

为FlowDroid加上addJavascriptInterface分析(上)

接上篇,上篇末尾提到FlowDroid本身是扫不到webview的js远程调用的,因为原理上讲带有JavascriptInterface注解的代码是不可达的,本文讲一下为如何从零开始,通过修改源码的方式,对FlowDroid进行修改和拓展。

继续阅读“为FlowDroid加上addJavascriptInterface分析(上)”