
攻击概况
新型恶意软件PCPcat通过针对性利用Next.js和React框架中的关键漏洞,在48小时内成功入侵了超过5.9万台服务器。该恶意软件利用两个关键漏洞(CVE-2025-29927和CVE-2025-66478)攻击Next.js部署环境,这些漏洞允许未经身份验证的远程代码执行。
攻击技术分析
攻击采用原型污染和命令注入技术,在易受攻击的服务器上执行恶意命令。该活动显示出64.6%的成功率,对于此类操作而言异常之高。PCPcat大规模扫描面向公众的Next.js应用,每批测试2000个目标,每30至60分钟运行一次扫描。
恶意软件通过位于新加坡的命令与控制服务器运作,主要使用三个端口:
- 端口666:作为恶意负载分发中心
- 端口888:处理反向隧道连接
- 端口5656:运行主控服务器,负责分配目标并收集窃取的数据
攻击流程
安全分析师通过Docker蜜罐监控发现,恶意软件首先使用简单命令测试目标是否易受攻击,确认后才会发起完整攻击链。一旦发现易受攻击的服务器,就会提取环境文件、云凭证、SSH密钥和命令历史文件。窃取的信息通过无需身份验证的简单HTTP请求发送回控制服务器。
获取凭证后,恶意软件会尝试安装额外工具以维持长期访问权限,包括下载脚本在受感染服务器上设置GOST代理软件和FRP反向隧道工具,这些工具创建隐藏通道,使攻击者即使在初始漏洞修复后仍能保持访问。
漏洞利用机制
攻击通过向易受攻击的Next.js服务器发送特制JSON负载实现,该负载操纵JavaScript原型链并将命令注入子进程执行函数。恶意负载结构如下:
payload = {
"then": "q:__proto__:then",
"status": "resolved_model",
"_response": {
"_prefix": "var res=process.mainModule.require('child_process')
.execSync('COMMAND_HERE').toString();"
}
}
该负载强制服务器运行攻击者指定的任何命令,结果通过特殊格式的重定向头返回,使恶意软件能够在不立即引起怀疑的情况下提取数据。
持久化与检测
为保持持久性,恶意软件创建多个系统服务,这些服务在停止或服务器重启时会自动重启,持续运行代理和扫描工具,确保受感染服务器保持在僵尸网络中。安装过程发生在多个位置,以确保至少一个副本能在安全清理工作中存活。
网络管理员可通过以下方式检测此活动:
- 监控与命令服务器IP地址67.217.57.240在端口666、888和5656上的连接
- 查找名称包含pcpcat的systemd服务
- 检查携带包含环境变量或凭证的JSON数据的异常出站连接
参考来源:
New PCPcat Exploiting React2Shell Vulnerability to compromise 59,000+ Servers
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf
客服小蜜蜂(微信:freebee1024)



