一、事件背景
3CX电话系统可以在Windows或Linux服务器上部署,并提供包括VoIP、PSTN和移动电话在内的多种通讯方式。此外,3CX还提供一系列的通讯软件,包括用于电脑、移动设备及浏览器的应用程序,可以让用户通过各种方式与他人通讯。据3CX称,其提供的软件服务了600,000多个客户,遍布全球190多个国家。
2023年3月29日,CrowdStrike发出告警,指出具备合法签名的二进制程序3CXDesktopApp存在恶意行为。
SentinelOne的告警信息显示软件存在shellcode或代码攻击能力。
CrowdStrike怀疑其攻击行为源于LABYRINTH CHOLLIMA,这是一个具有有朝鲜相关背景的专业APT组织。
- 受影响版本
👉Windows versions 18.12.407 and 18.12.416
👉Mac OS versions 18.11.1213, 18.12.402, 18.12.407, and 18.12.416.
部分文件及对应hash如下👇
- 攻击分析
安装程序具有合法签名,安装后的3CXDesktopApp启动时会主动加载安装目录下没有签名的ffmpeg.dll。
随后使用反射dll注入技术加载了放在shellcode中的dll文件,这里获取了一些dll函数用来后续修复导入表。
shellcode偏移0x65D处为dll文件开始处。
在本文章所写的2023年5月9日,由于其Github仓库已关闭,无法获取后续payload。但是通过静态分析可以得出,后续会使用AES-GCM算法进行解密从icon中获取的数据。解密结果为C2服务器域名,域名如下👇
2023年3月31日,ffmpeg声明,其只提供源代码,编译的”ffmpeg.dll“由供应商提供。
最初的攻击定位在2022年4月,一名员工在其个人计算机上安装了受感染的X_TRADER软件,该软件于2020年停用,但其软件签名有效期持续到了2022年10月。
随后攻击者通过该恶意软件获取了管理员级别的权限并且使用frp工具在3CX网络中横向移动,最终破坏了Windows和macOS的构建环境。
具体的破坏手法没有公布,据笔者猜测,可能是类似SolarWinds事件(被攻击者破坏了产品的构建系统),也可能是篡改了构建的基础源码。
两次攻击的过程极为类似,都是使用已签名的安装包安装了软件,安装过程释放了恶意文件,最后通过反射dll注入,外联C2服务器。3CX的攻击过程如下图👇