XX客户端APP签名分析之脱壳篇

admin 2021年12月15日04:05:25评论161 views字数 1869阅读6分13秒阅读模式

前言

对于当前的APP来说,基本都采用了加壳这一方式来对APP进行加固,这也是在算法分析上需要过的第一个点。在挖洞过程中,主要还是针对业务层逻辑进行分析处理,寻找漏洞点。因此本篇利用某园这一APP,侧重点在于对脱壳原理的介绍和一些脱壳工具的分享和使用。


01

脱壳原理介绍


首先说一下壳的历史发展。第一代壳是对Dex加密,会进行Dex字符串加密,资源加密,对抗反编译,反调试,自定义DexClassLoader。


第二代壳是Dex抽取与So加固,对抗第一代壳常见的脱壳法,Dex Method代码抽取到外部(通常企业版),Dex动态加载,So加密。


第三代壳是Dex动态解密与So混淆,Dex Method代码动态解密,So代码膨胀混淆,对抗之前出现的所有脱壳法。


然后现在出现了第四代加壳技术,就是vmp壳。


而我们脱壳就是要对内存中处于解密状态的dex的dump。这就需要准确定位内存中解密后的dex文件的起始位置和大小。


02

常见壳的识别


对于市面上常见的壳,基本都可以通过其基本命名去判断。


娜迦:libchaosvmp.so , libddog.solibfdog.so爱加密:libexec.so, libexecmain.so梆梆:libsecexe.so, libsecmain.so , libDexHelper.so360:libprotectClass.so, libjiagu.so通付盾:libegis.so网秦:libnqshield.so百度:libbaiduprotect.so腾讯:lejiagu


另外还可以使用工具如PKiD,APKDetecter等等。


03

Youpk


首先介绍一下Youpk这一工具,项目地址:

https://github.com/Youlor/Youpk


这也是笔者常用的方法,因为手头上的测试机正好是pixel 1代,刚好适配。可以在分析的时候就把脱壳这件事做了,pixel+Youpk,站着就把钱赚了(手动狗头)。可能唯一不足的地方就是需要刷机,不过作者已经提供了一键刷机的方法,因此问题也不大。使用方法也很简单。首先在手机上启动某园APP,然后


adb shell "echo cn.domo.domo >> /data/local/tmp/unpacker.config"


之后查看日志信息等待unpack end即可。


XX客户端APP签名分析之脱壳篇


XX客户端APP签名分析之脱壳篇


然后将文件pull出来直接导入jadx(jadx支持多dex分析,免去了修复的麻烦)即可进行java层分析。


04

FRIDA-DEXDump


这是hluwa大佬的作品,项目地址:


https://github.com/hluwa/FRIDA-DEXDump


只需要frida环境即可使用。可以运行frida-dexdump或者python3 main.py进行脱壳。


XX客户端APP签名分析之脱壳篇


05

BlackDex


这是一个最近出来的工具,是最最最支持傻瓜式操作的,项目地址:


https://github.com/CodingGay/BlackDex


官方介绍:BlackDex是一个运行在Android手机上的脱壳工具,支持5.0~12,无需依赖任何环境任何手机都可以使用,包括模拟器。只需几秒,即可对已安装包括未安装的APK进行脱壳。项目包括32位和64位,Google 已经在2019年9月强制所有新上架 Google Play 的应用提供 64 位版本,64取代32是趋势。不过国内的apk,还有很大一部分都是32位。因此如果其中一个版本没有显示你想脱壳的apk就选择另一个版本。笔者使用的一加9+balckdex 32位进行测试。只需5秒,就出结果了。


XX客户端APP签名分析之脱壳篇


并且blackdex还支持深度脱壳,但是还是不太稳定,期待后续吧。


06

总结


本篇文章主要注重了脱壳这一过程,没有很深入的介绍脱壳中的技术点,毕竟表哥们还要把更多的精力放在后续的挖洞上,有更多关于脱壳的想法以及一些骚操作大家可以在评论区积极讨论。下一篇就将进行脱壳后的签名算法分析。


XX客户端APP签名分析之脱壳篇


【火线短视频精选】



【周度激励】2021.7.26 ~ 2021.8.1公告


XX客户端APP签名分析之脱壳篇


【相关精选文章】


火线新手训练之如何使用火器快速查找脆弱资产

车联网安全基础知识之大众集团汽车电子电气架构


火线Zone是[火线安全平台]运营的封闭式社区,社区成员必须在[火线安全平台]提交有效漏洞才能申请免费加入,符合要求的白帽子可联系[火线小助手]加入。


我们不希望出现劣币驱逐良币的结果,我们不希望一个技术社区变成一个水区!


欢迎具备分享精神的白帽子加入火线Zone,共建一个有技术氛围的优质社区!



XX客户端APP签名分析之脱壳篇

XX客户端APP签名分析之脱壳篇

本文始发于微信公众号(火线Zone):XX客户端APP签名分析之脱壳篇

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年12月15日04:05:25
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   XX客户端APP签名分析之脱壳篇http://cn-sec.com/archives/444529.html

发表评论

匿名网友 填写信息