针对Android设备的开源手机银行木马BankBot / Mazain分析

本文涉及的产品
.cn 域名,1个 12个月
简介: 本文讲的是针对Android设备的开源手机银行木马BankBot / Mazain分析,在最近几年,我们开始对那些针对土耳其银行以及其他各种类型的金融机构应用的恶意软件产生了兴趣。
本文讲的是 针对Android设备的开源手机银行木马BankBot / Mazain分析在最近几年,我们开始对那些针对土耳其银行以及其他各种类型的金融机构应用的恶意软件产生了兴趣。据我们观察,在过去两年这种针对银行业务的恶意软件行为愈演愈烈,特别是在手机银行方面,许多的新型恶意软件已经开始通过网络钓鱼以及打印等方式来进行传播了。

以下是一些例子:

hxxp://nora.biz/index.php?threads/Пишем-android-бота-с-нуля.1425/

针对Android设备的开源手机银行木马BankBot / Mazain分析

hxxps://forum.exploit.in/index.php?s=52f9e19ea5173f0ea43855edabafff41&showtopic=113555 

针对Android设备的开源手机银行木马BankBot / Mazain分析

hxxp://a0007517.xsph.ru/threads/pishem-svoj-android-botnet-s-nulja.6/ 

针对Android设备的开源手机银行木马BankBot / Mazain分析

C&C服务器中使用了这些软件含有一小部分的PHP代码,C&C入口通过命令管理Android木马,而它正在窃取短信以获取OTP。

 针对Android设备的开源手机银行木马BankBot / Mazain分析

这种C&C服务器基本上都被加入了木马程序,来使其能够从android手机中捕捉短信,而在未知的角落里有很多这样的C&C服务器在活跃着。

 针对Android设备的开源手机银行木马BankBot / Mazain分析

我们可以看到,几乎所有的C&C服务器都是由域名.gdn TLD https://en.wikipedia.org/wiki/.gdn提供服务的,其中一些服务器在域名上是由.pw TLD 提供服务的。 针对Android设备的开源手机银行木马BankBot / Mazain分析

观察后发现这些域名包括:

ifc3yb3rs3cur1tych0.pw
1nj3ct10n.gdn
r0n4ld4.gdn
t4l1sc4.gdn
trolitrader.pw
bigbustown.pw
ch4pr6.gdn
n0309.gdn
tr4f0.pw
t1lk1.gdn
b46.gdn

该列表今后还会继续更新。

很明显拥有这些域名的人以前曾使用了这些不同的域名来作为网络钓鱼站点以及C&C服务器。

hxxp://e-trafikcezasiodemesi.net

hxxp://guvenliktrafikcezasiodemeyeri.com

hxxp://jethgsyukle.com 针对Android设备的开源手机银行木马BankBot / Mazain分析

以前是这样子的: 针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

而当你使用移动设备访问以下土耳其网站时,这些网站就会帮助传播前文所提到的Android木马。 

hxxp://ircforumlari.net
hxxp://filmindirsene.net

 针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

而如果你使用移动设备或浏览器访问了上述网站,并且将用户代理字符串设置为Android浏览器之一,则网站会提供通过缩短链接来安装Android应用程序。

提供URL缩短服务的hxxp://dogrulama.link网站正在托管虚拟Flash播放器应用程序。 针对Android设备的开源手机银行木马BankBot / Mazain分析

FlashPlayer.apk及其变体的SHA256散列如下:

62ca7b73563f946df01d65447694874c45d432583f265fad11b8645903b6b099
3bf02ae481375452b34a6bd1cdc9777cabe28a5e7979e3c0bdaab5026dd8231d
6b93f837286da072f1ec7d5f5e049491d76d4d6ecc1784e1fadc1b29f4853a13
d8b28dbcc9b0856c1b7aa79efae7ad292071c4f459c591de38d695e5788264d1
bd194432a12c35ae6ae8a82fa18f9ecac3eb6e90c5ff8330d20d19e85a782958
e0da58da1884d22cc4f6dfdc2e1da6c6bfe2b90194b86f57f9fc01b411abe8de

