PhantomLance多版本攻击分析
source link: https://www.freebuf.com/articles/network/236398.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
2019年7月Dr. Web报道了 Google Play中的后门木马 ,研究人员将其称为“PhantomLance”,它最早活动记录可追溯到2015年12月。目前发现了数十个在野样本,出现在Google Play等各种应用程序市场中。 最新样本于2019年11月6日在官方Android市场发布,不久后被官方删除。
在调查过程中发现其与OceanLotus APT有很多相似之处。
恶意软件版本
为了便于研究,根据技术复杂性将发现的样本分为基本版本1到高度复杂版本3,版本号与出现的时间不完全相关。
所有样本的功能都是相似的,主要目的是收集敏感信息,包括地理位置,呼叫记录,联系人、SMS、已安装的应用程序列表以及设备信息。攻击者能够 根据特定设备环境 下载并执行各种恶意有效负载。
Version 1
此版本是最新的Google Play样本(MD5:2e06bbc26611305b28b40349a600f95c)。与其他版本不同,它不会删除其他可执行文件。攻击者尝试使用多种技术绕过Google官方过滤,于2019年上传到Google Play商店。清单文件中未提及可疑权限,攻击者将其隐藏在dex可执行文件中,在执行过程中动态请求。 恶意软件 大多数操作都需要root权限。 如果设备有root特权,恶意软件可以通过“setUidMode”获得所需权限,无需用户参与。
Version 2
此版本在2019年或更早的时候被检测到,其中一个样本于2019年11月出现在Google Play商店中。 根据检测统计数据和版本戳,可判断该版本是版本3的替代品。
恶意有效载荷APK打包在assets加密( AES )文件中,解密密钥和初始化向量(IV)位于加密有效载荷的前32 + 16字节中。
在APK magic前,文件头包含对有效载荷方法反射调用的字符串。
所有版本2有效负载都使用相同的程序包名称“com.android.play.games”,类似于官方Google Play游戏程序包“com.google.android.play.games”。此外,在解密的有效载荷中发现了开发人员版本标记。
如版本1所述,恶意功能所需的权限是通过未记录的Android API授予的,还发现用于签名版本2有效负载的两个不同证书。
Version 2.1
2020年初发现PhantomLance最新样本引入了解密有效载荷的新技术:恶意有效载荷和植入程序捆绑在一起,并使用AES加密。 密钥不会自身携带,而是通过Google的Firebase远程配置系统发送到设备,其他技术功能与版本2非常相似。
向PhantomLance的Firebase API发出有效请求,响应 JSON结构 包含AES解密密钥,其中“code_disable”值是有效负载的解密密钥。
{ "entries": { "code_disable": "27ypYitp1UFc9Tvh" }, "appName": "com.ozerlab.callrecorder", "state": "UPDATE" }
攻击者试图实现第三阶段有效载荷植入。 第二阶段有效负载(MD5:83cd59e3ed1ba15f7a8cadfe9183e156)包含一个名为“data”的APK文件(MD5:7048d56d923e049ca7f3d97fb5ba9812),其assets已损坏。
第二阶段如下所述读取此APK文件,对其解密并重写其前27个字节。
执行后会产生一个APK文件(MD5:c399d93146f3d12feb32da23b75304ba),该文件配置有C2服务器(cloud.anofrio[.]com, video.viodger[.]com, api.anaehler[.]com) 。 第三阶段APK在assets中有名为“data.raw”的本地库,该库用于在受感染的设备上实现持久控制。
Version 3
版本2已被该版本替换,2019年未观察到版本3的任何新部署,技术细节方面它比版本2更为先进。
与第二版相比,第一阶段的植入程序混淆更为彻底。它使用与版本2类似的方式来解密有效负载,加密内容被分为多个10256字节以下的文件以及一个加密配置文件,其中包含有效载荷解密详细信息。
解密流程:
每个版本3负载都具有相同的程序包名称“com.android.process.gpsp”,使用用于签署某些版本2的相同证书签名。在版本3中找到的唯一版本标记是“10.2.98”。
传播方式
攻击者主要通过应用市场进行传播。除了已向Google报告的com.zimice.browserturbo和com.physlane.opengl之外,还观察到其他一些传播痕迹,表明过去有许多恶意应用程序已部署到Google Play,但现已被删除。
确定了多个第三方市场,这些市场与Google Play不同,它们仍然托管恶意应用程序:
https://apkcombo [.]com
https://apk [.]support/
https://apkpure [.]com
https://apkpourandroid [.]com
几乎每种恶意软件部署案例中,攻击者都试图利用伪造用户许可协议(EULA)创建Github开发帐户。
在调查中发现攻击者上传的初始版本不包含任何恶意有效负载, 但是后续版本中包含恶意有效负载或其他恶意代码。
基础设施
在分析С2服务器基础结构时快速确定了多个与先前相似的域,但未链接到任何已知的恶意样本。
发现可以IP:188.166.203[.]57:
受害者分布
2016年开始观察到印度,越南,孟加拉国,印度尼西亚等地的Android设备受到攻击。
还在尼泊尔,缅甸和马来西亚进行了多次侦查,南亚是该组织的最大目标地区。除了常见的诱饵应用程序(例如Flash插件,清洁程序和更新程序)以外,还有专门针对越南的应用程序。
关联分析
研究人员分析了PhantomLance与OceanLotus APT活动的关联。
OceanLotus Android
2019年5月, Antiy Labs 发布了Android恶意软件活动报告,声称该活动与OceanLotus APT有关,样本最早追踪可追溯到2014年12月。受此活动影响的大多数用户位于越南,只有少数人位于中国。主要感染媒介是第三方网站上托管的恶意应用程序链接,这些链接通过SMS或电子邮件进行分发。
最新恶意软件下载发生在2017年12月,2018年观察到少量活动,但从托管恶意软件的数量和检测数量来看,主要活动时间是在2014年末至2017年。
对报道中OceanLotus Android(MD5:0e7c2adda3bc65242a365ef72b91f3a8)和未混淆的(可能是开发人员版本)PhantomLance有效负载v3(MD5:243e2c6433833815f2ecc6640)进行了代码结构比较:
OceanLotus macOS后门
对2018年初macOS有效负载(MD5:306d3ed0a7c899b5ef9d0e3c91f05193)进行分析,并将其与Android恶意软件的代码模式进行关联比较。发现七个主要类别中有三个具有相同的名称和相似的功能:“Converter”, “Packet” and “Parser”.
相似性分析
大多数OceanLotus恶意软件使用三台不同C2服务器。
攻击者对越南十分感兴趣,PhantomLance和OceanLotus的基础设施存在重叠,Android与MacOS后门之间代码存在相似性。
IOCs
PhantomLance
HEUR:Backdoor.AndroidOS.PhantomLance.* HEUR:Trojan-Dropper.AndroidOS.Dnolder.*
Android campaign linked to OceanLotus (2014-2017)
HEUR:Trojan.AndroidOS.Agent.eu HEUR:Trojan.AndroidOS.Agent.vg HEUR:Trojan-Downloader.AndroidOS.Agent.gv
macOS campaign linked to OceanLotus
HEUR:Backdoor.OSX.OceanLotus.*
MD5
PhantomLance malware
2e06bbc26611305b28b40349a600f95c
b1990e19efaf88206f7bffe9df0d9419
7048d56d923e049ca7f3d97fb5ba9812
e648a2cc826707aec33208408b882e31
3285ae59877c6241200f784b62531694
8d5c64fdaae76bb74831c0543a7865c3
6bf9b834d841b13348851f2dc033773e
0d5c03da348dce513bf575545493f3e3
0e7c2adda3bc65242a365ef72b91f3a8
a795f662d10040728e916e1fd7570c1d
d23472f47833049034011cad68958b46
8b35b3956078fc28e5709c5439e4dcb0
af44bb0dd464680395230ade0d6414cd
65d399e6a77acf7e63ba771877f96f8e
79f06cb9281177a51278b2a33090c867
b107c35b4ca3e549bdf102de918749ba
83cd59e3ed1ba15f7a8cadfe9183e156
c399d93146f3d12feb32da23b75304ba
83c423c36ecda310375e8a1f4348a35e
94a3ca93f1500b5bd7fd020569e46589
54777021c34b0aed226145fde8424991
872a3dd2cd5e01633b57fa5b9ac4648d
243e2c6433815f2ecc204ada4821e7d6
PhantomLance payload-free versions
a330456d7ca25c88060dc158049f3298
a097b8d49386c8aab0bb38bbfdf315b2
7285f44fa75c3c7a27bbb4870fc0cdca
b4706f171cf98742413d642b6ae728dc
8008bedaaebc1284b1b834c5fd9a7a71
0e7b59b601a1c7ecd6f2f54b5cd8416a
Android campaign 2014-2017
0e7c2adda3bc65242a365ef72b91f3a8 50bfd62721b4f3813c2d20b59642f022 5079cb166df41233a1017d5e0150c17a 810ef71bb52ea5c3cfe58b8e003520dc c630ab7b51f0c0fa38a4a0f45c793e24 ce5bae8714ddfca9eb3bb24ee60f042d d61c18e577cfc046a6252775da12294f fe15c0eacdbf5a46bc9b2af9c551f86a 07e01c2fa020724887fc39e5c97eccee 2e49775599942815ab84d9de13e338b3 315f8e3da94920248676b095786e26ad 641f0cc057e2ab43f5444c5547e80976
Domains and IP addresses
PhantomLance
mine.remaariegarcia[.]com egg.stralisemariegar[.]com api.anaehler[.]com cloud.anofrio[.]com video.viodger[.]com term.ursulapaulet[.]com inc.graceneufville[.]com log.osloger[.]biz file.log4jv[.]info news.sqllitlever[.]info us.jaxonsorensen[.]club staff.kristianfiedler[.]club bit.catalinabonami[.]com hr.halettebiermann[.]com cyn.ettebiermahalet[.]com
Android campaign 2014-2017
mtk.baimind[.]com ming.chujong[.]com mokkha.goongnam[.]com ckoen.dmkatti[.]com sadma.knrowz[.]com itpk.mostmkru[.]com aki.viperse[.]com game2015[.]net taiphanmemfacebookmoi[.]info nhaccuatui.android.zyngacdn[.]com quam.viperse[.]com jang.goongnam[.]com
*参考来源: securelist ,由Kriston编译,转载请注明来自FreeBuf.COM
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK