为了进一步提升平台账号的安全性,防止因数据泄露导致的配置篡改等风险,我们近期对平台的登录安全策略进行了全面的加固与升级。此次升级的核心在于引入了二次认证机制,该机制能够在账号触发异常登录行为时,要求用户再次进行身份验证,从而有效增强账号的保护力度。
接运营商通知,北京时间 2024-11-06 00:00~06:00 将对报表及日志服务所在机房进行割接维护。在此期间,可能会导致报表查询/下载及日志下载不可用。若您有相关操作需求,请避开此时段进行。
知道创宇云防御平台将于北京时间 2024-11-02 01:00 至 2024-11-02 03:00 进行升级维护。升级时间预计两小时,在此期间,知道创宇云防御平台将暂停访问,若您有需要通过云防御平台进行操作的需求,请避开此时间段,提前或在升级完成后进行处理。
获取最新安全动态
近日,卡巴斯基实验室针对近来最为活跃的Rotexy木马家族进行了深入分析。在2018年8月到10月这三个月里,该木累计发动了7万多次攻击,受害者主要是位于俄罗斯的安卓用户。
该木马家族具有一个独有的特点,即同时使用三个命令源:
这种“多才多艺”在Rotexy的第一个版本中就已经体现出来,并且成为该木马家族后续变种的一个代表性特点。卡巴斯基实验室,该木马家族是从2014年10月首次发现的SMS短信间谍软件发展而来的。在当时,它被检测为Trojan-Spy.AndroidOS.SmsThief,但后续版本被归类为了另一个家族——Trojan-Banker.AndroidOS.Rotexy。
值得注意的是,最近发布的Rotexy版本结合了银行木马和勒索软件的功能。它以文件名“AvitoPay.apk(或类似文件名)”进行传播,并通过名称类似于youla9d6h.tk、prodam8n9.tk、prodamfkz.ml、avitoe0ys.tk这样的网站下载。这些网站的名称是根据一种具有明确定义的算法生成的:前几个字母代表的是一些流行的分类广告服务,随后是随机字符串,最后是两个字母的顶级域名。
2014-2015
自2014年该恶意软件被检测到以来,Rotexy的主要功能和传播方法并没有发生改变:通过网络钓鱼短信中的链接进行传播,提示用户安装一个app。在启动时,会请求设备管理员权限,然后开始与其C&C服务器通信。
Rotexy木马DEX文件中的典型类列表
直到2015年年中,Rotexy一直使用纯文本JSON格式与其C&C服务器进行通信。C&C服务器地址在其代码中指定,并且没有经过加密处理:
在某些版本中,一个动态生成的底层域名被用作C&C服务器地址:
在初次通信中,Rotexy会将受感染设备的IMEI发送给C&C服务器。作为回复,它会收到一组用来处理传入的短信(电话号码、关键字和正则表达式)的规则——这些规则主要适用于来自银行、支付系统和移动网络运营商的短信。例如,Rotexy可以自动回复短信并立即将其删除。
发送给C&C的消息(请求短信处理规则),以及服务器的回复
随后,Rotexy会将有关智能手机的相关信息发送给C&C服务器,包括手机型号、号码、移动网络运营商名称、操作系统版本和IMEI。
对于每一个后续请求,Rotexy都会生成一个新的子域名(用于生成底层域名的算法硬编码在Rotexy的代码中)。
此外,Rotexy还会在Google云消息(GCM)服务中注册,这意味着它可以通过该服务来接收命令。Rotexy的命令列表在其整个生命周期中几乎保持不变,这一点将在后面详细介绍。
Rotexy的assets文件夹包含文件data.db,其中包含PAGE指令(用于下载指定的网页)所对应的User-Agent字段值。如果该字段值未能从C&C服务器接收到,那么Rotexy则会使用伪随机数算法从文件data.db中选择一个值。
data.db的内容
2015-2016
从2015年年中开始,Rotexy开始使用AES算法来加密受感染设备与C&C之间的通信数据:
同样从这个版本开始,相关数据会通过一个POST请求发送到格式为“/[number]”(一个使用伪随数算法生成的数字,范围在0-9999之内)的相对地址。
从2016年1月份开始,在一些样本中,Rotexy还实现了一种算法,能够从assets文件夹中解压缩经过加密处理的DEX可执行文件。而在这个Rotexy版本中,动态生成的底层域名没有被使用。
2016
从2016年年中开始,攻击者重新启用了动态生成的底层域名。但在Rotexy的网络行为方面,没有出现其他重大变化。
Rotexy向C&C发出的请求
在2016年年末,出现了assets/www文件夹中包含card.html网络钓鱼页面的Rotexy版本。这个页面旨在窃取用户的银行卡详细信息:
2017–2018
从2017年年初开始,HTML网络钓鱼页面bank.html、update.html和extortionist.html开始出现在assets文件夹中。此外,在某些Rotexy版本中,网络钓鱼页面文件名是随机字符串。
在2018年,使用其IP地址与C&C服务器进行联系的Rotexy版本开始出现。随之出现的还有“一次性”域名,它由随机字符串和数字组成,并且使用了类似于.cf、.ga、.gq、.ml或.tk这样的顶级域名。
此外,Rotexy也开始积极使用不同的混淆方法。例如,DEX文件包含大量垃圾字符串,其中包含一个用于从APK中解密主可执行文件密钥。
最新版本(2018)
现在让我们回到当前,详细介绍Rotexy家族的一个代表性版本(SHA256:ba4beb97f5d4ba33162f769f43ec8e7d1ae501acdade792a4a577cd6449e1a84)的功能。
在首次启动时,Rotexy会检查它是否是在仿真环境中启动,以及在哪个国家/地区启动。如果设备位于俄罗斯境外或仿真环境,那么应用程序将会显示如下页面:
对于本文分析的样本,木马的日志包含一些俄语记录,但存在语法错误和拼写错误:
如果检查通过,Rotexy将向GCM注册并启动SuperService,以跟踪其是否具有设备管理员权限。SuperService还会跟踪自己的状态,如果被停止运行,则重新启动。特权检查会每秒钟执行一次, 如果没有被授予设备管理员权限,Rotexy则向用户反复不断地发出请求:
如果用户同意并授予应用程序所请求的权限,那么它则会显示另一个页面,并隐藏自己的图标:
如果Rotexy检测到试图撤销其管理员权限的尝试,那么它则会关闭手机屏幕,以阻止用户的操作。如果权限被成功撤销,那么Rotexy则会重新启动,并重新向用户反复不断地发出授予管理员权限的请求。
在某些情况下,当Rotexy检测到试图撤销其管理员权限的尝试时,SuperService不会关闭屏幕,而是会试图警告用户:
在运行时,Rotexy会跟踪以下内容:
默认的C&C服务器地址硬编码在Rotexy的代码中:
Rotexy使用伪随机数算法来生成相对地址,并将信息发送到该地址。对于某些Rotexy版本而言,它们还可以使用动态生成的子域名。
在这个Rotexy样本中,Plugs.DynamicSubDomain的值为false,因此不会生成子域名
另一方面,Rotexy将与C&C服务器有关的信息以及从受感染设备收集的数据存储在本地的SQLite数据库中。
首先,Rotexy会在管理面板中注册,并从C&C服务器接收操作所需的信息(即短信拦截规则和将在HTML页面上显示的文本):
Rotexy会拦截所有传入的短信,并根据从C&C服务器收到的规则来处理它们。此外,当收到短信时,Rotexy会将手机设置为静音模式并关闭屏幕,以便用户不会注意到已收到的短信。在需要时,Rotexy还会将拦截的短信发送到指定的电话号码(在拦截规则中指定是否必须发送回复信息,以及应将哪个文本发送到哪个地址)。如果Rotexy没有收到有关如何处理短信的规则,则只会将所有短信保存到本地数据库,并将它们上传到C&C服务器。
除了有关受感染设备的一般信息之外,Rotexy还会将所有正在运行的进程和已安装的应用程序的列表发送给C&C服务器。攻击者可能会使用该列表来查找正在运行的防病毒或银行应用程序。
Rotexy在收到相应的命令后会执行进一步的操作:
Rotexy的C&C服务器不仅可以由Web服务器来担任,还可以由任何可以发送短信的设备来担任。Rote会拦截所有传入的短信,并可以从这些短信中接收以下命令:
与Rotexy所执行操作相关的信息均记录在本地数据库中,并会发送到C&C服务器。随后,服务器会返回响应数据,其中包含有关下一步将要执行的操作的说明。
现在,让我们来看看Rotexy会显示的HTML页面,以及它会使用这些页面执行哪些操作。
1、Rotexy会显示一个虚假的HTML更新页面(update.html),它会占用设备的屏幕很长一段时间。
2、Rotexy会显示一个勒索页面(extortionist.html),并要求用户支付勒索赎金以解除对设备的锁定。
3、Rotexy会显示一个网络钓鱼页面(bank.html),提示用户输入银行卡详细信息。该页面伪装成合法的银行页面,并占用设备屏幕,直到用户输入所有信息为止。Rotexy甚至拥有自己的软键盘,以示可以保护用户不会受到键盘记录器的侵害。
在{text}标记的区域中,Rotexy会显示它从C&C服务器接收到的文本。通常,这是一条消息,声称用户收到了一笔汇款,但必须输入银行卡详细信息,才能将钱转移到他们的帐户中。
随后,Rotexy会检查用户输入的数据,以及根据C&C服务器命令中发送的数据来检查银行卡号的最后四位数字。具体可能会涉及以下这种情况:根据收到的短信处理规则,Rotexy会拦截来自银行的短信,该短信包含与用户电话号码绑定的银行卡的最后四位数字。Rotexy会将这些数字发送给C&C服务器,C&C服务器则会返回命令,以显示用来检查这四位数字的虚假输入窗口。如果用户提供的是另一张银行卡的信息,则会显示以下窗口:
图中显示的消息大致可翻译为“您输入的银行卡不正确,请输入尾号为1234的银行卡”
由于应用程序没有提供其他的选项,因此用户似乎只能输入正确的卡号。事实上,Rotexy的这一行为就是为了将用户输入的卡号与攻击者之前接收到的银行卡信息进行核对。
当所有银行卡信息被输入并通过检查之后,Rotexy会将它们全都上传到C&C服务器。
在这里,卡巴斯基实验室给我们带来了一个好消息——Rotexy并不具备一个设计精良的模块,用来处理包含在短信中命令。 这意味着在某些情况下,当手机被上述HTML页面锁定时,解除锁定状态是可能的。首先,我们需要发送短信“3458”到受感染设备,这将撤销Rotexy的设备管理员权限。然后,我们还需要通过短信将文本“stop_blocker”发送到相同的号码,这将禁止设备显示勒索HTML页面。不过,Rotexy可能会再次向用户反复不断地发出授予设备管理员权限的请求。在这种情况下,请以安全模式重启设备并删除恶意应用程序。
但是,如果攻击者能够对尝试删除Rotexy的行为做出快速响应,那么上述方法可能无法奏效。在这种情况下,你首先需要通过短信将文本“393838”发送到受感染设备,然后重复上述操作。这条短信会将C&C服务器地址更改为“://”,这样一来手机将不再接收来自实际C&C服务器的命令。
请注意,这些解锁指令只适用于当前版本的Rotexy,而在Rotexy的后续版本中,这些命令集可能会发生变化。
根据卡巴斯基实验室的数据,98%的Rotexy攻击针对的都是位于俄罗斯的用户。实际上,这个木马明确针对的就是以俄语为母语的用户。除此之外,位于乌克兰、德国、土耳其和其他几个国家的用户也受到了影响。
售前支持
400-161-0866