您的位置:首页 > 健康 > 美食 > 江门网站建设推广策划_seo优化网站快速排名_seo薪资_网络推广的工作内容是什么

江门网站建设推广策划_seo优化网站快速排名_seo薪资_网络推广的工作内容是什么

2025/4/19 16:39:41 来源:https://blog.csdn.net/qq_44130722/article/details/147309026  浏览:    关键词:江门网站建设推广策划_seo优化网站快速排名_seo薪资_网络推广的工作内容是什么
江门网站建设推广策划_seo优化网站快速排名_seo薪资_网络推广的工作内容是什么

前言

今天来分析一下某生鲜超市app的接口加密参数,主要目的是探索学习app接口的加解密机制。仅供学习,禁止用作其他用途。在这里插入图片描述
由抓包可知,参数paramsMD5就是我们要分析的内容了,显而易见,这个加密名称和实际值相差较大,和MD5没有明显关系,猜测可能是md5在进行base64或者RSA等等的加密

反编译

该app经过梆b企业版加壳,脱壳后,拉到jadx分析下,具体分析过程就不说了,直接给出frida hook代码

"""
Java.perform(function() {
let HelperJNI = Java.use("com.fort.andjni.JniLib");
HelperJNI.cL.implementation = function (obj) {console.log('n0 is called' +  ', ' + 'obj: ' + obj);let ret = this.cL(obj);console.log('n0 ret value is ' + ret);return ret;
};
})
"""

bb反调试

1.尝试hook pthread_create 定位线程 通过杀线程方法干掉反调试

function hook_pthread_create(){var pthread_create_addr = Module.findExportByName("libc.so", "pthread_create");
console.log("pthread_create_addr: ", pthread_create_addr);
Interceptor.attach(pthread_create_addr,{onEnter:function(args){console.log(args[2], Process.findModuleByAddress(args[2]).name);},onLeave:function(retval){
}
});
}
hook_pthread_create();

发现没啥用 应该是检测到 pthread_create 被hook了
2.pthread_create 的实现会调用 clone 系统调用来创建新线程,于是通过hook clone函数,得到线程相关信息然后去nop,干掉线程,发现可以正常使用frida了,基本原理就是这样。

unidbg实现

1.过反调试后,dump出so文件

2.unidbg调用方法
在这里插入图片描述
3.开始补环境
在这里插入图片描述
这个就没啥好说的,缺啥补啥,能看出成功得到结果
在这里插入图片描述
通过unidbg的输出我们可以发现,应该是使用了HmacSHA256的算法,往上找找,key也被成功的打印出来,python实现一下

    def HmacSha256(self, message):hmac_obj = hmac.new(self.key.encode('utf-8'), message.encode('utf-8'), hashlib.sha256)# 获取HMAC的二进制数据hmac_digest = hmac_obj.digest()# 将HMAC的二进制数据转换为Base64编码的字符串hmac_base64 = base64.b64encode(hmac_digest)# 返回Base64编码的字符串return hmac_base64.decode()  # 将字节串解码为字符串

在这里插入图片描述
和unidbg结果一样,大功告成。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com