CSIRTCV

Está usted visitando una publicación en la hemeroteca de CSIRT-CV.
Para acceder al portal y contenido actual, visite https://www.csirtcv.gva.es

06/06/2013

Injecció remota de codi en routers WiFi Linksys

L’investigador Jason Leyrer, de Trustwave ha publicat un article on analitza dos errors de seguretat en encaminadors WiFi de la marca Linksys de Cisco.

Risc: Alt

Estes vulnerabilitats permeten l’execució de codi remot a través de la injecció de comandaments en el sistema operatiu subjacent, sense necessitat d’autenticació en alguns casos. Estan presents en models el suport dels quals ja ha acabat.

Leyrer descriu una vulnerabilitat descoberta per ell i una altra trobada en altres models del fabricant per Michael Messner. Es tracta de sengles injeccions de comandaments al sistema operatiu subjacent de l'encaminador a través de la interfície de gestió, més concretament en la pàgina de diagnòstic.

Les vulnerabilitats aprofiten una manca de validació en el contingut subministrat per l’usuari en els camps ping_ip i ping_size. En el primer cas, en agregar dos caràcters "&" (ampersand) després d’una IP vàlida en codificació URL i seguits del comandament a executar, s’aconseguix la injecció de comandaments. Açò es traduïx en una petició POST  amb paràmetres. Per exemple:

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

És interpretada pel sistema com:

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

En acabar correctament el comandament ping, s’executa el comandament injectat, en este cas reboot, que reiniciaria l'encaminador. Els comandaments injectats amb este mètode no poden contindre espais, ja que no es construiran.

Esta vulnerabilitat està present en el model E1000. Els models E1200/E3200 sí que realitzen validació d’este camp i no hi estan afectats.

De manera semblant es podria explotar la injecció de comandaments a través del camp ping_size. No obstant això, el sistema afig la resta de paràmetres del comandament ping després del contingut injectat, la qual cosa provoca que no siga favorit. Per exemple:

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

S’executa com:

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

La qual cosa no és vàlida. Per a solucionar açò, es pot aprofitar la restricció de grandària en els comandaments del sistema. Si s’adjunten després del comandament una gran quantitat de caràcters espai codificats, el comandament es truncarà, deixant fora la resta de paràmetres:

submit_button=Diagnostics&change_action=gozila_cgi&submit_type=start_ping&action=&commit=0&ping_ip=127.0.0.1&ping_estafes=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

Utilitzant estos mètodes, es podria aconseguir una shell remota.

En el cas del model E1000, no cal cap tipus d’autenticació per a explotar les vulnerabilitats, ja que el servidor HTTP no la demana. En canvi, per a la resta de models seria necessari autenticar-se només si l'encaminador no té la seua configuració de fàbrica.

Leyrer assenyala que dels tres models vulnerables provats, només un, l’E1200, continua tenint suport per part del fabricant, mentre que els altres dos (E1000 i E3200) no rebran cap actualització que resolga les fallades. Per a estos, recomana desactivar la interfície d’administració, encara que açò pot no ser prou per a evitar un atac cross-site request forgery.

Sistemes Afectats:

Linksys E1500/E2500 

Referències:

None

Solució:None Notes:

Under The Hood: Linksys Remote Command Injection Vulnerabilities
Multiple Vulnerabilities in Linksys E1500/E2500

Font: Hispasec una-al-día

CSIRT-CV