Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en openSUSE (CVE-2022-46163)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-89 Neutralización incorrecta de elementos especiales usados en un comando SQL (Inyección SQL)
Fecha de publicación:
10/01/2023
Última modificación:
07/07/2023

Descripción

El programa de soporte para viajes es una aplicación de rails para respaldar el programa de soporte para viajes de openSUSE (TSP). Los datos confidenciales del usuario (detalles de la cuenta bancaria, hash de contraseña) se pueden extraer mediante la inyección de consultas Ransack. Todas las implementaciones del programa de soporte para viajes inferiores a la versión parcheada se ven afectadas. El programa de soporte para viajes utiliza la librería Ransack para implementar la función de búsqueda. En su configuración predeterminada, Ransack permitirá condiciones de consulta basadas en propiedades de los objetos de la base de datos asociados [1]. Luego se puede abusar de los comparadores de búsqueda `*_start`, `*_end` o `*_cont` [2] para filtrar valores de cadenas confidenciales de objetos de bases de datos asociados mediante fuerza bruta carácter por carácter (Una coincidencia se indica porque el JSON devuelto no está vacío). Se puede extraer un único número de cuenta bancaria con <200 solicitudes, y un hash de contraseña con ~1200 solicitudes, todo en unos pocos minutos. El problema se solucionó en el commit d22916275c51500b4004933ff1b0a69bc807b2b7. Para solucionar este problema, también puede elegir ese parche; sin embargo, no funcionará sin la migración de Rails 5.0 que se realizó en el n.° 150, que a su vez tenía bastantes solicitudes de extracción de las que dependía.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:opensuse:travel_support_program:*:*:*:*:*:*:*:* 2022-11-29 (excluyendo)