加密货币新威胁——KryptoCibule
2020-09-07 11:50:00 Author: www.4hou.com(查看原文) 阅读量:395 收藏

ESET研究人员近日发现了一款新的加密货币窃取恶意软件——KryptoCibule,是加密货币的新威胁。该恶意软件使用受害者的资源来进行加密货币挖矿,通过替换剪贴板的钱包地址来劫持交易,窃取于加密货币相关的文件,并部署了多种绕过检测的技术。在通信基础设施方面,KryptoCibule广泛使用了Tor网络和BitTorrent协议。

KryptoCibule恶意软件是用C# 语言编写的,同时还部署了一些合法的软件,比如安装包中含有Tor和Transmissiontorrents客户端,其他的软件是在运行时下载的,包括Apache httpd和Buru SFTP 服务器。KryptoCibule 不同组件和之间的关系如图1所示:

图 1. KryptoCibule组件和工具

恶意软件首次执行时,主机会分配一个唯一的id,格式为{adjective}-{noun},其中{adjective}和{noun} 是从硬编码的列表中随机选取的词,列表中包含有超过1000万个组合。然后,该id可以用来识别与C2 服务器通信的主机。

时间轴

研究人员分析发现了该恶意软件的多个版本,最早可以追溯到2018年12月。图2 是KryptoCibule 随时间的变化情况。

图 2. KryptoCibule更新和功能变化时间轴

受害者分布

恶意软件主要攻击捷克和斯洛伐克。统计数据显示,有超过85%的受害者位于捷克和斯洛伐克。

图 3. 受害者分布

几乎所有的恶意torrents都指向uloz.to,捷克和斯洛伐克比较流行的文件共享网站。

图 4. uloz.to上的恶意torrents

Torrents

KryptoCibule使用BitTorrent协议来向新的受害者进行传播,同时下载其他的工具和更新。

初始化

KryptoCibule是通过含有恶意torrent的zip文件进行传播的,其中内容伪装为破解后的软件安装包,如游戏。KryptoCibule 安装器中有最常见的5个安装包,如图5所示。packed.001是恶意软件,packed.002是想要下载的软件的安装包。两者都用Setup.exe中包含的密钥进行XOR 加密了。

Setup.exe 执行后,会解码恶意软件和安装包软件。然后在后台启动恶意软件,在前台显示合法软件的安装。

图 5. Dead.Cells.Incl.All.DLC中的内容

其他软件和更新

恶意软件使用BitTorrent协议来下载恶意软件的更新和其他软件。

KryptoCibule会安装一个transmission-daemon torrent客户端,并通过在9091端口的 RPC接口来发布命令对其进行管理。RPC接口使用硬编码的凭证superman:krypton。

为安装恶意软件要使用的其他软件,比如SFTP服务器,启动器组件会向%C&C%/softwareinfo?title=< software name > 发送一个HTTP GET请求,并接收到一个含有要下载的torrent的磁力URI和其他关于程序安装和执行信息的JSON 响应。响应示例如图 6 所示。

{"Magnet": "magnet:?xt=urn[:]btih:67yd647nivxhumoedvwnwnzve55b3bxj&dn=free-BuruServer-x64-v1.7.3.zip", "Version": 1,"ExecutableRelativePath": "", "ExecutableFileName": "buru.exe","ExecutableArgs": "run", "InstallFile": "", "HasCustomConfig": true}

图 6. GET /softwareinfo?title=ssh_server 请求的响应示例

反检测和反分析技术

恶意软件使用不同的技术来避免被检测到,同时使用了一些基本的反分析保护。

可执行文件包含在一个伪装成合法InstallShield程序的zip文件中。恶意代码位于一个XOR加密的文件中,密钥硬编码在Setup.exe文件中。

然后恶意软件会安装到硬编码的路径%ProgramFiles(x86)%\Adobe\Acrobat Reader DC\Reader\update 中,然后使用合法的Adobe Acrobat Reader 可执行文件对Tor和自己命名。安装文件夹中包含的文件如图7所示:

图 7. 安装文件夹中的部分文件

Armsvc.exe就是恶意软件,ADelRCP.exe是Tor可执行文件。文件名都是使用的真实的Adobe Reader安装文件的名字。

为实现驻留,KryptoCibule创建了一个定时任务使用下面的命令每5分钟运行一次:

schtasks.exe /CREATE /SC MINUTE /MO 5 /TN “Adobe Update Task” /TR \””%ProgramFiles(x86)%\Adobe\Acrobat Reader DC\Reader\Update\armsvc.exe\”” [/RL HIGHEST] /F [/RU SYSTEM]

