freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

对恶意Android应用Bangle Android App Packer的分析
2018-08-01 23:30:39
所属地 浙江省

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

写在前面的话

近日Trustlook Labs发现了一个恶意安卓应用程序,它使用社会工程手法诱骗用户安装。这个应用程序(MD5:eb9d394c1277372f01e36168a8587016)使用Bangle packer打包。

触发该安装应用程序的主要活动为“com.goplaycn.googleinstall.activity.SplashActivity.”但是,神奇的是在反编译代码中的任何位置都找不到该行为:

接下来就跟这我们一起来研究研究吧!

审计代码

我们从类SecAppWrapper开始审计,其中有一个“System.loadLibrary”调用load to load”secShell.“模块中的本机层代码,他主要负责从“assets\secData0.jar”中解密和加载应用程序的主要负载,并经过解密的压缩DEX文件。

其中我们发现“secShell”模块中的大多数方法名称都经过混淆,并且在使用时会对其字符串进行解密。

该应用程序会检测手机中是否安装了框架,如Xposed。Xposed是一个用于在运行时操纵Android应用程序流的框架。

该应用程序还会分离子进程并调用“ptrace”来附加到父进程,以防止调试器进行任何附加尝试。多个进程相互跟踪以确保子进程存活该应用程序并且会监视/proc文件系统中的值以检查进程的状态。要说得一点是“secShell”模块中的JNI_OnLoad函数具有两个分支。一个分支负责反调试,另一个分支(位于下面的0x7543EAE4)将主要的DEX模块进行解密。
以下是解密函数:在绕过反调试后,功能为“p34D946B85C4E13BE6E95110517F61C41”的模块将解密数据。其中寄存器R0包含文件位置,由标题字节“PK\x03\x04”标识.R1存储文件的大小。我们可以转储内存:解压缩文件后,我们得到可以正常查看的DEX文件:

总结

Android packers是保护合法移动应用开发者知识产权的有价值的工具。然而,它们也可以用于恶意目的,并使分析恶意应用程序更加困难。Trustlook Labs继续致力于识别恶意应用程序以保护我们的客户和移动生态系统。

*参考来源:trustlook,由周大涛编译,转载请注明来自FreeBuf.COM

# 恶意软件 # 安卓 # Bangle Android App Packer
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者