我们还发现有些类的名字似乎是用土耳其语写的。

 针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

还有一些俄罗斯语写的(俄罗斯论坛上已经找到原文)。

针对Android设备的开源手机银行木马BankBot / Mazain分析

 安装flashplayer.apk到手机上后,该恶意软件就请求用户首次提供设备管理员权限:

针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

该恶意软件要使用的其他权限还有:

 针对Android设备的开源手机银行木马BankBot / Mazain分析

针对Android设备的开源手机银行木马BankBot / Mazain分析

除此之外,该恶意软件还会有一些服务要运行。

木马可以从C&C接收以下命令: 针对Android设备的开源手机银行木马BankBot / Mazain分析

非结构化补充服务数据请求 

针对Android设备的开源手机银行木马BankBot / Mazain分析 

请求管理员/root权限

 针对Android设备的开源手机银行木马BankBot / Mazain分析

发短信 

针对Android设备的开源手机银行木马BankBot / Mazain分析

恶意软件会扫描statham类中定义的所有运行进程。

 针对Android设备的开源手机银行木马BankBot / Mazain分析

在收到所有正在运行的进程列表后,我们和自己的手机银行应用程序进程列表对比了一下:

针对Android设备的开源手机银行木马BankBot / Mazain分析 

据我们了解,几乎所有的土耳其手机银行和金融应用程序都受到了BankBot恶意软件的影响:

com.ziraat.ziraatmobil
com.ziraat.ziraattablet
com.tmobtech.halkbank
com.vakifbank.mobile
com.pozitron.vakifbank
com.akbank.android.apps.akbank_direkt
com.akbank.softotp
com.akbank.android.apps.akbank_direkt_tablet
tr.com.sekerbilisim.mbank
com.teb
com.pozitron.iscep
com.softtech.isbankasi
com.ykb.android
com.ykb.androidtablet
com.tmob.denizbank
com.tmob.tabletdeniz
com.garanti.cepsubesi
biz.mobinex.android.apps.cep_sifrematik
com.htsu.hsbcpersonalbanking
com.ingbanktr.ingmobil
com.magiclick.odeabank
com.finansbank.mobile.cepsube
finansbank.enpara
com.pozitron.albarakaturk
com.kuveytturk.mobil

而且源代码中的电话号码也会被Bankbot阻止:

Toast.makeText((Context)context, (CharSequence)"Giden Aramalar Engellendi.", (int)0).show();

这些电话号码都是用于访问相关银行的电话银行系统的。

