事件概述
国外知名安全厂商ThreatFabric再Twitter上披露一款基于老牌银行木马家族LokiBot的新成员BlackRock。
BlackRock源自于LokiBot家族的第四代变种,其使用了Xerxes泄露的源代码。
威胁细节
活动态势
本分析报告编写过程中(2020/07/31)该家族依然活跃,C2地址依然保持存活状态,本人追踪该家族过程中发布推文披露最新出现的样本信息。
样本信息
样本分析
当用户首次点击APP图标时,首先从资源目录中解密并加载原始恶意的Dex文件来准备执行恶意行为。
样本首先开启服务来默默在后台执行恶意操作,然后会隐藏图标阻碍用户删除应用内来实现自我保护。
恶意样本每隔30秒就去检查无障碍服务AccesService是否已经开启。
如果设备还没有开启无障碍服务,恶意样本每隔30秒就会进入无障碍服务页面并且弹窗让用户去手动启动恶意服务,以便进行后面依赖无障碍服务的恶意行为。
手机设备信息收集起来,以下面这种json字符串的格式准备上传和C2服务器进行通信。
下面列举上传的字段以及其对应数据描述。
字段 |
描述 |
imei |
设备唯一ID |
whitelist |
判断样本是否处于电池优化百名单 |
model |
设备上已经安装了的APP,在恶意木马目标银行APP名单中的,将其包名以分号“;”分隔组成一个字符串。 |
Accessibility |
是否开启恶意无障碍服务 |
screen |
是否锁屏 |
将上面收集到的数据先经过AES加密,通过POST 请求” http://176.121.14[.]127:8080/gate.php”进行将数据传输到C2服务器。
传输过程中的数据使用AES加密,KEY是"26kozQaKwRuNJ24t",而IV向量是随机生成的,在传输过程中放在设备数据之前方便攻击者获取并解密数据。
下面列举出所有C2可以下发的指令以及其功能描述,后面再分析夫障碍服务会详细描述。
命令 |
描述 |
Send_SMS |
发送一条短信。 |
Flood_SMS |
每五秒发送一条短信。 |
Download_SMS |
短信窃取。 |
Spam_on_contacts |
向通信录中的每个人发送短信。 |
Change_SMS_Manager |
更改默认的SMS应用程序(每15秒就发送一次请求直到成功)。 |
Run_App |
运行指定APP。 |
StartKeyLogs |
开始键盘记录。 |
StopKeyLogs |
停止键盘记录。 |
StartPush |
上传推送通知。 |
StopPush |
停止上传推送通知。 |
Hide_Screen_Lock |
另类锁屏,无限HOME点击,让用户始终停留在主页面。 |
Unlock_Hide_Screen |
取消另类锁屏。 |
Admin |
申请设备管理员。 |
Profile |
申请成为配置文件所有者。 |
Start_clean_Push |
清空(隐藏)所有推送通知。 |
Stop_clean_Push |
停止清空(隐藏)推送通知。 |
如果已经开启无障碍服务并且有设备状态访问权限,会遍历已经安装的APP中是否包含目标银行APP,如果存在则根据目标银行APP包名构造资源地址” http://176.121.14[.]127:8080/inj/<pkgname>.zip”远程下载到本地并解压出银行APP钓鱼页面相关资源。
无障碍服务开启后,一旦用户装有BlackRock针对的目标银行APP并且正在和目标银行APP进行交互,这个时候样本就会启动上面下载好的钓鱼页面来窃取用户登陆凭证。
用户凭证信息上传到C2,通过注册的JS接口来调用以相同的加密方式以及KEY进行加密传输。
而对于和BlackRock针对的社交APP进行交互时,样本会启用APK资源文件asset/android/index.html对用户进行钓鱼,让用户以为时社交APP需要支付账户数据,从而放松警惕来达到窃取用户支付账户数据的恶意钓鱼行为。
通知栏推送消息上传功能,一旦C2下发StartPush指令,样本在本地创建/sdcard/ StartPush.txt文件,无障碍服务(所有恶意行为都默认服务开启)就会将通知栏里推送消息的应用包名以及消息内容进行Base64编码后进行加密上传。
一旦用户进入设置应用中界面出现Google Update的字段就会模拟点击HOME键返回主页,以此来进行自保防止用户手动卸载样本。
无障碍服务可以未经用户允许,通过模拟点击操作来允许样本申请的危险权限。
锁屏功能,如果C2服务器下发锁屏指令Hide_Screen_Lock,就会创建/sdcard/Screen_Lock.txt文件,从而实现无限HOME点击的操作达到另类锁屏的恶意行为,删除该文件或者关闭无障碍服务即可结束这种另类锁屏行为。
键盘记录功能,如果C2服务器下发键盘记录指令StartKeyLogs,就会创建/sdcard/StartKeyLogs.txt文件,无障碍服务就会记录不同应用包名以及其操作内容经过Base64编码进行上传,键盘记录功能只针对样本针对的那些银行APP。
键盘记录窃取银行APP的登陆凭证以及相关组件操作、展示数据。
自保措施,针对与众多知名反病毒APP的任何交互行为以其通知事件都会引起样本模拟点击HOME键来防止用户删除样本来实现自我保护的行为。
下面将自保措施针对的反病毒APP、文件管理APP相关信息简单列举到表格中:
包名 |
APP名称 |
eu.thedarken.sdm |
SD女佣 - 系统清理工具 |
com.avast.android.mobilesecurity |
Avast 手机安全软件 2020 |
com.antivirus |
免费防病毒软件 - AVG AntiVirus Free |
com.bitdefender.security |
Bitdefender Mobile Security & Antivirus |
com.eset.ems2.gp |
ESET Mobile Security & Antivirus |
com.symantec.mobilesecurity |
Norton Mobile Security 與防毒 |
com.trendmicro.tmmspersonal |
行動安全防護與防毒 |
com.kms.free |
Kaspersky Mobile Antivirus: AppLock & Web Security |
com.wsandroid.suite |
Mobile Security:VPN 代理和防盗安全 WiFi |
com.avira.android |
Avira Antivirus 2020 - Virus Cleaner & VPN(抢先体验) |
com.hermes.superb.booster |
Superb Cleaner |
com.ghisler.android.TotalCommander |
Total Commander - file manager |
清空所有推送的通知,如果C2服务器下发清空推送通知指令Start_clean_Push,就会创建/sdcard/StartCleanPush.txt文件,一旦有推送显示无障碍服务就会立刻模拟点击CLEAR ALL按钮,实现清空所有推送的恶意行为。
影响分析
BlackRock家族最早大概于2020年四月初就在野被捕获到了,其伪装成Google Update更新APP诱骗用户放松警惕。
根据APKLAB平台捕捉的样本主要是下面这几种图标的APP,总计294个左右。其中基本全都是Google Update应用,第四个图片APP占8个,5G图标APP占5个,第三个APP只占1个。
目前所有捕捉到的样本都是在野外被获取到的,大型应用商店上并未出现。
安全建议
- 下载APP认准应用宝、360手机助手、各大厂商应用商店、Google Play这样有保证的大平台。
- 不要使用小众APP。
- 关注安全厂商安全新闻,一旦发现被披露的木马APP出现在自己手机上,及时联系专业安全人员进行处理。
IOCs
C2指标 |
值 |
IP |
176.121.14[.]127 |
IP |
217.8.117[.]7 |
Sha256 |
5c971759a1e21ab3a2fc927143d6cce074fe4a935a65d3ce8995b9f9b09aac4f |
Sha256 |
a0e51519b28fac68e90ee12b1fd24de75de04a40b6961db7ab08895797606358 |
Sha256 |
5e2a45439db789784771dad513d0b943a3d5bf819d3e560794ba0181553a3eda |
Sha256 |
6fa4baef8a811f429cee4b383d7a4776b7b363b62551c8d8e0f93bad33adefbd |
Sha256 |
38071933466b76225f0ec756426aede76e0593c48ffbbb00df198a96ba47c72b |
Sha256 |
fbaf785edfafa583ea61884d88f507a27154892a394e27d81102f79fe7eb5b8f |
附录
150个银行APP,111个社交APP
具体数据参考[4]
参考
[1]https://www.threatfabric.com/blogs/blackrock_the_trojan_that_wanted_to_get_them_all.html
[3]https://twitter.com/yongyecc/status/1288871144624332806
[4] https://pastebin.com/EPjxcCBt