Riltok手机银行木马分析
导语:研究人员对Riltok手机银行木马进行了分析。
Riltok是一款使用标准功能和传播方法的手机银行木马。为了攻击欧洲用户,银行木马做了一些小的修改来适应欧洲市场(用户)。受害者中有90%位于俄罗斯,4%位于法国,还有意大利、乌克兰和英国等。
Riltok银行木马的全球分布
研究人员最早是在2018年3月检测到Riltok银行木马家族的。与其他银行木马类似,该银行木马伪装成俄罗斯的免费广告服务app。恶意软件是通过SMS在受感染的设备上传播的,传播的形式为“%USERNAME%, I’ll buy under a secure transaction. youlabuy[.]ru/7*****3”或“%USERNAME%, accept 25,000 on Youla youla-protect[.]ru/4*****7”,其中含有一个下载木马的链接。其他一些样本伪装成找票服务客户端或安卓的APP store。
2018年底,Riltok开始走向国际舞台。恶意软件背后的攻击者使用了相同的伪装方法和传播方法,使用模仿免费广告服务的名字和图标。
Riltok最常用的图标: Avito, Youla, Gumtree, Leboncoin, Subito
2018年11月,Riltok的一款面向英文市场的版本出现了——Gumtree.apk。SMS消息中含有一个到银行木马的链接:%USERNAME%, i send you prepayment gumtree[.]cc/3*****1。
意大利语版本 (Subito.apk)和法语版(Leboncoin.apk)也在2019年1月出现了市场上。使用的消息如下:
“%USERNAME%, ti ho inviato il soldi sul subito subito-a[.]pw/6*****5” (It.) “% USERNAME%, ti ho inviato il pagamento subitop[.]pw/4*****7” (It.) “%USERNAME%, je vous ai envoyé un prepaiement m-leboncoin[.]top/7*****3” (Fr.) “%USERNAME%, j’ai fait l’avance (suivi d’un lien): leboncoin-le[.]com/8*****9” (Fr.)
下面介绍下木马的工作流程。
感染
用户会接收到含有恶意链接的SMS,恶意链接指向的是模拟主流免费广告服务的伪造网站。用户会被提示下载一个新版本的手机app,其中就隐藏着木马。为了安装成功,需要受害者在设备设置中允许从未知来源安装APP。
在安装过程中,Riltok会展示一个伪造的警告来要求用户授予使用AccessibilityService中一些特殊特征的权限:
如果用户忽略或拒绝了该请求,该窗口就会一直打开。在获取了期望的权限后,木马就会将自己设置为默认的SMS app(通过AccessibilityService访问自己点击YES)。
启用AccessibilityService后,恶意软件将自己设置为默认的SMS app
在安装和从用户处获取必要的权限后,Riltok会与C2服务器进行联系。
在之后的版本中,恶意软件启动后,会在浏览器中打开一个模拟免费广告服务的钓鱼网站来诱使用户输入登陆凭证和银行卡信息。输入的数据会被转发给犯罪分子。
法语版本木马的钓鱼页面
与C2服务器通信
Riltok会主动与C2服务器进行通信。首先,通过发送GET请求到相关的地址 gate.php (之后版本中是gating.php)来在管理面板上注册受干扰的设备,发送的信息还包括ID和screen参数,其中ID是根据设备IMEI号用setPsuedoID函数生成的,screen参数是确定设备是否活动,可能的值有“on”, “off”, “none”。
然后使用到相关地址report.php的POST请求,发送关于设备的数据(IMEI、电话号码、国家、手机运营商、手机型号、root权限、操作系统版本)、通信录、安装的APP列表、SMS和其他信息。木马会从服务器接收名来修改配置。
木马
木马的名字Riltok是根据木马APK文件中包含的librealtalk-jni.so库命名的。该库的作用包含以下:
· 获取C2服务器地址;
· 通过C2获取web inject的配置文件,以及inject的默认列表
· 扫描app package名看是否有已知的银行、病毒和其他常用app列表中生成的AccessibilityEvent事件
· 将恶意软件设置为默认SMS app
· 在app运行时获取打开的钓鱼页面的地址。
getStartWebUrl 函数——获取钓鱼页面地址
配置文件中含有要注入的手机银行APP的列表,以及用户用来与手机银行app匹配的钓鱼页面。木马的西方国家版本中,默认配置文件中的package名被擦除了。
木马配置文件样本
通过AccessibilityService,恶意软件可以监控AccessibilityEvent事件。根据生成事件的app,Riltok可以:
· 打开一个伪造的Google play屏请求银行卡细节;
· 在浏览器中打开一个伪造的屏或页面来模拟相关银行木马app的屏幕,并请求用户或银行卡信息;
· 最小化app,比如将反病毒应用或设备安全设置最小化。
· 另外,木马还可以隐藏来自特定银行APP的通知。
木马打开伪造的Google play窗口的事件app package名列表
木马屏幕覆盖其他app示例
受害者在伪造的窗口输入银行卡信息后,Riltok会进行基本的有效性检查:比如卡的有效期、数字校验、CVC长度,以及卡号是否在木马代码中的黑名单中:
模仿手机银行的钓鱼页面示例
截至目前,大多数西方语言版本的Riltok的功能要比俄语版少。比如,默认配置文件中的injects暂时还不能功能,恶意软件不含有内置的请求银行卡信息的伪造的请求。
结论
研究人员建议用户不要点击SMS信息中的恶意链接,并且从可信源来安装app,在app安装时要检查授予的权限。从Riltok的例子中可以看出,犯罪分子可以使用多种不同的方法来感染不同国家的用户。
发表评论