揭秘:安卓木马是如何盗取用户手机银行的

手机银行是一种非常便捷的方式让用户可以随时随地的完成交易。KPMG预测手机银行用户在2019年会增长到1.8亿。但是,随着手机银行涉及的金钱数额越来越大,攻击者要找到更多创造性的方式来窃取金钱。

就在上周,新加坡银行协会(ABS)发布了公告称手机银行恶意软件感染安卓智能机的数量大幅上升。我们很有兴趣深入研究这种新兴的威胁,之后我们发现了一个目标是手机银行app的安卓恶意软件,于是我们对它展开了进一步研究。

安装

这种移动端恶意软件通过其他恶意软件-一个独立的app或者用户登入恶意网站时进行他们不了解的下载更新进入到用户的手机中。

目前为止,我们把所有遇到的伪装过的样本归结命名为假冒的Adobe Flash Player,这个名字并不奇怪,大家都知道"Adobe Flash Player"这个梗(这个东西今年被曝出很多漏洞啊,还有0day什么的,大家都懂的)。Adobe Flash Player所需的权限要比同类普通应用高的多(事实上,在某些情况下安卓并不支持它)。Player最引人注目的权限就是被激活为设备管理员,也就是需要安卓的最高权限,这点很容易被恶意软件操纵。从本质上讲,设备管理员权限赋予了这款恶意软件禁止用户强制停止和卸载app的权利,它的进程决定了移除它非常困难。

图1:安装、许可和设备管理员

图2:恶意软件要求获取设备管理员权限

深入了解恶意代码

木马病毒的配置数据

如下图所示,恶意软件检索和解码它的配置文件,Base64编码,使用"@"解析,因此它可以以数组形式储存。

图3:代码检索配置文件

经过解码的Base64配置数据显示了它的C&C服务器,目标的应用程序,银行列表,C&C命令等等。

图4:Base 64解码的配置数据

每当恶意软件需要特定的数据,它可以通过对于数组来说作为索引的硬编码整数值进行检索。如下面的代码所示,整数值14和46指向带有"type"和"device info"值的配置数组的索引。我们还可以看到C&C服务器和作为感染设备标志符的代码值来回应。

图5:配置索引

我们再来看下清单文件,然后就能很快发现样本想要做什么了。我们很确定这款恶意软件的目标就像我们之前提到的一样,针对手机银行和移动支付用户。下面是清单文件的截图:

图6:安卓的清单

这款恶意软件可以通过创建伪造银行窗口来进行网络钓鱼获取被然后用户的银行信息,如信用卡帐号、账单地址、银行用户名、PIN和密码等等。

下图是基于我们样本的被瞄准的银行和支付服务的列表:

图7:目标银行和目标支付服务

接下来我们再看看恶意软件的核心功能及主要操作,尤其是执行数据窃取的一系列活动。

钓鱼技巧

当受害人打开合法手机银行或者支付app时,该恶意软件同时打开了它伪造的银行窗口,然后把两个窗口叠加,用户很难通过界面发现一个新的窗口被打开了。假冒的窗口和原生窗口非常类似。然而,当用户点击其他功能,比如编辑或者屏幕上的菜单功能时就能发现他们的区别了。在这里,假冒的界面没有任何反应,因为假的用户界面没法实现这些功能。

图8:伪造的银行界面

点击更多任务查看两种登录页面-第一个是合法的应用程序,第二个是伪造的Adobe Flash Player。

图9:多任务查看

另外一些钓鱼窗口的例子,他们简直和合法窗口太像了:

图10:银行网络钓鱼窗口

图11:信用卡钓鱼窗口

收集登录凭证

像前面所说的,最重要的一部就是劝说受害者进入他们伪造的登录界面进行信息验证。因此,恶意软件需要做的第一件事就是决定确定用户使用的是什么公司的银行以及银行界面长什么样。

恶意软件定期检查设备上运行的app并通过getPackageName() API调用检索应用程序相关的界面名称然后把这个来自这个API的返回参数和下面这个目标应用程序名字列表进行比较:

金融应用程序:

com.commbank.netbank com.cba.android.netbank au.com.nab.mobile org.westpac.bank org.stgeorge.bank com.anz.android.gomoney nz.co.kiwibank.mobile nz.co.westpac nz.co.bnz.droidbanking nz.co.anz.android.mobilebanking de.dkb.portalapp dk.bec.android.mb1.b00037.prod com.hangseng.servicemenuapp com.scb.breezebanking.hk com.citibank.mobile.hk at.bawag.mbanking at.erstebank.george at.spardat.netbanking com.bankaustria.android.olb com.dbs com.posb com.ocbc.mobile com.uob.mobile com.paypal.android.p2pmobile com.isis_papyrus.raiffeisen_pay_eyewdg com.bbva.bbvacontigo es.bancosantander.apps Social and communication application com.android.vending com.google.android.music com.whatsapp com.viber.voip com.instagram.android com.skype.raider com.google.android.gm

图12:获取正在运行进程的包的名字

如果匹配的应用程序被发现正在受感染设备上运行,负责回应的类会显示上映的伪造的登录页面。

图13:在伪造的登录页显示的流量

下面的视频解释了一个真实的攻击情形,当用户的手机被感染时,他们的网上银行凭据是如何被窃取的。希望这个关于真实攻击的视频可以给你启示:

视频1:DBS钓鱼场景

你可以从这个视频看出,当真实的DBS应用被触发时,受害者将看到一个假冒的DBS登录画面。之后你可以看到受害者会被要求进入这个登录界面两次。接下来,受害者将被重定向到合法的DBS应用GUI。

在假的登录界面截取的登录凭证就会被恶意软件发送的C&C服务器上:

图14:发送窃取的凭证

截取一次性密码(OTP)

银行经常把短信作为一次性密码(OTP)发送给用户作为用户ID和密码之外的登录凭证。获取这种额外的登录凭证需要攻击者进入受害者的设备获取接入OTP的权限来获取OTP。

恶意软件通过把自己注册成安卓操作系统的SMS广播接收方来完成OTP获取工作。在这种理论中,只要受害者在安装时授予了软件合适的执行权限,恶意软件就能很轻松的完成这项工作,这种权限在清单文件中被明确的指出了。因此,所有接收的SMS都可以被很容易的劫持,SMS的内容可以被发送到攻击者的C&C服务器。

图15:拦截所有接收到的SMS短信

持久性机制

我们还有兴趣了解恶意软件的持久性机制是如何工作的。在清单列表的表住下,我们快速定位了持久性机制的入口点-android.intent.action.BOOT_COMPLETED 和 android.intent.action.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE。但是,分析反编译源码并不是一项简单的任务,因为攻击者把java代码进行了模糊处理。好消息是模糊的代码可以被轻易地确定,因为只有一小部分垃圾代码和实际代码进行了混合。

清理Service Starter代码中的垃圾代码后,我们意识到恶意软件看起来回避了俄罗斯用户。这可能表明,这段恶意代码来自俄罗斯。

图16:清单文件显示持久性机制的切入点类名称

图17:当手机启动时,接收功能将被启动

图18:创建服务处理函数从接收器被调用

我们可以从图18看出,恶意软件丢弃使用硬编码文件名的SD卡中的隐藏文件。

图19:保存文件到SD卡的原始配置数据

结论

大多数安卓恶意软件app不会自动安装-他们需要用户参与来感染设备。所以如果你想让你的设备安全就需要在下载和更新应用程序时保持警惕。明智的做法是从Google Play商店这种安全的受信任的源来下载应用程序。

话虽这么说,恶意软件编写者也会提高钓鱼能力,让用户下载看起来像合法app的恶意软件并进行更新。安装安全软件更有助于保护用户的个人数据和设备上的在线交易资料。

主动检测恶意软件,如Android/Acecard.B!tr,C&C服务器就会被监测成Android.Acecard。

相关MD5哈希:

76745ce873b151cfd7260e182cbfd404 702770d70c7aab793ffd6a107fd08dad eeab2f9137c59efdfae5db2b2b93f178 d08b2f4d851b2505f4aed31ecfa53c2e a7e28a9efc8a6acb02d65829a6d773c2

C&C服务器列表:

http://37.235.48.177:34580 http://46.108.39.12:34580 http://5.196.243.6:34580 http://31.148.219.192:34580

如何删除恶意软件

第一步:把你的手机或者平板设置为安全模式。按住手机电源键知道手机提示你关机。接下来,点击并按住电源关闭直到手机提示你重新启动到安全模式,然后点击确定。如果你的设备没有翻译,你可以百度一下,"你的手机型号如何进入安全模式"。

图20:让你的手机进入安全模式

第二步:在安全模式里,打开设置菜单,滑到安全选项进入。查看名叫设备管理员的一栏,点击进入。现在它会显示设备的管理员列表。移除它作为设备管理员的一项,停用恶意软件app Adobe Flash Player作为设备管理员。

