导语:SophosLabs安全研究员的近日发现了一个针对移动设备的恶意软件攻击活动,该活动利用植入的应用推荐通知来传播Red Alert 2.0。
SophosLabs安全研究员的近日发现了一个针对移动设备的恶意软件攻击活动,该活动利用植入的应用推荐通知来传播Red Alert 2.0,根据调查,Red Alert 2.0会伪装成知名社交媒体或媒体播放器应用,又或者伪装系统更新的补丁通知,当用户点击这些通知时,这些链接就会重定向到恶意网站。除了以上这些手段外,研究人员发现,攻击者着重的目标是把Red Alert 2.0伪装成一个VPN以试图诱使用户下载、安装。
Red Alert 2.0的伪装过程
在野外攻击中,研究人员发现进行诱导的网页会被设计成类似于合法的应用程序介绍页面,对于攻击者来说,伪造的对象都是一些比较受欢迎的合法移动应用程序,例如媒体播放器或社交媒体应用程序,不过重点还是VPN软件。
上图左侧显示的网页托管在一个看似正常的域free-vpn[.]download,在调查过程中,此域名虽然已被攻击者注册,但尚未使用。
如上图所示,伪装的网页使用了与Google Play商店中的合法VPN应用程序(VPN代理主机)类似的配色方案和图标设计。不过,该伪装程序并没有完全确定该应用名称。
除了用“Free VPN Master Android”这个名称之外,研究人员还观察到Red Alert 2.0在野外使用了以下名称进行伪装:
· Flash Player或Update Flash Player
· Android Update或Android Antivirus
· Chrome Update或Google Update
· Update Google Market
· Viber
· OneCoin Wallet
· Pornhub
· Tactic FlashLight 或 PROFlashLight
· Finanzonline
不知出于什么原因,绝大多数伪装的Red Alert 2.0样本都会将自己命名为“Adobe Flash player”, 而“Adobe Flash player”则是Adobe多年前就停止支持的实用程序。近期,研究人员的追踪日志显示了许多同时运行此名称的Red Alert 2.0,其中许多(但不是全部)都托管在动态DNS域上。
Red Alert 2.0的有效载荷
安装后,恶意软件会请求设备管理员权限。
如果恶意软件获得设备管理员权限,它将能够自行锁定屏幕,使原来的密码失效,并拒绝通过常规方法卸载。
然后,该应用程序就可以在后台听取来自攻击者的命令。
这些命令的第一个命令,往往是要求恶意软件查找目标设备中的银行信息列表。只要用户启动银行应用程序,恶意软件就会随之开始运行。
确定当前正在运行的应用程序
通常,恶意软件会伪造一个银行应用的登录页面,在真正的应用打开时,恶意应用就会覆盖在真正的登录页面上,攻击者往往会利用这个机制窃取用户的银行登录凭据。不过,Red Alert 2.0会在做这些之前,对目标设备里的银行应用进行检测,已确定给程序是否适合攻击,如果适合攻击,就会设计出相应的伪装覆盖页面,并最终拦截并窃取用户数据。因此,确定当前正在运行的应用程序是发生Red Alert 2.0攻击的标志之一,所以研究人员认为应该仔细研究这一过程是如何完成的。
为了防止这种情况发生,Android的工程师们定期发布一些更新,其中就包含了一些旨在防止那些在未经明确许可的情况下,其应用程序列表就被非法获取的漏洞。不过每一次的Android更新之后,恶意软件的开发者们都会被迫想出新的攻击花招。
本次发现的这个恶意软件也不例外,此恶意软件的开发者就是编写了一个单独的子例程,用于识别操作系统版本并触发恶意进程查找当前运行的应用程序列表,以便确定要攻击的应用程序是否处于特定版本的Android上。
首先,恶意进程会使用内置工具箱的命令来确定正在运行的应用程序。如果这些命令不起作用,恶意进程则会尝试使用queryUsageStats。
当恶意软件调用queryUsageStats时,该命令会询问在过去100万毫秒(16分40秒)内所有运行的应用程序列表。
用于存储应用程序数据的字符串资源
Red Alert 2.0会将其恶意代买存储在非典型位置(atypical location )(嵌入在应用程序中的Strings.xml文件内)以获取目标设备的关键数据,例如C2地址。
上面屏幕截图中的com.dsufabunfzs.dowiflubs字符串代表的就是这个特定恶意软件的内部名称,在以上所举的样本中,该字符串会被随机分配,而SophosLabs观察到的Red Alert 2.0样本通常有一个像以下这样的随机内部名称。
应用程序的字符串部分包含嵌入明文字符串中的命令和控制IP地址、端口和域名,这些信息可是攻击活动的关键。
下面的代码片段显示了样本木马中使用SQLite数据库命令存储及调用命令和控制地址的位置:
后门命令
Red Alert 2.0代码还包含僵尸主机发送给它的嵌入式命令列表,该恶意软件可以执行各种任意命令,包括在用户不知情的情况下拦截或发送短信,获取受害者邮件地址簿的副本、通讯录、短信,甚至发送电话网络功能代码(也称为作为USSD代码)。
C2和目标银行
如上所述,C2域保存在应用程序的资源中。在应用程序执行期间,恶意软件会联系C2域以获取进一步的指令。
研究人员观察到的大多数网络流量都是HTTP,而存储在我们以上看到的样本中的C2地址包括IP地址和端口号,到目前为止,研究人员测试的所有样本都试图联系端口7878 / tcp上的IP地址。
如果主要C2域没有响应,则恶意软件就会从Twitter帐户获取备份C2域。对代码的静态分析表明,恶意软件会下载伪造的银行登录页面模板,以针对其攻击目标银行。
恶意软件还会以HTTP POST形式将受感染设备的定期监控数据发送回C2服务器,由下图可以看出,发送回的数据是以基础Dalvik User-Agent字符串表示恶意软件目前所运行设备的基本信息。
HTTP POST数据的内容以json格式表示,都是关于恶意软件正在运行的设备的监控数据。
Red Alert 2.0目前所针对的银行名单包括NatWest,Barclays,Westpac和Citibank。
总结
Red Alert 2.0是一个银行恶意软件,目前非常活跃,并且给Android设备带来了大量的安全风险。
随着时间的推移,研究人员预计这银行恶意软件将采用更多样化的社会工程方法。不过令人可以放心的是,到目前为止,Red Alert 2.0伪装的各种应用程序,似乎都无法在合法的应用商店中看到,这意味着,它只能通过网页链接等非常规手段,来诱使用户下载。所以,选择从官方商店中下载安装是一种有效的预防措施。
Sophos已经检测到了该恶意家族的所有样本,如Andr/Banker-GWC和Andr/Spybot-A。
IoCs
C2地址
103.239.30.126:7878 146.185.241.29:7878 146.185.241.42:7878 185.126.200.3:7878 185.126.200.12:7878 185.126.200.15:7878 185.126.200.18:7878 185.165.28.15:7878 185.243.243.241:7878 185.243.243.244:7878 185.243.243.245:7878
域
167.99.176.61上的恶意软件样本网站主机:
free-androidvpn.date free-androidvpn.download free-androidvpn.online free-vpn.date free-vpn.download free-vpn.online
哈希
22fcfce096392f085218c3a78dd0fa4be9e67ed725bce42b965a27725f671cf 55292a4dde8727faad1c40c914cf1be9dfdcf4e67b515aa593bcd8d86e824372 be92a751e5abbcd24151b509dbb4feb98ea46f367a99d6f86ed4a7c162461e31 5c4d666cef84abc2a1ffd3b1060ef28fa3c6c3bb4fad1fa26db99350b41bea4c 06081ab7faa729e33b9397a0e47548e75cbec3d43c50e6368e81d737552150a5 753999cb19a4346042f973e30cf1158c44f2335ab65859d3bfa16bca4098e2ef