Intento de instalar una puerta trasera en el kernel Linux
Un análisis rutinario automático del código fuente de la última versión
del kernel Linux (2.6-test) descubre el intento de implantar una puerta
trasera en dicho sistema operativo.
Linux es un sistema operativo Open Source en boga, cuya popularidad
crece día a día.
La última versión del kernel Linux
(2.6 test), aún en desarrollo, experimentó un intento de implantarle una
puerta trasera, que permitiría a un atacante local obtener privilegios
de administrador o root con la ejecución de una función aparentemente
inocua y de uso normal.
El fichero alterado fue kernel/exit.c,
y constaba de apenas dos líneas de código fuente. La puerta trasera, muy
inteligente, explota el hecho de que el lenguaje de programación C
permite asignaciones en lugares insospechados, como dentro de una
sentencia if. El efecto neto de este cambio sería obtener privilegios
de administrador o root si se invoca la función sys_wait4() con los
parámetros apropiados (__WCLONE y __WALL). A la vista del cambio, el
atacante ha mostrado cierta destreza para lograr que el código no sea
patentemente malicioso.
El cambio se realizó en la réplica CVS
que reside en el servidor kernel.bkbits.net. Dicha réplica se obtiene
automáticamente a través de los fuentes oficiales de Linux, gestionados
mediante la herramienta BitKeeper. La alteración afectó a la réplica,
no a los fuentes originales.
Aunque el cambio fue detectado de
forma automática por la herramientas de exportación BitKeeper-CVS, el
incidente servirá como llamada de atención y para desplegar nuevas
tecnologías, como el requerir una firma digital autorizada para poder
realizar cambios en el kernel. Dado que la exportación BitKeeper-CVS se
realiza de forma diaria, el fichero alterado se detectó y eliminó en
menos de 24 horas.
Para los usuarios de entornos Linux, el mejor
consejo que se puede dar es descargar las actualizaciones desde fuentes
de confianza y verificar, si existen, sus firmas digitales.