美文网首页
frida hook so简单尝试

frida hook so简单尝试

作者: 朝朝朝朝朝落 | 来源:发表于2021-06-16 17:08 被阅读0次

需求: meiyanxiangji登录界面, 利用账密登录确认手机号是否是注册用户


myxj0.png

一, 查找参数位置

WX20210616-171256@2x.png

看到只有sig参数需要破解, jadx打开apk, 搜索参数,

WechatIMG646.png
myxj3.png
使用zentracer(https://blog.csdn.net/qq_38851536/article/details/103755407?utm_medium=distribute.pc_relevant.none-task-blog-title-6&spm=1001.2101.3001.4242)
结果:
myxj4.png

二, 确定参数加密位置, 就看是怎么加密的

myxj5.png

com.xxx.secret.SigEntity这个类, 很明显是so native方法(nativeGeneratorSigOld), 把手机里的apk导入电脑(https://blog.csdn.net/jss4j/article/details/88891334),改成.zip, 解压, 进入lib/arm64-v8a,找到librelease_sig.so, 拖进IDA,

m6.png m8.png m9.png

三, Frida hook so(方法一)

jsCode_so_1="""
Interceptor.attach(Module.findExportByName("librelease_sig.so" , "_Z13MD5_CalculatePKcjPc"), {
    onEnter: function(args) {
            send("open11111(" + Memory.readCString(args[0])+","+args[1]+")");
    },
    onLeave:function(retval){
    
    }
});
"""
m10.png

运行, 结果, 可以看到手机号和密码在里面, 剩下的都是写死的:

[*] open11111(oauth/access_token.json010898676081531385131625285601843.3.03.3.0.1534de2e7cf5b4d236.0.1868676860238407299.9.20Nexus 6PNexus 6PQQ64WIFIandroiddbc1fbc3e4cc39057304kkkk1234567phonezh-HansqA#QH=M+Ns&q+Z&J1623831095656Tw5AY783H@EU3#XC,0xe6)

# 加密结果:
 917b383ad72c978d14fdbe9a14898579
#这里最后的坑, 他把结果每2位颠倒了一下
19b783a37dc279d841dfeba941985897

三, Frida hook so(方法二,通过偏移)


jsCode_so="""
Java.perform(function () {     
    var base_addr = Module.findBaseAddress("librelease_sig.so");
    var offset = 0x8874;

    console.log("base_addr: " + base_addr);
    var func_addr=null;

    if(base_addr!=null) {
        func_addr = base_addr.add(offset);
        if (Process.arch == 'arm')
           var aaaa111 = func_addr.add(1);  //如果是32位地址+1
        else
        var aaaa111 = func_addr;
    }

    Interceptor.attach(func_addr, {
        onEnter: function(args){
            send("open(" + Memory.readCString(args[0])+","+args[1]+")");
        },
});
});
"""

里面的offset就是ida里的值

相关文章

  • frida hook so简单尝试

    需求: meiyanxiangji登录界面, 利用账密登录确认手机号是否是注册用户 一, 查找参数位置 看到只有s...

  • frida的几个常用工具

    1、hook native so的工具:frida_hook_libart https://github.com/...

  • 2020-05-17

    dex脱壳; frida hook libart.so通过DeFile::DexFile或者DexFile::...

  • frida hook so文件

    参考[https://blog.csdn.net/hao5335156/article/details/11347...

  • frida常用api

    Frida 常用模块API: Java 模块:Hook Java 层的类 方法 相关 Module 模块:处理so...

  • 在Android上跑Python+Frida的Hook程序

    引文: Frida是个轻量级so级别的hook框架,它可以帮助逆向人员对指定的进程的so模块进行分析。它主要提供了...

  • 某瓣app _sig 分析

    frida hook js代码

  • frida native hook

    本篇介绍 frida 也支持hook native,本篇看下如何hook native hook native函数...

  • frida hook native / frida hook s

    frida hook native 大家好,我是王铁头 一个乙方安全公司搬砖的菜鸡持续更新移动安全,iot安全,编...

  • Frida Hook

    - Hook Dlopen - Java堆栈打印 - Native堆栈打印 - HookJava中的loadLib...

网友评论

      本文标题:frida hook so简单尝试

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