一位研究人员发现了一个流行的开发者库中的两个相关漏洞,该库用于连接应用程序和MongoDB,漏洞可能会让黑客潜入你的数据库。
Mongoose是MongoDB的对象数据建模(ODM)库,它将MongoDB与Node.js运行环境连接起来,从而简化了应用程序与MongoDB数据库之间的交互。
这些漏洞是由OPSWAT研究员计划的成员Dat Phung发现的,他之所以选择研究Mongoose,是因为它在生产环境中被广泛应用。
OPSWAT在一篇博客中解释了这些漏洞的潜在严重性,并指出了使用Mongoose的MongoDB数据库的企业数量。“许多企业使用Mongoose和MongoDB来构建他们的应用程序。如果黑客闯入,可能会导致严重的功能问题,更糟糕的是,会使关键数据面临被盗、篡改或销毁的风险。”
在分析过程中,Phung发现了CVE-2024-53900漏洞,这是一个远程代码执行(RCE)漏洞,利用了Mongoose的$where运算符,该运算符可以在MongoDB服务器上直接执行JavaScript。
Phung警告说,攻击者可以利用这个漏洞查询数据库,在Node.js应用服务器上运行恶意命令,从而窃取数据,甚至控制应用程序本身的一部分。他于11月7日向Snyk提交了一份披露该漏洞的安全报告,Mongoose随后在该月发布了8.8.3版本的新版本以解决该问题。
但是,当Phung仔细查看补丁时,他发现了一个潜在的绕过方法,仍然可以在应用服务器上实现RCE。
利用新漏洞CVE-2025-23061,Phung证明了通过将where运算符嵌套在or子句中,他能够绕过Mongoose为缓解CVE-2024-53900而引入的新单层检查,从而实现RCE。Phung开发的概念验证漏洞利用程序显示,在MITRE框架下被评定为9.0严重等级的CVE-2025-23061漏洞,可以在Mongoose 8.9.5版本之前(晚于8.8.3版本)被触发,并通过Tidelift披露了这一新漏洞。
OPSWAT警告说,攻击者可能会利用这些漏洞在组织的MongoDB数据库中嵌入恶意代码,以及窃取或破坏存储在MongoDB中的数据。
它建议企业立即将其Mongoose实例更新到最新版本。