使用xposed 来解阿里ctf-2014 第三题
阅读原文时间:2023年07月10日阅读:2

只能说,有了xposed以后,对于java代码的hook从此非常简单

直接粘贴代码了,对于xposed 怎么上手,请参考https://github.com/rovo89/XposedBridge/wiki/Development-tutorial

关键是找到addJavascriptInterface这个函数并hook即可,然后找到到底注入的名字以及object对象。

public
class Tutorial implements IXposedHookLoadPackage {

     public
void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {

     //XposedBridge.log("Loaded app: " + lpparam.packageName);

         if (!lpparam.packageName.equals("com.ali.tg.testapp"))

     return;

    findAndHookMethod("android.webkit.WebView",lpparam.classLoader,"addJavascriptInterface",Object.class,String.class,new XC_MethodHook(){

    @Override

protected
void beforeHookedMethod(MethodHookParam param) throws Throwable {

// this will be called before the clock was updated by the original method

    XposedBridge.log("before addJavascriptInterface:"+param.args[1].toString());

    XposedBridge.log("methods:");

    Object obj=param.args[0];

    Class cls= obj.getClass();

    Method[] ms=cls.getDeclaredMethods();

    for( int i=0;i<ms.length;i++)

    {

        XposedBridge.log(ms[i].toString());

    }

}

@Override

protected
void afterHookedMethod(MethodHookParam param) throws Throwable {

}

});

    
 

    
 

     }

}

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章