门罗币挖矿僵尸网络PGMiner瞄准PostgreSQL
番茄系统家园 · 2022-03-16 06:58:00
Palo Alto Networks Unit 42 的安全研究员发现了一种基于 Linux 平台的加密货币挖掘僵尸网络,该僵尸网络利用PostgreSQL远程代码执行(RCE)漏洞来攻陷数据库。
据 Palo Alto Networks Unit 42 研究人员的描述,PGMiner 利用 PostgreSQL(也被称为Postgres)中的CVE-2019-9193 漏洞发起攻击。这可能是有史以来第一个针对 PostgreSQL 的加密货币挖掘僵尸网络。
利用漏洞
Unit 42 研究人员在文章中表示:“攻击者正在利用的 PostgreSQL 功能是'copy from program',该功能于 2013 年 9月9 日在 9.3 版中引入的”,“早在 2018 年,针对 CVE-2019-9193 漏洞PostgreSQL社区就存在极大的质疑,该漏洞也被标记为“有争议的”。
他们补充说道:“值得注意的是,恶意软件攻击者不仅已开始对确认的漏洞进行武器化,而且还开始对有争议的漏洞进行武器化”。
该功能允许从本地或远程在服务器上运行Shell脚本。但是,只要超级用户或不受信任的用户都不具有远程权限,并且访问控制和身份验证系统已进行了正确配置,就不会有风险。另一方面,如果配置不正确,PostgreSQL也会被通过暴力破解或SQL 注入等方式获取超级用户权限,这也可以在 PostgreSQL 以外的服务器上进行远程代码执行。
攻击细节
研究人员表示:“攻击者会扫描 PostgreSQL 使用的端口 5432(0x1538)”,“恶意软件会随机选择一个网络地址段(例如190.0.0.0、66.0.0.0)开始扫描,以尝试在 PostgreSQL服务器上执行远程代码。与此同时,会使用数据库的默认用户 postgres对内置密码列表(例如 112233 和1q2w3e4r)进行暴力破解,以攻破数据库身份验证”。
该报告称,在以超级用户身份入侵服务器后,该恶意软件会使用“copy from program”功能的CVE-2019-9193漏洞下载并启动挖矿。挖矿程序采用无文件方法,在启动后立即删除了 PostgreSQL 的 abroxu 表,重新创建 abroxu表将 Payload填充进去,执行后清除创建的表。
安装后,该恶意软件使用 curl 来执行任务。curl是用于向服务器或从服务器传输数据的命令行工具。如果受害者的机器上没有curl,恶意软件会尝试通过多种方法来下载 curl 二进制文件并将其添加到执行路径。
更有趣的是目标 C&C 地址:94.237.85.89。该地址绑定到域名 newt.keetup.com 上。虽然其上级域名keepup.com看起来像是一个合法的网站,但该特定子域名会将端口 80 重定向到 443,该端口用于承载名为 newt 的 couchdb。尽管8080端口不对外开放,但我们认为它已配置为允许跨域资源共享(CORS)”。
下一步是通过 SOCKS5 代理连接到命令和控制服务器(C&C)。然后,PGMiner 会收集系统信息,并将其发送给C&C服务器以识别受害者,以确定应下载哪个版本的挖矿程序。
解析了 SOCKS5 代理服务器的 IP 地址之后,PGMiner循环遍历文件夹列表,找到一个拥有创建新文件并更新其属性权限的位置”,“以确保下载的Payload 可以在失陷服务器上成功执行”。
最后会删除诸如 Aegis 之类的云安全监视工具以及诸如 Yunjing 之类的 Qcloud 监视器程序。检查虚拟机、终止所有其他CPU密集型进程与竞争对手的挖矿程序。
PGMiner 的 C&C 服务器正在不断更新。不同的模块分布在不同的 C&C 服务器上,这一切都表明 PGMiner仍然在快速迭代发展。目前攻击针对Linux 平台,但也可以轻松修改为针对 Windows 和 macOS 平台。
检查与清除
PostgreSQL 用户可以从不受信任的用户中删除 pg_execute_server_program权限,这就使攻击者无法利用该漏洞。此外,还可以终止tracepath 进程。
参考来源:
ThreatPost
Palo Alto Network
鸿蒙官方战略合作共建——HarmonyOS技术社区
免责声明: 凡标注转载/编译字样内容并非本站原创,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如果你觉得本文好,欢迎推荐给朋友阅读;本文链接: https://m.nndssk.com/dngz/332944ZXA1lB.html。