this.b = arrayList.getStringExtra("incoming_number");
arrayList = new ArrayList();
arrayList.add( “+ 9008502200000”);
arrayList.add( “+ 908502200000”);
arrayList.add( “+ 904440000”);
arrayList.add( “+ 9008502220400”);
arrayList.add( “+ 908502220400”);
arrayList.add( “+ 904440400”);
arrayList.add( “+ 9008502220724”);
arrayList.add( “+ 908502220724”);
arrayList.add( “+ 904440724”);
arrayList.add( “+ 9008502222525”);
arrayList.add( “+ 908502222525”);
arrayList.add( “+ 904442525”);
arrayList.add( “+ 9008502227878”);
arrayList.add( “+ 908502227878”);
arrayList.add( “+ 904447878”);
arrayList.add( “+ 9008502000666”);
arrayList.add( “+ 908502000666”);
arrayList.add( “+ 904440832”);
arrayList.add( “+ 9002166353535”);
arrayList.add( “+ 902166353535”);
arrayList.add( “+ 9008507240724”);
arrayList.add( “+ 908507240724”);
arrayList.add( “+ 904440202”);
arrayList.add( “+ 9008502220444”);
arrayList.add( “+ 908502220444”);
arrayList.add( “+ 904440444”);
arrayList.add( “+ 9008502220800”);
arrayList.add( “+ 908502220800”);
arrayList.add( “+ 904440800”);
arrayList.add( “+ 9008502220333”);
arrayList.add( “+ 908502220333”);
arrayList.add( “+ 904440333”);
arrayList.add( “+ 9008502110111”);
arrayList.add( “+ 908502110111”);
arrayList.add( “+ 9008502220600”);
arrayList.add( “+ 908502220600”);
arrayList.add( “+ 904448444”);
arrayList.add( “+ 9002123048444”);
arrayList.add( “+ 902123048444”);
arrayList.add( “+ 9008502220900”);
arrayList.add( “+ 908502220900”);
arrayList.add( “+ 904440900”);
arrayList.add( “+ 9008502223663”);
arrayList.add( “+ 908502223663”);
arrayList.add( “+ 9008502225666”);
arrayList.add( “+ 908502225666”);
arrayList.add( “+ 904445666”);
arrayList.add( “+ 9002166660101”);
arrayList.add( “+ 902166660101”);
arrayList.add( “+ 9008502510123”);
arrayList.add( “+ 908502510123”);
arrayList.add( “+ 9002123541111”);
arrayList.add( “+ 902123541111”);
arrayList.add( “08502200000”);
arrayList.add( “8502200000”);
arrayList.add( “4440000”);
arrayList.add( “08502220400”);
arrayList.add( “8502220400”);
arrayList.add( “4440400”);
arrayList.add( “08502220724”);
arrayList.add( “8502220724”);
arrayList.add( “4440724”);
arrayList.add( “08502222525”);
arrayList.add( “8502222525”);
arrayList.add( “4442525”);
arrayList.add( “08502227878”);
arrayList.add( “8502227878”);
arrayList.add( “4447878”);
arrayList.add( “08502000666”);
arrayList.add( “8502000666”);
arrayList.add( “4440832”);
arrayList.add( “02166353535”);
arrayList.add( “2166353535”);
arrayList.add( “08507240724”);
arrayList.add( “8507240724”);
arrayList.add( “4440202”);
arrayList.add( “08502220444”);
arrayList.add( “8502220444”);
arrayList.add( “4440444”);
arrayList.add( “08502220800”);
arrayList.add( “8502220800”);
arrayList.add( “4440800”);
arrayList.add( “08502220333”);
arrayList.add( “8502220333”);
arrayList.add( “4440333”);
arrayList.add( “08502110111”);
arrayList.add( “8502110111”);
arrayList.add( “08502220600”);
arrayList.add( “8502220600”);
arrayList.add( “4448444”);
arrayList.add( “02123048444”);
arrayList.add( “2123048444”);
arrayList.add( “08502220900”);
arrayList.add( “8502220900”);
arrayList.add( “4440900”);
arrayList.add( “08502223663”);
arrayList.add( “8502223663”);
arrayList.add( “08502225666”);
arrayList.add( “8502225666”);
arrayList.add( “4445666”);
arrayList.add( “02166660101”);
arrayList.add( “2166660101”);
arrayList.add( “08502510123”);
arrayList.add( “8502510123”);
arrayList.add( “02123541111”);
arrayList.add( “2123541111”);

不过我们也发现开发恶意软件的人可能会有点懒惰或在编程方面没有什么经验,显示用于拦截/阻止传出呼叫的字符串和网上搜到的一模一样。

 针对Android设备的开源手机银行木马BankBot / Mazain分析

C&C服务器还有用于从用户获取凭据的特殊登录页面:

 针对Android设备的开源手机银行木马BankBot / Mazain分析

显示钓鱼窗口WebView,并从命令中指定的链接下载内容。 

 针对Android设备的开源手机银行木马BankBot / Mazain分析

以上就是我们对他们的分析,我们有理由相信随着手机银行业务的普及,今年可能会面临更多类似的情况。




