转载请标明出处: <a href="http://blog.csdn.net/djy1992/article/details/73168865" target="_blank">http://blog.csdn.net/djy1992/article/details/73168865</a> 本文出自:【奥特曼超人的博客】
Xposed Hook ,逆向常用之一。
有人经常问,方法名不在原包名下怎么办,也就是被加密过的包名路径,如 <code>com.immqy.a / com.immqy.com.b</code> , 一般我们会先找包名,再去干出方法名,可是加密了呢?
包名类名加密要如何hook?多dex如何查找对应的方法?
先来看第一种:
会出现 java.lang.NoSuchMethodError,这是因为什么?
先来看看Hooking Android App 的Hook关键点实现Hook模块的注意点:
实现 IXposedHookLoadPackage接口
确定要Hook的Android App的包名
判断要Hook的包名
确定要Hook的AndroidApp的方法
findAndHookMethod 语法:
find 的去包名+类名,这里是缺少了包名 <code>“com.immqy”</code>,记得是 manifest 里的 packageName 。
现在的APP常用的会分dex,这种需要先去hook Application的attach方法,然后再hook第二个dex的方法,其实更像是手动去找,为什么需要attach,因为attach方法的参数里带有上下文的context,如果用xposed去hook非默认dex文件的类就会发生ClassNotFoundError,要解决这个问题,我们需要拿到对应dex文件的上下文环境。
解决方案:
(如有 错误或者更优方法欢迎指出)
|| 版权声明:本文为博主杜锦阳原创文章,转载请注明出处。