
CVE-2025-23061 - Inyección de comandos en Mongoose
Una prueba de concepto para la vulnerabilidad de inyección de comandos en Mongoose < 8.9.5 que afecta a la opción match de la función populate().
ID de CVE: CVE-2025-23061
Gravedad: CRÍTICA (CVSS 9.0)
Paquete afectado: mongoose
Versiones vulnerables:
= 7.0.0 < 7.8.4
= 8.0.0 < 8.9.5
Esta vulnerabilidad existe debido a una corrección incompleta del CVE-2024-53900. Aunque la inyección directa con $where está bloqueada, los atacantes pueden evadir esta protección anidando operadores $where dentro de operadores lógicos como $and, $or, etc.
La ruta de código vulnerable:
populate()$where cuando está anidado dentro de operadores lógicos# Instalar dependencias
npm install
# Opcional: Usar una URI específica de MongoDB
export MONGODB_URI="mongodb://localhost:27017/mongoose_cve_poc"
npm start
El servidor se iniciará en http://localhost:3000
En otra terminal:
node exploit.js
Este PoC se proporciona únicamente con fines educativos. El acceso no autorizado a sistemas informáticos es ilegal. Úselo solo en sistemas que le pertenezcan o para los que tenga permiso explícito de prueba.