Se han revelado dos vulnerabilidades de seguridad en el código abierto Traccar Sistema de rastreo GPS que podría ser potencialmente explotado por atacantes no autenticados para lograr la ejecución remota de código bajo determinadas circunstancias.
Ambas vulnerabilidades son fallas de recorrido de ruta y podrían usarse como arma si se habilita el registro de invitados, que es la configuración predeterminada para Traccar 5, dijo el investigador de Horizon3.ai, Naveen Sunkavally.
Una breve descripción de las deficiencias es la siguiente:
- CVE-2024-24809 (Puntuación CVSS: 8,5) – Recorrido de ruta: ‘dir/../../filename’ y carga sin restricciones de archivos con tipo peligroso
- CVE-2024-31214 (Puntuación CVSS: 9,7) – Una vulnerabilidad de carga de archivos sin restricciones en la carga de imágenes del dispositivo podría provocar la ejecución remota de código
«El resultado neto de CVE-2024-31214 y CVE-2024-24809 es que un atacante puede colocar archivos con contenido arbitrario en cualquier parte del sistema de archivos», Sunkavally dicho«Sin embargo, un atacante sólo tiene control parcial sobre el nombre del archivo».
Los problemas tienen que ver con la forma en que el programa maneja las cargas de archivos de imágenes de dispositivos, lo que permite que un atacante sobrescriba ciertos archivos en el sistema de archivos y active la ejecución del código. Esto incluye archivos que coinciden con el siguiente formato de nombre:
- device.ext, donde el atacante puede controlar ext, pero DEBE haber una extensión
- blah», donde el atacante puede controlar blah pero el nombre del archivo debe terminar con comillas dobles
- blah1″;blah2=blah3, donde el atacante puede controlar blah1, blah2 y blah3, pero la secuencia de comillas dobles, punto y coma y el símbolo igual DEBEN estar presentes
En una prueba de concepto (PoC) hipotética ideada por Horizon3.ai, un adversario puede explotar el recorrido de ruta en el encabezado Content-Type para cargar un archivo crontab y obtener un shell inverso en el host del atacante.
Sin embargo, este método de ataque no funciona en sistemas Linux basados en Debian/Ubuntu debido a restricciones de nombres de archivos que impiden que los archivos crontab tengan puntos o comillas dobles.
![Ciberseguridad](https://teknomers.com/es/wp-content/uploads/2024/08/1723190360_817_El-Departamento-de-Justicia-acusa-a-un-hombre-de-Nashville.png)
Un mecanismo alternativo implica aprovechar la instalación de Traccar como usuario de nivel raíz para eliminar un módulo del kernel o configurar una regla udev para ejecutar un comando arbitrario cada vez que se genere un evento de hardware.
En instancias susceptibles de Windows, la ejecución remota de código también se puede lograr colocando un archivo de acceso directo (LNK) llamado «device.lnk» en la carpeta C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp, que se ejecuta posteriormente cuando cualquier usuario víctima inicia sesión en el host Traccar.
Las versiones 5.1 a 5.12 de Traccar son vulnerables a CVE-2024-31214 y CVE-2024-2809. Los problemas se solucionaron con el lanzamiento de Traccar 6 en abril de 2024, que desactiva el registro automático de forma predeterminada, lo que reduce la superficie de ataque.
«Si la configuración de registro es verdadera, readOnly es falsa y deviceReadonly es falsa, entonces un atacante no autenticado puede explotar estas vulnerabilidades», dijo Sunkavally. «Estas son las configuraciones predeterminadas para Traccar 5».