在首次执行payload和进去主循环之前,恶意软件还会检查机器上是否安装了以下软件。如果找到了任意一个匹配的名字,就停止运行所有的组件并退出:

· cain

· filemon

· netmon

· netstat

· nmwifi

· perfmon

· processhacker

· procexp

· procexp64

· procmon

· regmon

· tasklist

· taskmgr

· tcpvcon

· tcpview

· wireshark

杀毒软件绕过

在初始化加密货币挖矿机之前,恶意软件会对字符串avast、avg、eset的rootSecurityCenter2\AntiVirusProduct WMI的对象进行检查,如图8所示。如果检测到任意的字符串,就不会安装加密货币挖矿机组件。

图 8. 用于检查特定安全产品的函数

此外,恶意软件还会创建防火墙规则来允许其组件通信的流量。还会创建拦截ESET Kernel 服务(ekrn.exe)的流量,如图9所示:

图 9. 拦截ESET Kernel 服务(ekrn.exe)流量的防火墙规则

Tor网络

KryptoCibule还自带了伪装成为ADelRCP.exe tor.exe命令行工具和配置文件——libstringutils.dll,如图10所示:

图 10. 恶意软件使用的Tor配置文件

恶意软件在端口9050上设置了SOCKS代理,用于通过Tor网络中继与C2服务器的通信。这不仅可以对通信进行加密还可以使得无法追踪URI背后的服务器以及真实服务器。

配置文件的第二部分会在受害者主机上搭建洋葱匿名服务,只有通过Tor网络才可以访问。首次启动这些服务时,Tor会为主机自动生成一个.onion URI。然后这个唯一的主机名会被发送到 %C&C%/transferhost/< unique name > 。

窃取加密货币

KryptoCibule有3个组件可以利用受感染的主机来获取加密货币。

加密货币挖矿

最新的KryptoCibule版本使用XMRig 来利用受害者主机的CPU进行门罗币挖矿,使用kawpowminer 来进行以太币挖矿。以太币挖矿只针对于特定的CPU。这两个程序都会通过Tor 代理连接到运营者控制的挖矿服务器。

剪贴板劫持

第二个组件会伪装成SystemArchitectureTranslation.exe,使用AddClipboardFormatListener 函数来监控剪贴板的变化,并应用替换规则来把特定地址替换为自己的地址。监听代码如图11所示。0x31D对应WM_CLIPBOARDUPDATE常数。

图 11. 监听剪贴板hook的监听器函数代码

剪贴板的规则格式为:

image.png

会匹配加密货币钱包地址,并替换为攻击者控制的钱包地址。当settings.cfg文件变化后,该组件使用FileSystemWatcher 来重新加载替换规则。

文件窃取

第三个组件会寻找含有特定项的文件名。这些项主要有加密货币、钱包和挖矿机相关,也有一些seed、密码等。研究人员分析过程中发现的特定项如图13所示:

["wallet.dat", "utc--2014", "utc--2015", "utc--2016", "utc--2017", "utc--2018", "utc--2019", "utc--2020", ".address.txt", "electrum", "bitcoin", "litecoin", "ethereum", "cardano", "zcash", "monero", "cripto", "krypto", "binance", "tradeogre", "coinbase", "tether", "daedalus", "stellar", "tezos", "chainlink", "blockchain", "verge", "bittrex", "ontology", "vechain", "doge", "qtum", "augur", "omisego", "digibyte", "seele", "enjin", "steem", "bytecoin", "zilliqa", "zcoin", "miner", "xmrig", "xmr-stak","electroneum", "heslo", "waves", "banka", "crypto", "hesla", "seed", "metamask", "antminer", "trezor", "ledger", "private", "trx", "exodus", "password", "jaxx", "guarda", "atomic.exe", "copay.exe", "Green Address Wallet.exe", "msigna.exe", "ArmoryQT.exe", ".ssh", ".aws", "Desktop"]

图 13. 寻找的特定项列表

此外,KryptoCibule还会安装一个合法的Apache httpd服务器作为没有任何限制的前向转发的代理,该服务器在洋葱服务的9999端口上是可达的。

本文翻译自:https://www.welivesecurity.com/2020/09/02/kryptocibule-multitasking-multicurrency-cryptostealer/如若转载,请注明原文地址


文章来源: https://www.4hou.com/posts/7OxA
如有侵权请联系:admin#unsafe.sh