如何拿下Gooligan(二):深度分析内部工作原理 - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

如何拿下Gooligan(二):深度分析内部工作原理

ang010ela 移动安全 2018-03-22 09:35:41
180279
收藏

导语:Gooligan是2016年利用OAuth的一款安卓恶意软件,研究人员对拿下Gooligan共分为三个部分进行讲解,第二部分是对Gooligan内部工作原理进行了深度分析。

如何拿下Gooligan(一):对Gooligan起源和工作原理的初步分析中描述了Gooligan的起源和工作原理概览,本文将对其内部工作原理进行深度分析,而第三部分将讲述不同的币值化策略和拿下Gooligan的过程。

感染

最初,攻击者会欺骗用户去安装Gooligan分阶段的app,一旦app安装并执行,攻击者就可以执行下图中的5个步骤来入侵该设备。

 11.PNG

从上图可以看出,前4个阶段大多来源于Ghost Push。Gooligan的开发者主要变化是用复杂的注入过程将app上架到应用商店中。最初,大量的代码重用让研究者很难区分Ghost Push样本和Gooligan样本。研究人员在发现了全部的击杀链之后,就可以写下精确的检测签名了。

Payload解码

大多数的Gooligan样本将恶意代码隐藏在一张假照片assets/close.png中。图片是用硬编码函数(异或加密)加密的。加密是用来避免被检测到签名,因为Gooligan中的部分代码来源于其他恶意软件。加密恶意payload也是一种比较古老的恶意软件技术,从2011年开始就被安卓恶意软件使用了。

12.PNG

除了加密函数意外,Gooligan另外一个比较奇怪的是完整性验证算法。一般来说,close.png文件的完整性验证是为了确保前10个字节和最后10个字节是一致的。如上图所示,该方案中前5个字节(val 1)是与最后5个字节对比的,而6到10字节(val 2)是与前5个字节比较的。

手机root

13.PNG

与Snappea和Ghostpush类似,Gooligan也使用Kingroot利用套件来获取root权限。Kingroot一共有三个步骤,首先,恶意软件手机设备相关信息发送给利用服务器;第二步,服务器查询利用数据库并建立专为该设备打造的payload;第三步,设备接收payload,恶意软件运行payload获取root权限。

驻留设置

获取设备root权限后,Gooligan会修复install-recovery.sh脚本,而且在工厂模式重置后仍然驻留。从修复的角度讲,这种恢复能力机制是Gooligan最让人头痛的,因为老一点的设备只能通过OTA更新或设备刷写来移除。而且安卓4.4以下的设备是没有验证启动(verfied boot)的。

14.PNG

面对这种复杂的环境,以及用户的迫切需求,研究人员使用一种很少使用的策略:协调性拿下。拿下的目标是使Gooligan基础设施的一些关键元素停止服务,来确保恶意软件不能工作或更新。

应用商店中的应用操作

感染的最后一步是将共享库注入到应用商店应用中。共享库函数允许Gooligan操作应用商店的应用下载app和注入视图。

研究人员追踪了注入代码,该库本身是暴露的,开发者只增加了调用应用商店函数所必须的代码。所有的欺骗逻辑都在主app中,一个可能的原因是开发者更熟悉Java语言。

受影响的设备

根据位置的传播

受感染的设备主要位于印度、拉丁美洲、亚洲。其中19%的感染源来自印度,受感染最多的8个国家的感染数量超过了感染总数的50%。

15.PNG

根据手机制造商的分布

感染的大多都是大品牌,三星、Mircomax是受感染最多的品牌,其中Micromax是印度的手机制造商,但是在美国和欧洲市场没有出现过,主要市场在印度和俄罗斯。

16.PNG

属性

最初的线索

Gooligan HAproxy配置信息

17.PNG

研究人员对Gooligan patient zero代码进行了深入分析,发现一个不寻常的文本字符串oversea_adjust_read_redis。通过该字符串,研究人员发现了中国的一篇讨论加载平衡器配置的博客,通过该博客找到了Gooligan后端服务的全部配置。

#Ads API
        acl is_ads path_beg /overseaads/
        use_backend overseaads if is_ads
        …
 
#Payment API
        acl is_paystatis path_beg /overseapay/admin/
        use_backend overseapaystatis if is_paystatis
        ...
 
# Play install
        acl is_appstore path_beg /appstore/
        use_backend overseapaystatis if is_appstore
       ...

通过分析暴露的HAproxy配置信息,就可以找出基础设施的位置以及后台服务的结构。通过配置片段,发现后台有点击欺骗的API、从客户端接收支付的API、以及应用商店滥用的API。还有一个负责的管理和数据相关的API,是不可见的。

基础设施

通过HAproxy配置中暴露的API和IP,加上对Gooligan二进制文件的了解,就可以重建Gooligan的基础设施图。整体来看,Gooligan被分割为2个数据中心,一个位于中国,一个位于美国,使用的是AWS的IP地址。在被拿下后,所有的基础设施都搬迁到了中国。

18.PNG

幕后黑手

Gooligan的幕后黑手是谁呢?基于对基础设施和其他数据的分析,研究人员认为这是一个来自中国大陆的运营团队。公开信息显示,该组织声称是一家外贸公司,但是主要运营不同的诈骗方案。

下一篇文章将介绍Gooligan的币值化方案和拿下Gooligan的过程。

  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2022 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务