Los atacantes pueden explotar la vulnerabilidad para lograr control remoto completo una vez que se hayan introducido en el sistema. Dan Rosenberg, que descubrió la vulnerabilidad, ha publicado un exploit -un pequeño código en C- con el propósito de demostrar cómo funciona dicha vulnerabilidad.

La vulnerabilidad afecta a varias versiones del kernel Linux, y se sabe que al menos desde el kernel 2.6.30 al 2.6.36-rc8 existe dicho problema.

Los desarrolladores de este componente han publicado ya un parche en el repositorio Git del núcleo que permite solucionar el problema, y es muy probable que los desarrolladores de distribuciones apliquen el parche de forma inmediata para ofrecer esa actualización de seguridad cuanto antes.

Si no es el caso, Rosenberg ha propuesto una forma alternativa de solucionarlo al menos provisionalmente. Para ello hay que ejecutar el comando (como root):

echo "alias net-pf-21 off" > /etc/modprobe.d/disable-rds

Aunque tal y como indican en H-Online, la mayoría de los sistemas no se verán afectados por el problema ya que no utilizan este protocolo.

Rosenberg explicó además que el problema proviene de que las funciones en el protocolo RDS no comprueban correctamente las direcciones que se dan cuando los datos se copian desde la memoria del núcleo a la memoria del usuario. Como resultado, un usuario local puede indicar una dirección básica del núcleo para una estructura socket, lo que permite que se pueda escribir código en la memoria del núcleo… y luego ejecutar ese código con privilegios de ese núcleo cuando se hacen llamadas a ciertos sockets.

 

Fuente: muyseguridad