图21:找到注册为设备管理员的可以应用

第三步:进入设置带但,滚到应用程序,确保有下载选项。点击恶意软件app Adobe Flash Player,打开app info(app信息),然后点击uninstall(卸载)并确定。

图22:卸载银行木马

第四步:用正常模式重启手机

更多如何找到恶意软件的指示

通过使用如文件管理或者安卓SDK工具的adb第三方应用,你可以浏览额外的存储信息,如SD卡等,然后你可以查看隐藏文件(在文件名前加.)。然后你可以查看每个隐藏文件,找到类似于图19中的文件名。

从设备管理员列表中查看任意不知名的或者没见过的应用,如图21所示。

小编寄语

小编是果粉!因为苹果的iOS更加安全,安卓因为版本太多,机型不一,每种都有不同的机制,给黑客带来了更多可乘之机,怎么保护我们的隐私不受到侵害?我们的金钱不被窃取?我们的生活不受到影响?定期检查更新,及时进行系统更新;不使用root权限或者锁住root权限;定期杀毒;按时看freebuf,了解最新的漏洞资讯,查看自己的手机是否有中毒情况;在付款时不要贪图快而大意;自己加倍小心才能不给罪犯可乘之机。

*原文地址:fortinet,FB小编FireFrank编译,转载请注明来自FreeBuf黑客与极客(FreeBuf.com)

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2015-12-13

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python中文社区

基于 Python 的僵尸网络将 Linux 机器变成挖矿机器人

F5 Networks 的安全研究人员发现了一个新的 Linux 加密僵尸网络,并将其命名为"PyCryptoMiner",它主要的攻击目标是具有公开 SSH...

3165
来自专栏FreeBuf

银行木马Trickbot新模块:密码抓取器分析

Trickbot曾经是一个简单的银行木马,已经走过了漫长的道路。随着时间的推移,我们已经看到网络犯罪分子如何继续为此恶意软件添加更多功能。

1543
来自专栏区块链

什么是安全漏洞,黑客如何利用它攻击你?

你应该很清楚,软件中的安全漏洞或漏洞可能会导致你的计算机或网络遭到黑客攻击——换句话说,恶意的第三方将控制你的系统,安装恶意软件会窃取你的信息。 但是黑客究竟是...

3056
来自专栏FreeBuf

运维配置缺陷导致大量MongoDB数据信息遭泄露

近日,黑客组织GhostShell泄露了大量的MongoDB数据库用户资料。 数据遭到大量泄露 据统计该组织目前泄露的数据已达3600万条之多。MongoDB作...

22210
来自专栏V站

当你360搜索引擎收录为0与1,被K时应该这么做?

在被360搜索引擎满收录的那些日子,突然有一天,许多站点都被K光(不包含新站),当然月宅酱的博客也不例外,被K了只有www一个首页,也没有拒绝360爬虫,更没有...

4472
来自专栏FreeBuf

跨平台后门Mokes现已加入OS X豪华午餐

近期,卡巴斯基实验室的安全研究人员发现了一种恶意软件,这种恶意软件可以在目前主流的几款操作系统平台上运行,包括Windows、Linux和Mac OSX。 根据...

1919
来自专栏黑白安全

新漏洞允许黑客访问处于睡眠模式的电脑

互联网安全公司F-Secure发现了一个新漏洞,几乎影响到每台电脑。新发现的漏洞可能允许黑客在电脑进入睡眠状态时访问加密的硬盘。F-Secure在博客文章中分享...

1143
来自专栏Seebug漏洞平台

Seebug漏洞平台2016年度报告

目录 一、概述 二、漏洞详情等信息以及漏洞验证程序(PoC)收录状况 2.1 漏洞验证程序(PoC)数量统计分析 2.2 收录漏洞的危害等级分布统计分析 2.3...

4143
来自专栏FreeBuf

从一次攻防平台搭建浅谈企业网络安全建设

本篇文章涉及到的知识点包括:IDS/IPS/防火墙的区别与部署位置;镜像端口、堡垒机的位置和注意细节;ACL访问控制列表和端口安全、VLAN安全,以及靶场以及日...

6063
来自专栏字根中文校对软件

Apache CloudStack 4.5.2 新特性一览

     Apache CloudStack 4.5.2 新特性一览 ? CloudStack 4.5.2 相比前一个版本修复了大约 200 个Bug。   ...

3026

扫码关注云+社区

领取腾讯云代金券