美文网首页
重写一个Xposed帮助类过某些检测以及保护自己的xposed插

重写一个Xposed帮助类过某些检测以及保护自己的xposed插

作者: 吉凶以情迁 | 来源:发表于2019-03-15 23:20 被阅读0次

    研究背景

    1.需要把自己插件的xposed hook点代码进一步隐藏,免得用户攻击我的app分析我写的啥。
    2.对抗某些app等通过de.robv.android.xposed.XposedBridge中的
    psHookedMethodCallbacks = new HashMap();以及
    de.robv.android.xposed.XposedHelpersmethodCache字段和fieldCache字段来判断插件是否hook了自己应用的某些类。
    3.对于de.robv.android.xposed.XposedBridge.disableHooks字段的修改,你可以包裹一层,然后时时刻刻打开hook功能即可,谋求这个东西没法通过这个sdk过,和xposed官方源码有关系。

    此工具在xposed环境使用,也就是需要依赖···de.robv.android.xposed.XposedBridge···
    本工具类绕过了···de.robv.android.xposed.XposedHelper···的调用 绕过了de.robv.android.xposed.XposedBridge的某些代码执行,因此有如下作用。

    作用一:

    众所周知,朋友们习惯用Xposed作者提供的XposedHelper进行hook相关类,这样导致的问题是 防护安全的开发人员可以通过反射XposedBridge 拿到sHookedMethodCallbacks 检查是否hook了自己的应用。

    作用二:

    某些喜欢看别人xposed源码的朋友喜欢习惯性的搜索XposedHelper/XposedBridge/XC_MethodHook 来搜寻你的app里面的代码,这将导致你的hook点代码很容易被暴露,这里套了一层代码,增加难度,配合混淆使用效果更好,即便他知道混淆成了a,搜索a也会出现一大堆a类。
    另外打开一个hook点的代码进行阅读,它看起来还是吃力一点了,压根不知道哪些是hook的代码。

    作用三:

    你也可以使用此sdk工具包 hook别人的xposed插件,因为走的逻辑不一样,不会死循环,你可以hook别人的XposedHelper.findAndHookMethod等方法,
    不过我这和初衷矛盾了,这个东西是个好东西,怎么用看你自己。嘿嘿嘿!
    对于这种用户,我给的方法是自己再封装一层,寻找class通过c层寻找,hook代码也可以在c层做,增加难度。

    用法:

        api files("libs/xposed_alias_killer.jar")   
    

    hook某个方法和官方一样的用法,只是包名改了而已,你可以快速的替换,全局搜索

    import de.robv.android.xposed替换为import cn.qssq66.xposed

    替换完毕后打包你可以混淆此类哦!

    作者:qssq666
    邮箱:qssq666@foxmail.com qssq521@gmail.com

    下载地址

    链接:https://pan.baidu.com/s/1bFv0ouAAeuI57ckUdNIalQ
    提取码:01e0

    相关文章

      网友评论

          本文标题:重写一个Xposed帮助类过某些检测以及保护自己的xposed插

          本文链接:https://www.haomeiwen.com/subject/tjbdmqtx.html