原文发布时间为:2017年5月17日
本文作者:Change
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
4天前
|
Java 开发工具 Android开发
安卓与iOS开发环境对比分析
【7月更文挑战第4天】在移动应用开发的广阔天地中,安卓和iOS两大平台各据一方,引领着技术潮流。本文将深入探讨这两个平台的开发环境,从编程语言、工具链到市场分布等多个维度进行比较。我们将揭示各自的优势与局限,并分析开发者如何在这两个不同的生态系统中做出选择。通过本文,读者将获得一个全面的视角,理解两大平台在开发实践中的差异性及其对项目成功的影响。
|
5天前
|
算法 Java API
Android性能优化面试题经典之ANR的分析和优化
Android ANR发生于应用无法在限定时间内响应用户输入或完成操作。主要条件包括:输入超时(5秒)、广播超时(前台10秒/后台60秒)、服务超时及ContentProvider超时。常见原因有网络、数据库、文件操作、计算任务、UI渲染、锁等待、ContentProvider和BroadcastReceiver的不当使用。分析ANR可借助logcat和traces.txt。主线程执行生命周期回调、Service、BroadcastReceiver等,避免主线程耗时操作
18 3
|
13天前
|
API 开发工具 Android开发
安卓与iOS开发环境对比分析
本文将探讨安卓与iOS两大移动操作系统在开发环境中的差异,包括编程语言、工具链、API设计哲学、应用商店政策以及开发者社区支持等方面。通过比较分析,旨在帮助开发者更好地选择适合自己项目需求的平台,并理解不同环境下的开发挑战和机遇。
|
1天前
|
人工智能 安全 物联网
未来安卓系统的发展趋势与挑战分析
随着移动技术的飞速发展,安卓系统在智能手机和智能设备领域占据着重要地位。本文探讨了未来安卓系统的发展趋势及其面临的挑战,包括人工智能集成、安全性提升和生态系统扩展等方面。通过分析当前技术进展和市场需求,展望了安卓系统可能的发展方向,为技术研究和产业发展提供了新的视角。 【7月更文挑战第7天】
8 0
|
5天前
|
数据挖掘 开发工具 Android开发
安卓与iOS开发环境的对比分析
在移动应用开发的广阔领域中,安卓和iOS作为两大主导平台,各自拥有独特的开发环境。本文旨在深入探讨安卓的开放性与灵活性、多样化的开发工具以及广泛的设备兼容性,并与iOS的开发环境进行比较。通过引用最新的行业数据,分析开发者社区规模、应用市场的分布情况,并结合具体的开发案例,揭示两种环境在实际应用中的表现差异。文章将详细阐述安卓开发环境的多方面优势,同时客观评估其面临的挑战,为移动应用开发者提供全面而深入的见解。
|
11天前
|
前端开发 开发工具 Android开发
安卓与iOS开发环境的差异性分析
在移动应用开发的广阔天地中,安卓与iOS两大平台各自占据着半壁江山。开发者在选择开发环境时往往需权衡两者的技术架构、开发工具及市场策略等多方面因素。本文深入探讨了安卓和iOS开发环境的主要差异,包括编程语言、IDE选择、API设计哲学等技术层面,以及用户群体、市场份额和分发渠道等市场层面的差异。通过对比分析,旨在为移动应用开发者提供清晰的决策依据,帮助他们在激烈的市场竞争中找到适合自身项目需求的最佳开发路径。
12 0
|
11天前
|
JavaScript
技术心得:根据不同访问设备跳转到PC页面或手机页面
技术心得:根据不同访问设备跳转到PC页面或手机页面
|
12天前
|
IDE 开发工具 Android开发
安卓与iOS开发环境对比分析
在移动应用开发的广阔天地中,安卓和iOS平台各自扮演着不可或缺的角色。本文将深入探讨两大主流移动操作系统的开发环境,从编程语言、开发工具、用户界面设计以及跨平台框架等多个维度进行细致对比。我们将揭示它们在开发效率、用户体验和技术生态上的差异,旨在为开发者提供一份全面而实用的指南,帮助他们根据项目需求和目标受众作出更明智的技术选择。
14 0
|
API 网络安全 Android开发
Android 设备唯一标识(适配Android版本)
Android 设备唯一标识(适配Android版本)
839 0
Android 设备唯一标识(适配Android版本)
|
存储 安全 搜索推荐
2022Android设备唯一标识(AndroidID,OAID等 )
2022Android设备唯一标识(AndroidID,OAID等 )
2839 0
2022Android设备唯一标识(AndroidID,OAID等 )