Vulnerabilidad de inyección SQL detectada en ERPNext de Frappe
INCIBE informó el 29 de julio de 2026 sobre una vulnerabilidad de inyección SQL ERPNext en ERPNext de Frappe, un sistema de planificación de recursos empresariales. El hallazgo fue realizado por Alejandro Ramos y coordinado para su divulgación por INCIBE.
Identificación y características técnicas de la vulnerabilidad CVE-2026-12895
La vulnerabilidad afecta a versiones anteriores a la 15.111.0 de ERPNext y a la 16.22.0 de Frappe, incluyendo específicamente ERPNext 15.107.0 y Frappe 15.107.2. Se le asignó el identificador CVE-2026-12895 y una puntuación base CVSS v4.0 de 7.1, catalogada como de severidad alta.
El fallo reside en la construcción de consultas SQL mediante interpolación directa de cadenas usando str.format(), sin el uso de consultas parametrizadas. Esto permite que el nombre (docname) de un registro Supplier que contenga metacaracteres SQL sea interpretado como parte de la consulta.
Impacto potencial de la inyección SQL ERPNext
La explotación de esta vulnerabilidad podría permitir a un usuario autenticado con privilegios bajos ejecutar consultas SQL arbitrarias. Esto incluye la posibilidad de evadir las restricciones de acceso del sistema Frappe (DocPerm) y extraer datos confidenciales de la base de datos.
Los datos que podrían verse afectados incluyen fragmentos del hash de la contraseña del administrador, así como credenciales, tokens de integración e información financiera.
Corrección y versiones actualizadas
El equipo de Frappe solucionó la vulnerabilidad en las versiones 15.111.0 de ERPNext y 16.22.0 de Frappe. Estas versiones corrigen el problema detectado en la construcción de consultas SQL.
Seguimiento y detalles adicionales
INCIBE mantiene el seguimiento de esta vulnerabilidad y ha publicado un aviso con los detalles técnicos y versiones afectadas. Está catalogada bajo el código CWE-89, correspondiente a inyección SQL.
El vector CVSS indica que la explotación no requiere interacción del usuario, pero sí privilegios limitados en el sistema para llevarla a cabo.
La información oficial se encuentra disponible en el portal de INCIBE-CERT, centro nacional de respuesta a incidentes de seguridad informática.
Detalles técnicos sobre la construcción de consultas en ERPNext
La vulnerabilidad de inyección SQL en ERPNext de Frappe se debe a la forma en que la aplicación construye las consultas SQL. En concreto, utiliza la función str.format() para interpolar directamente cadenas, sin emplear consultas parametrizadas. Esta técnica permite que el valor del campo docname de un registro Supplier, si contiene metacaracteres SQL, sea interpretado como parte del código SQL ejecutado.
La explotación de esta vulnerabilidad podría permitir a un usuario autenticado con bajos privilegios ejecutar consultas SQL arbitrarias, eludir las restricciones de acceso de Frappe (DocPerm) y extraer información confidencial de la base de datos, incluyendo fragmentos del hash de la contraseña del administrador, así como acceder a otros datos sensibles, como credenciales, tokens de integración o información financiera.
Más información en la fuente original.
Contenido verificado con criterios de experiencia, autoridad y fiabilidad (E-E-A-T).
Este artículo puede haber usado herramientas de inteligencia artificial como apoyo para estructura, edición, traducción o revisión. La responsabilidad editorial y la revisión final son de Toni Berraquero. Ver politica de IA
Puedes apoyar el proyecto o compartir este artículo con un clic. Aquí al menos hay una salida útil de verdad.