Crack App | 某新闻 app 注册 token 加密逻辑分析

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: Crack App | 某新闻 app 注册 token 加密逻辑分析

今日目标

aHR0cHM6Ly93d3cud2FuZG91amlhLmNvbS9hcHBzLzY2Mjk5Mzg=

抓包分析

在内容列表的请求包里面的有token这个参数值

但是在开始的这个init包里面没有这个token

在开始的这个init请求之后的所有的包都带有token这个参数

猜测是开始的init包带有的加密返回值有这个token参数,就类似设备注册的意思

所以分析的重点从列表页移动到了开始的init包里面

查壳与脱壳

先看看这个app的壳能不能搞

好像有点难搞,先用寒冰大大的FART试试

试了下开源版的frida_fart,提示进程终止,应该是没了,可能是我的姿势不对,有知道的大佬评论区指点一下

于是我换北风哥的脱壳机试了一试,于是我找北风哥 py 了一下,舒服~

北风哥也提示了我可以用frida-dexdump试试,并且fart也是可以的,操作提示如下

在北风哥的提示下,我研究一下用frida-dexdumpijm企业版

拖完发现没有北风哥脱得全,应该还是我的姿势不对,所以接下来我还是用北风哥脱得 dex 分析

加密逻辑分析与定位

因为由init这个请求返回的data的加密,所以以init为关键词搜索

看了几个位置,感觉相关性都不高

想了一下用token作为关键词检索,发现结果是在太多了,有1800+多个相关的结果,最后还是在inits里面找到了

在这个位置点进去,然后通过InitParam声明的地方找到下面的位置

那么在请求头中的siganature可能就是这里获取到的,通过getSign关键词找到下面这个位置

所以在header中的siganature就是getSign(),然后在这个位置出入m.c并将结果阶段传入e.a

但是通过wallbreak只看到下面的代码

这样感觉没办法搞啊,经过一番寻找,还得是旧版的app牛逼

在旧版的app里找到下面的代码

照着和新版对比一下就知道,e.aDES.decrypt,然后m.cMD5

既然是这样的话就很简单了

按照这个思路复写应该就可以了

key是由这里的逻辑生成的

这里用到的APP_SECRET_AKEY和时间戳多次MD5得到 key

ps:就在上图逻辑的上方,新旧版本相同

得到key之后,解密入参的是请求返回的密文 data

python可以实现解密

可以看到在结果里面取到token

简单总结

这个app磕磕绊绊了很久,在新版的加密上琢磨了很久,钻了牛角尖,如果早点分析旧版估计很快就分析出来了

所以之后如果不是必要还是不要死磕新版,不仅加固牛逼,混淆也很厉害,还有检测,我用fridaobjection都没办法spawn的方式启动app

唉,又是被APP教做人的一天。

感谢北风哥,2h 大佬等众多哥哥的脱壳测试。

End.

以上就是全部的内容了,咱们下次再会~

相关文章
|
5月前
uni-app 164Token错误时自动退出
uni-app 164Token错误时自动退出
32 0
|
2月前
|
数据采集 数据可视化 数据挖掘
基于python django的scrapy去哪儿网数据采集与分析,包括登录注册和可视化大屏,有md5加密
本文介绍了一个基于Python和Django框架,使用Scrapy进行去哪儿网数据采集与分析的项目,包括实现登录注册功能、MD5加密以及通过可视化大屏展示分析结果的综合系统。
基于python django的scrapy去哪儿网数据采集与分析,包括登录注册和可视化大屏,有md5加密
|
2月前
|
Java
【Azure 应用服务】在App Service 中如何通过Managed Identity获取访问Azure资源的Token呢? 如Key Vault
【Azure 应用服务】在App Service 中如何通过Managed Identity获取访问Azure资源的Token呢? 如Key Vault
|
2月前
|
JavaScript 前端开发 安全
VUE——APP,后端,前端三端AES加密解密
VUE——APP,后端,前端三端AES加密解密
53 0
|
4月前
|
JavaScript 前端开发 安全
安全开发-JS应用&原生开发&JQuery库&Ajax技术&加密编码库&断点调试&逆向分析&元素属性操作
安全开发-JS应用&原生开发&JQuery库&Ajax技术&加密编码库&断点调试&逆向分析&元素属性操作
|
4月前
|
人工智能 监控 安全
未来金融将如何借助加密货币发展,可以从以下几个方面进行清晰的分析和归纳
**区块链与加密货币推动金融革命:降低交易成本,提高安全,扩大服务范围,赋能智能合约与DeFi,及改变监管方式。加密经济助力金融效率与普惠性,但也伴随风险,需平衡发展与监管。**
|
4月前
|
存储 SQL 安全
网络安全与信息安全:漏洞分析与加密技术探讨
在当今数字化时代,网络安全与信息安全日益成为全球关注的焦点。本文深入探讨了网络安全中的常见漏洞类型及其影响,并介绍了当前流行的加密技术和提升安全意识的方法,旨在为读者提供系统的知识分享与技术探讨。
40 3
|
5月前
|
存储 前端开发 算法
加密算法在网络通信中的应用及优势分析
本文将探讨加密算法在网络通信中的重要性,以及不同加密算法的应用和优势。通过对前端、后端、Java、Python、C、PHP、Go等多种技术的分析,我们将了解在日益增长的网络威胁下,加密算法对于确保数据安全和隐私保护的必要性。
|
4天前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
7天前
|
XML 移动开发 前端开发
使用duxapp开发 React Native App 事半功倍
对于Taro的壳子,或者原生React Native,都会存在 `android` `ios`这两个文件夹,而在duxapp中,这些文件夹的内容是自动生成的,那么对于需要在这些文件夹中修改的配置内容,例如包名、版本号、新架构开关等,都通过配置文件的方式配置了,而不需要需修改具体的文件
下一篇
无影云桌面