该恶意软件以前所未有的技术针对PostgreSQL数据库服务器。
已经发现了一种创新的基于Linux的加密货币挖掘僵尸网络,该僵尸网络利用一个有争议的PostgreSQL远程执行代码(RCE)漏洞来危害数据库服务器。 研究人员说,该恶意软件非常罕见,并且在许多方面都是全新的。
据Palo Alto Networks 42部门的研究人员称,该矿工(称为“ PGMiner”)利用PostgreSQL(也称为Postgres)中的CVE-2019-9193,这是一种流行的开源生产环境关系数据库管理系统。 他们说这可能是有史以来第一个针对该平台的加密货币矿工。
Unit 42研究人员在一篇文章中说:“正在利用的PostgreSQL中的功能是’程序复制’,该功能于2013年9月9日在9.3版中引入”。 周四发布。 “在2018年, CVE-2019-9193 被链接到此功能,将其命名为漏洞。 但是,PostgreSQL社区对此任务提出了质疑,CVE被标记为“有争议的”。”
他们补充说:“值得注意的是,恶意软件参与者不仅已开始对确认的CVE进行武器化,而且还对有争议的CVE进行了武器化。”
该功能允许本地或远程超级用户直接在服务器上运行Shell脚本,网络攻击者可以利用此脚本。 但是,只要未将超级用户特权授予远程或不受信任的用户,并且访问控制和身份验证系统已根据单元42进行了正确配置,RCE就不会有风险。另一方面,如果配置不正确,则PostgreSQL研究人员说:“如果攻击者通过暴力破解密码或SQL注入设法拥有超级用户特权,则可以在PostgreSQL以外的服务器操作系统上允许RCE。”
后者正是PGMiner完成的任务。
恶意软件深度分析
单元42分析的恶意软件样本静态链接到客户端库(“ libpq postgresql”),该客户端库用于扫描要强行使用的目标数据库服务器。
研究人员说:“攻击者扫描PostgreSQLql使用的端口5432(0x1538)。” “恶意软件会随机选择一个公共网络范围(例如190.0.0.0、66.0.0.0),以尝试在PostgreSQL服务器上执行RCE。 通过使用数据库的默认用户“ postgres”,攻击者可以对内置密码列表(例如112233和1q2w3e4r)进行内置的暴力攻击,以破解数据库身份验证。”
该报告称,在以超级用户身份入侵后,该恶意软件使用“从程序复制”功能CVE-2019-9193下载并启动硬币开采脚本。
研究人员说,该矿工采用无文件方法,在代码启动后立即删除了PostgreSQL表:PGMiner清除“ abroxu”表(如果存在),创建一个带有文本列的新“ abroxu”表,将恶意负载保存到其中,然后执行PostgreSQL服务器上的有效负载,然后清除创建的表。
安装后,该恶意软件使用curl来执行任务。 Curl是用于向服务器或从服务器传输数据的命令行工具。 如果受害者的机器上没有curl,研究人员发现恶意脚本会尝试多种方法来下载curl二进制文件并将其添加到执行路径,包括:从apt-get和yum等官方程序包管理实用程序中直接安装; 从GitHub下载静态curl二进制文件; 或者在前两种方法不起作用的情况下使用/ dev / tcp下载它。
Unit 42表示:“虽然前两种方法是众所周知的,但第三个方法却非常独特。更有趣的是目标IP地址:94[.]237[.]85[.]89.它连接到域newt[.]保持[.]com。 而其父域,保持[.]com,似乎是一个合法的商业网站,该特定子域将端口80重定向到443,该端口用于托管名为newt的沙发床。 尽管8080端口不向公众开放,但我们认为它已配置为允许跨域资源共享(CORS)。”
下一步是通过SOCKS5代理连接到命令和控制服务器(C2)。 然后,PGMiner收集系统信息并将其发送给C2以识别受害者,以确定应下载哪个版本的硬币开采有效载荷。
研究人员说:“在解析了SOCKS5代理服务器的IP地址之后,PGMiner循环浏览文件夹列表,以找到第一个允许创建新文件并更新其属性的权限。” “这确保了下载的恶意有效负载可以在受害者的计算机上成功执行。”
研究人员说,下一步是环境清理:它删除了诸如Aegis之类的云安全监视工具以及诸如Yunjing之类的Qcloud监视器实用程序。 检查虚拟机; 杀死所有其他CPU密集型进程,例如系统更新; 并杀死竞争对手的采矿过程。
当然,最后的任务是开始窃取CPU处理器的能量,以开采门罗币。
分析称:“在分析过程中,我们发现PGMiner通过递归下载某些模块不断地自我复制。” “[The] 此恶意软件家族的C2服务器正在不断更新。 不同的模块分布在不同的C2上。”
研究人员补充说,下载的恶意软件冒充了跟踪路径过程以隐藏其存在。
至于僵尸网络的成功或广泛程度,研究人员表示,他们观察到了该特定PGMiner样本试图连接到Monero的矿池,但它并未处于活动状态。 因此,有关恶意软件利润或足迹的信息是未知的。
为了保护其服务器,PostgreSQL用户可以从不受信任的用户中删除“ pg_execute_server_program”特权,这使得无法利用该漏洞,根据Unit 42的介绍。还可以搜索并杀死“ tracepath”进程,并杀死其进程ID(恶意软件已在“ /tmp/.X11-unix/”中跟踪了PID)。
研究人员指出:“ PGMiner正在利用有争议的漏洞这一事实,直到我们最近发现它之前,它一直未被注意到,”研究人员指出,并补充说,它具有大量新颖的行为。
该公司表示:“在分析过程中,我们观察到了新技术,例如在请求中嵌入受害者标识,模拟受信任的进程名称,通过多种方法下载curl二进制文件以及更多地并积极地杀死所有竞争对手程序。” “其他特征,例如恶意软件递归下载自身和频繁更改C2地址,也表明PGMiner仍在迅速发展。”
研究人员补充说,它也可以轻松地发展为针对Windows和macOS。
快速运行勒索软件:为“勒索软件的下一步”留个地方免费Threatpost网络研讨会美国东部时间12月16日下午2点。 了解勒索软件世界中正在发生的事情以及如何进行反击。
从Digital Shadows的网络威胁情报分析师John(Austin)Merritt获得最新信息; Limor Kessem,IBM安全执行安全顾问; Cybereason的CISO以色列·巴拉克(Israel Barak)就新型攻击提出了建议。 主题将包括最危险的勒索软件威胁参与者,其不断发展的TTP以及您的组织需要采取什么措施才能领先于下一次不可避免的勒索软件攻击。 在这里注册将于12月16日在星期三举行此LIVE网络研讨会。
阅读更多