
Aviso técnico y análisis de CVE-2025-14598, una inyección SQL crítica no autenticada en BET e-Portal que permite la manipulación de bases de datos y una posible ejecución remota de código, con pautas de mitigación.
Se identificó una vulnerabilidad de Inyección SQL en la funcionalidad de inicio de sesión de BET e-Portal, una solución de software ampliamente implementada en instituciones educativas para la gestión de información de estudiantes y resultados de exámenes. La vulnerabilidad permitía a atacantes no autenticados interferir con las consultas SQL del backend, pudiendo escalar el problema a ejecución remota de código en ciertas configuraciones. El problema fue reportado y coordinado a través de CERT/CC, resultando en la asignación de CVE-2025-14598.
Este informe proporciona una visión técnica de la vulnerabilidad, su impacto, cómo se manifestó en distintas implementaciones y orientación general sobre remediación.
Producto: BET e-Portal
Vendedor: BeeS Software Solutions Pvt Ltd
Contexto de Implementación:
BET e-Portal es comúnmente utilizado por colegios y universidades para gestionar el inicio de sesión de estudiantes, resultados de exámenes, calificaciones internas y flujos de trabajo académicos relacionados. Se implementa de forma independiente en más de 100 instituciones, cada una manteniendo su propia instancia.
La vulnerabilidad se clasifica como Inyección SQL en la funcionalidad de inicio de sesión. Debido a una validación de entrada insuficiente, los datos proporcionados por el usuario en el inicio de sesión se incorporaban en consultas SQL sin la debida sanitización. Esto permitía a un atacante no autenticado manipular las consultas de la base de datos y, dependiendo de la configuración del servidor, lograr potencialmente una ejecución remota de código.
La gravedad varía según la implementación, pero en algunos casos reales el impacto alcanzó un compromiso total del sistema.
La vulnerabilidad se origina en el formulario de inicio de sesión de la aplicación. Los campos de nombre de usuario y contraseña se pasaban al backend de la base de datos en sentencias SQL construidas dinámicamente.
Si la entrada del usuario no se valida estrictamente ni se parametriza, los atacantes pueden crear una entrada que altere la lógica SQL prevista.
El backend parece procesar los intentos de inicio de sesión utilizando consultas SQL similares en estructura a:
SELECT * FROM users WHERE username = '<input>' AND password = '<input>';
Este patrón es vulnerable si <input> no se escapa o parametriza adecuadamente.
Los atacantes pueden inyectar fragmentos SQL para modificar el comportamiento de la consulta.
El flujo general de explotación:
No se requieren privilegios especiales. El ataque es completamente remoto y no autenticado.
Algunas implementaciones afectadas tenían habilitadas ciertas características de SQL Server, como:
xp_cmdshellEstas características amplifican significativamente el impacto de la Inyección SQL:
Aunque la configuración varía según la institución, tales configuraciones incorrectas pueden convertir una inyección SQL en un escenario de ejecución remota de código.
Durante la divulgación coordinada, se implementó una actualización inicial que abordaba ciertas rutas de entrada pero no resolvía completamente la vulnerabilidad. Tras volver a realizar pruebas, la inyección SQL seguía siendo posible a través de rutas de código alternativas.
Tras una mayor coordinación a través de CERT/CC, se implementaron y verificaron pasos correctivos adicionales. El parche final solucionó exitosamente el problema en las implementaciones revisadas.
Tipo de Vulnerabilidad: Inyección SQL
Puntuación CVSS: 9.8 (Crítica)
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Impacto Potencial:
La vulnerabilidad se considera crítica en implementaciones donde la configuración de la base de datos permite interacciones a nivel del sistema.
Evite la concatenación dinámica de cadenas SQL con datos del usuario. En su lugar, utilice mecanismos de enlace de parámetros proporcionados por los frameworks o las bibliotecas de bases de datos.
Sanitice o liste las entradas permitidas, especialmente aquellas utilizadas en flujos de autenticación.
Asegúrese de que las cuentas de base de datos utilizadas por las aplicaciones web tengan permisos mínimos.
Características como xp_cmdshell deben estar deshabilitadas a menos que sean absolutamente necesarias.
Monitoree los flujos de autenticación y los registros de errores SQL en busca de comportamientos inusuales.
Las pruebas de penetración y las revisiones de código periódicas pueden identificar estos problemas en las primeras etapas del ciclo de desarrollo.
Descubierto por: Mohammed Afnaan Ahmed https://www.afnaan.me
ID CVE: CVE-2025-14598
Divulgación Coordinada: Centro de Coordinación CERT (CERT/CC)