论坛首页 安全编程开发区 阅读主题

[原创]如何在OLLVM混淆中探寻算法二之libpdd_secure.so指纹算法分析(上篇)

477 浏览 9 回复
#1 楼主 2026-06-01 21:09:13
0x1-前言:这是<如何在OLLVM混淆中探寻算法>系列的第二篇文章,相信读者通过前面文章的学习,已经对unidbg有了初步的认识,这篇是unidbg的一个进阶,样本涉及的依赖相对前面文章的样本来说比较多,主要是jni调用与文件访问的问题,笔者将拆分成两篇来讲述,一篇是unidbg补环境,一篇是算法分析.国内有难度的样本有四个,分别是libmetasec_ml.so,libsgmain.so,libmtguard.so,libtiny.so,还有一个unidbg补环境的高峰--同盾样本,本篇的样本在这五个样本看来,难度上算简单的.此文是我公众号上面发布后复制过来的,图片和代码块可能会有显示的问题,请移步我的原文:aHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL3MvT0NOUkFfVC1Fek1jRHNjUVBCSDJSUQ==也欢迎各位师傅关注我的公众号.0x2-样本信息:链接直达:version:0x3-抓包分析与入口定位:每个接口的头部都会带上anti_token这个参数,且是2af为前缀的,这个就是我们的目标了,至于定位入口,关键字搜索/hook newstringutf都能定位到.笔者就不带着大家去跟一遍了,看过我前面的文章,脚本拿过来改一改就能定位了,贴一下最终的入口.这个info2方法就是最终的入口位置了,他所属的so是libpdd_secure.so,他的入参是一个content和long类型,long类型的参数是时间戳,可以使用我这篇文章的脚本,把native方法的信息枚举出来.文章跳转Fashion哥,公众号:Fashion哥的爬虫历险记安卓Native层逆向-只通过一个native方法名枚举出native方法的所有信息0x4-Unidbg搭架子补环境先搭个架子:读者也不必着急复制粘贴,文章末尾会贴一份补好的环境代码.0x01-补Jni调用右键运行,发现报了个错对于此方法,他的返回值是void,我们直接返回即可.补完发现没有其他报错了,红色的日志是样本自己调用的打印方法,我们可以不管.接下来是主动调用目标函数,这里有两种方法一种是通过符号去调用,另一种是通过地址去调用,笔者比较习惯符号调用.info2方法的参数有两个一个是android/content/Context,一个是long,对于java的八大基本数据类型(byte,char,int,short,long,double,float)等不用做处理,可以直接原封不动的传递,其他的要做包装,像这样进行一层包装.在main进行调用运行报了这个错误此方法是Android框架中用于获取系统级服务的方法谷歌官网文档如果对方法不是很了解的可以看看谷歌的开发文档可以这样补打印看看是获取了哪些系统服务只获取了一个,可以写个判断,然后返回这个需要frida去主动调用一下拿到结果,返回结果是个string类型,要用unidbg的api封装一下.同样的,用frida主动调用获取结果,返回时int,基本数据类型,就不用封装.接着是这个,主动调用获取结果接着是这个,主动调用获取结果接着是这个下一个是下一个是下一个接着这个方法是判断是否处于调试连接,给他返回false对于这种方法,不会补怎么办,看unidbg的示例代码,看unidbg如何写的,我们也跟着写.点击(AbstractJni.java:753)跳转过去unidbg提供了两个示例,我们也跟着改一改接着继续他需要的返回值是我们可以用unidbg提供的api嵌套返回.代码如下下面是一个replaceall方法可以点进去看看unidbg如何实现的,改一改代码即可当补到这个方法时,离成功已经很接近了,同时也要注意,这个jni调用也拖带出了第一个算法gzip注意补这个方法要外层套上try-catch对于此方法,我们也可以看看unidbg内部时如何实现的,然后照猫画虎补完这个方法过后,成功的出值了.


回复或点赞可查看完整内容

---
来源: 看雪论坛
原文链接: https://bbs.kanxue.com/thread-289233.htm
#2 2026-06-01 21:09:13
微信的图片链接都不能显示啊
#3 2026-06-01 21:09:13
图片无法正常显示
#4 2026-06-01 21:09:13
mb_tcktejwd


图片无法正常显示

文章是我从我公众号发布后复制来的 图片 代码块格式可能会有问题,可以移步到我的公众号上看
aHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL3MvT0NOUkFfVC1Fek1jRHNjUVBCSDJSUQ==
#5 2026-06-01 21:09:13
huangyalei


微信的图片链接都不能显示啊

文章是我从我公众号发布后复制来的 图片 代码块格式可能会有问题,可以移步到我的公众号上看
aHR0cHM6Ly9tcC53ZWl4aW4ucXEuY29tL3MvT0NOUkFfVC1Fek1jRHNjUVBCSDJSUQ==
#6 2026-06-01 21:09:13
wx_插曲


灌饼哥 也来给我捧场了呀
#7 2026-06-01 21:09:13
图片无法正常显示
#8 2026-06-01 21:09:13
大佬,图全裂了
#9 2026-06-01 21:09:13
看看
#10 2026-06-01 21:09:13
感谢分享,学习一下。

请登录后参与讨论

立即登录 注册账号