Se ha descubierto una vulnerabilidad en la biblioteca estándar de C Glibc (CVE-2025-4802) que permite la ejecución de código con privilegios de otro usuario, los cuales se establecen al iniciar aplicaciones con la bandera suid. La gravedad del problema se ve mitigada por las condiciones en las que se manifiesta; los desarrolladores de Glibc no pudieron encontrar un solo programa suid al que se pudiera aplicar la vulnerabilidad detectada. Sin embargo, no se descarta que puedan estar en uso programas suid propios que cumplen con las condiciones para llevar a cabo el ataque.
La explotación de la vulnerabilidad solo es posible para programas suid compilados estáticamente que llaman a la función dlopen. Además de los programas que llaman directamente a dlopen, la vulnerabilidad también afecta a programas en los que la función dlopen se ejecuta indirectamente, como resultado de la llamada a setlocale o funciones NSS, como getaddrinfo.
El problema es causado por el manejo de la variable de entorno LD_LIBRARY_PATH en el contexto de aplicaciones suid cuando se llama a dlopen desde programas compilados estáticamente (el ignore de LD_LIBRARY_PATH solo se aplicaba a la vinculación dinámica). A través de la configuración de la ruta en LD_LIBRARY_PATH, un atacante puede organizar la carga de una biblioteca fraudulentas desde su propio directorio. La vulnerabilidad se manifiesta a partir de la versión Glibc 2.27 (febrero de 2018) y se corrigió en la versión Glibc 2.39 (febrero de 2024).
Fuente: opennet.ru
