App逆向百例|17|某音乐App分析

简介: App逆向百例|17|某音乐App分析

观前提示:

本文章仅供学习交流,切勿用于非法通途,如有侵犯贵司请及时联系删除

样本:aHR0cHM6Ly9wYW4uYmFpZHUuY29tL3MvMXRQbnROMkc0R20yYlFKaVNHYzU2SlE/cHdkPWxpbm4=

0x1 抓包

本次受害参数为aversionid

直接把样本放到JADX 发现搜索不到aversionid

0x2 脱壳

前面在JADX里面搜索不到aversionid

但是发现了libexec.so字眼

众所周知 这是爱加密的壳

直接用dexdump 很快 一下子就脱光光了

0x3 aversionid

直接搜索 这次可以搜索得到结果了

看到encodedecode字眼

跳转过来 发现调用SecurityNative.encode

但却无法进入 搜索类也搜索不到 难道另有蹊跷

尝试使用Frida也找不到

奇奇怪怪 有点意思

那咱就搜索classloader看看吧 反正总要加载类的

function classloader_search(ClassName) {
    Java.perform(function () {
        Java.enumerateClassLoaders({
            "onMatch": function (loader) {
                try {
                    if (loader.findClass(ClassName)) {
                        Java.classFactory.loader = loader;
                        console.log('Find ClassName->' + ClassName);
                        console.log(loader);
                    }
                } catch (e) {}
            },
            "onComplete": function () {
            }
        });
    });
}

运行成功搜索到com.xxx.security.SecurityNative

找之前 先验证一下是否正确

function hook() {
    var ClassName = "com.xxx.security.SecurityNative"
    Java.perform(function () {
        Java.enumerateClassLoaders({
            "onMatch": function (loader) {
                try {
                    if (loader.findClass(ClassName)) {
                        Java.classFactory.loader = loader;
                        var SecurityNative = Java.classFactory.use(ClassName);
                        SecurityNative.encode.implementation = function (str1, str2) {
                            var result = this.encode(str1, str2);
                            console.log('str1->' + str1)
                            console.log('str2->' + str2)
                            console.log('result->' + result)
                            return result;
                        }
                    }
                } catch (e) { }
            },
            "onComplete": function () {
            }
        });
    });
}

没问题 能hook到类 并且也证明了前面的分析是对的

根据前面找到的类对应文件 去手机里面对应的文件夹一个一个找

虽然出现的东西很多 但总出现了一个方向

最后找到com.xxx.security.SecurityNativelibraries_feature-master.apk出现

最终调用的是Native方法 而对应的so在相应的文件夹里同样能找到

大姐姐进入到SO 能直接在导出表搜索到是静态注册

进到encode看伪代码可以知道 主要的还是在mg_encode方法里

进去后看不出是什么算法 有可能是我太菜了 不过代码量不多 完全可以直接复制粘贴

留给大家自己还原吧 祝大家情人节快乐 我要去浪了



感谢各位大佬观看

感谢大佬们的文章分享

如有错误 还请海涵

共同进步 带带弟弟


点赞 在看 分享是你对我最大的支持

逆向lin狗

相关文章
|
7月前
|
JSON 监控 数据格式
1688 item_search_app 关键字搜索商品接口深度分析及 Python 实现
1688开放平台item_search_app接口专为移动端优化,支持关键词搜索、多维度筛选与排序,可获取商品详情及供应商信息,适用于货源采集、价格监控与竞品分析,助力采购决策。
|
7月前
|
缓存 监控 Android开发
京东 item_get_app 接口深度分析及 Python 实现
京东item_get_app接口可获取商品原始详情数据,包含更丰富的字段和细节,适用于电商分析、价格追踪等场景。需通过认证获取权限,支持字段筛选和区域化数据查询。
|
8月前
|
缓存 数据挖掘 API
淘宝 item_get_app 接口深度分析及 Python 实现
淘宝item_get_app接口是淘宝开放平台提供的移动端商品详情数据获取接口,相较PC端更贴近APP展示效果,支持获取APP专属价格、促销活动及详情页结构,适用于电商导购、比价工具、数据分析等场景。接口采用appkey+appsecret+session认证机制,需申请相应权限。本文提供Python调用示例及使用注意事项,帮助开发者高效对接移动端商品数据。
|
10月前
|
JavaScript
TypeOrmModule 从 app.module.ts 抽离到 database.module.ts 后出现错误的原因分析
本文分析了TypeORM实体元数据错误的成因,主要涉及实体注册方式、路径解析差异及模块结构变化导致的关系解析问题,并提供了具体解决方案和最佳实践建议。
231 56
|
11月前
|
数据采集 存储 Web App开发
逆向音乐APP:Python爬虫获取音乐榜单
逆向音乐APP:Python爬虫获取音乐榜单
707 58
|
7月前
|
缓存 供应链 开发者
1688 item_get_app 接口深度分析及 Python 实现
1688平台item_get_app接口专为移动端设计,提供商品原始详情数据,包含批发价格、起订量、供应商信息等B2B特有字段,适用于采购决策、供应链分析等场景。接口需通过appkey+access_token认证,并支持字段筛选,返回结构化数据,助力企业实现智能采购与供应商评估。
|
8月前
|
数据采集 数据可视化 API
驱动业务决策:基于Python的App用户行为分析与可视化方案
驱动业务决策:基于Python的App用户行为分析与可视化方案
|
数据采集 数据可视化 数据挖掘
基于Python的App流量大数据分析与可视化方案
基于Python的App流量大数据分析与可视化方案
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
362 5
|
安全
【Azure App Service】App service无法使用的情况分析
App Service集成子网后,如果子网网段中的剩余IP地址非常少的情况下,会在App Service实例升级时( 先加入新实例,然后在移除老实例 )。新加入的实例不能被分配到正确的内网IP地址,无法成功的访问内网资源。 解决方法就是为App Service增加子网地址, 最少需要/26 子网网段地址。
235 4

热门文章

最新文章