Archivo
Mikrotik Winbox server vulnerability
Hace unos meses recibía llamadas de algunos clientes preocupados debido a que sus empresas proveedoras de servicios de internet y de Voz los llamaban advirtiéndoles que sus equipos Mikrotik fueron comprometidos y que era necesario que revisen sus redes internas ante algún comportamiento «raro».
Así fue como comenzó todo, luego googleando un poco se encontraban muchas notificas referentes a que millones de estos routers fueron comprometidos para ser usados en campanas de «cryptojacking» es decir usaban los equipo para minar crytomendas, sin embargo como siempre todo fue la punta del iceberg.
Buscando el vector del ataque se reportaba que descubrió que servicio Winbox cuenta con una vulnerabilidad que permite a eludir la autenticación y leer archivos al modificar una solicitud para cambiar un byte relacionado con una ID de sesión, lo cual suena a mas de los mismo, fallas en el control de recepción de variables en determinados servicios, el cual fue catalogado como CVE-2018-14847
Valga las verdades el fabricante reporto la vulnerabilidad a fines de marzo de 2018 sin embargo siempre existe un tiempo en que los atacantes elaboran los programas para sacarle provecho a este tipo de vulnerabilidad y por supuesto nadie actualiza 😀 es por ello recién a mediados de agosto se desato el caos en las implementaciones que usaban esto equipos con la aparición de los exploits.
Para los que me conocen saben que Mikrotik no es de mis equipos preferidos, esto es debido a que lo venden como «Firewall de perímetro» es decir proteger a una red empresarial, cuando el equipo no es mas que un router, sabiendo que hoy para proteger una empresa necesita mas que abrir o cerrar puertos o un proxy básico en su mínima expresión como es el que maneja el RouterOS, sin embargo es evidente que el factor costo es importante comparado con equipos UTM, sumado al desconocimiento de los clientes ante integradores oportunistas.
Entonces sin mas, les comparto el procedimiento y el vídeo para hacer el P.O.C. de esta vulnerabilidad sobre Kali Linux
Espero les sirva!!
Saludos
Juan Oliva
Configurando seguridad en Elastix MT
Configuración y dinámica de mi charla realizada en el ElastixWorld de Colombia para lograr configurar el módulo PIKE en Elastix MT
1.- Activar la variable en las definiciones globales
2.- Verificar la carga del módulo
3.- Configurar el módulo PIKE a gusto 😀
4.- Evaluar en la lógica de enrutamiento
Descargar archivo de configuración
http://www.silcom.com.co/configuration/kamailio.cfg
Vídeo de demostración
Espero les sirva
Saludos
@jroliva
Hacking Fortinet – SQLI test
Para los que me siguen en Facebook y en Twitter, saben que últimamente he tenido una especial curiosidad en los equipos Fortinet, ya que por un lado, es uno de los equipos que tienen mayor posicionamiento de instalaciones en la región y por otro lado en mis proyectos de pentest a pesar de estar presentes, nunca tuve inconveniente de bloqueos en los ataques que realizaba.
Debido a ello, la semana pasada junto a mi amigo Alexis Torres un colega del área de pentest y que también es especialista en soluciones Fortinet , realizamos algunas pruebas de seguridad ofensiva para validar si realmente el equipo bloqueaba ataques cuando protege una aplicaciones Web, en este caso usando un Appliance FortiGate 60D el cual fue configurado adecuadamente por el , ya que la idea era hacer las pruebas como dios manda.
El test consistió en poner una aplicación web vulnerable como DVWA la cual estaba protegida por un Appliance Fortinet D60 específicamente.
Entrando a los Ataques:
Como saben las vulnerabilidades de SQL Inyection ( SQLI) son las mas comunes en las aplicaciones web, esto lo pueden validar ya que están en el primer lugar del Owasp top 10.
Entonces nos valimos de la aplicación vulnerable para primero realizar ataques de SQLI muy sencillos.
‘ union select 1 —
Para mi sorpresa el Fortinet detectaba el patrón de SQL , y lo bloqueaba.
La regla que detectaba el ataque fue «http.uri.sql.injection» evidentemente no dice mucho sobre su funcionamiento interno ya que debe ser un secreto bien guardado por la marca.
Es así, que no nos dimos por vencidos y decidimos ir un poco más allá y desarrollar ataques un poco más elaborados con SQLMAP , herramienta por excelencia hará desarrollar SQLI.
Sin embargo era obvio que si enviaba el ataque con sqlmap sin ajustar sería presa fácil del Fortinet.
Así que le agregamos un par de modificaciones:
Velocidad:
–threads=1 , Ajustamos el máximo numero de solicitudes a 1
–delay=60 , Retrasar en 60 segundo cada envío de sqli
Ofuscación
–technique U, especificamos la tecnica basado en UNION QUERY
–batch , obviar el ingreso de Y/N
–tamper, especificamos el tipo script que usará como payload para ofuscar las cadenas sqli
en el caso de sqlmap tenemos una amplia variedad como en botica:
space2hash.py
space2morehash.py
space2mssqlblank.py
space2mysqlblank.pycharencode.py
chardoubleencode.py
charunicodeencode.py
De tal forma que el ataque quedó de está forma :
python sqlmap.py –url=»http://192.168.19.253/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#» –cookie=»security=low; PHPSESSID=d0fa0f05f0b714c18b3ba3ebace3f450″ -v 3 –dbms «MySQL» –technique U -p id –batch –threads=1 –delay=60 –tamper «space2mysqldash.py»
Después de algún tiempo de espera ya que como indicamos bajamos la velocidad del ataque, oh sorpresa el equipo detecto y bloqueo el ataque para cada uno de los payloads existentes con sqlmap.
Bueno, es evidente que fue un buen resultado para Alexis pero no para mi en mi posición de atacante, sin embargo bajo la perspectiva de protección, es bueno saber que el equipo cumple con su trabajo, aunque es necesario tener en cuenta estos dos factores:
1.- Configuración adecuada
Como indique desarrollé las pruebas con un especialista en la marca, pero no solo activando o desactivando reglas o configuraciones, como la mayoría de empresas/implementadores lo hacen, es importante también que un especialista en ataques haga la otra de parte, de tal forma que es posible tener los dos lados del escenario desarrollando test de seguridad ofensiva así como defensiva y de está forma garantizar que la configuración es la adecuada.
2.- Respecto a las pruebas
Desde la perspectiva del pentester no es posible asumir una posición que el equipo tiene la seguridad perfecta, por lo menos hablando de SQLI, teniendo en cuenta que se usó una aplicación web muy conocida en temas de inseguridad, sin embargo es correcto precisar que bajo este escenario fue efectivo, habría que realizar mas pruebas y en otros escenarios web para sentirse mas conforme.
En el futuro espero desarrollar otro tipo de pruebas de seguridad ofensiva como XSS, Session Hijacking, entre otros y ver como nos va.
Como siempre espero les sirva la información.
Saludos
Juan Oliva
@jroliva