Ads 468x60px

27 de julio de 2015

Hacking Ético III



En Hacking Ético I vimos las distintas metodologías que podemos seguir para realizar un test de penetración, además de algunas herramientas para la fase de footprinting. En Hacking Ético II escribí sobre los tipos de herramientas de análisis de código que podemos utilizar en la fase de Testing del ciclo de vida de desarrollo seguro de aplicaciones (SSDLC). Y en esta tercera entrega quiero plasmar la importancia de proteger adecuadamente los servicios de VoIP haciendo referencia a los ataques que nos podemos encontrar, además de las herramientas que podemos utilizar para realizar una prueba de penetración sobre VoIP.

En primer lugar es importante conocer y ser consciente de los tipos de ataques que nos podemos encontrar en una infraestructura de voz sobre IP. En muchas ocasiones suele ser un servicio externalizado y mantenido por un proveedor que tiene acceso remoto a la centralita de VoIP, y que si no exigimos que se cumplan unas medidas de seguridad mínimas, pueden dejar una puerta trasera a nuestra plataforma de IT, por ejemplo al no aplicar correctamente una política de contraseñas, parches de actualización o simplemente configuraciones de hardening sobre VoIP. Entre los ataques más comunes nos podemos encontrar la denegación del servicio o degradación de la calidad del servicio, el robo de información interceptando o redirigiendo llamadas, y el más habitual e invasivo que uno se da cuenta cuando llega la factura a final de mes que es la realización de llamadas gratuitas, normalmente llamadas internacionales sin nuestro consentimiento y conocimiento.

Para realizar pruebas de penetración sobre sistemas de VoIP podemos utilizar la distribución VIPER VAST, que es un sistema Linux con un conjunto de herramientas para realizar análisis y pruebas sobre VoIP, nos podemos encontrar herramientas como Sipvicious, SIPp, UCSniff, VoIP Hopper, entre muchas otras.

En un test de penetración sobre VoIP debemos seguir las mismas fases que en cualquier otro test de penetración sobre otro servicio, es decir, en primer lugar realizaremos el footprinting utilizando herramientas de OSINT como Maltego o Shodan. Posteriormente seguiremos con las fases de Mapeo de Red y Enumeración, que utilizando herramientas como Nmap o Hping descubriremos los servicios de voz sobre IP de la compañía para comenzar a realizar conexiones hacia los sistemas objetivos. Una vez obtenido los servicios publicados podríamos utilizar la herramienta metasploit para intentar obtener los nombres de usuarios y extensiones telefónicas, esto lo haremos observando la respuesta a las peticiones SIP como Register, Invite y Option, es decir, dependiendo de la respuesta que nos proporcione la centralita a estos métodos conseguiríamos saber los nombres de usuarios y las extensiones. Además, como el servicio de VoIP depende de otros servicios transversales como TFTP, SNMP, DHCP y DNS, si conseguimos acceder a la red interna podríamos utilizar herramientas como tftpbrute, SNMPSweep, Sivus, etc para obtener mucha más información sobre la plataforma de VoIP implantada en la organización. Una vez obtenida toda la información ya estaríamos en disposición de aprovechar las vulnerabilidades para realizar el ataque de DoS, atacar a dispositivos de VoIP concretos como teléfonos IP, realizar escuchas ayudándonos de herramientas como Cain y Abel, realizar Fuzzing de VoIP, obtener contraseñas y crackearlas con sipdump y SIPCrack, manipular la señalización para suplantar el servidor de VoIP, insertar audio y/o realizar ingeniería social como Vishing (VoIP Phishing) y SPIT (Spam over Internet Telephony).

Para proteger un sistema de Voz sobre IP deberíamos comenzar por segmentar la red de Voz del resto de redes, utilizar mecanismos de cifrado como SSL y TLS en la capa de transporte para la señalización, así como también métodos de cifrados como SRTP y SRTCP en la capa de aplicación y ZRTP para el intercambio de claves Diffie-Hellman. Además de estos mecanismos de protección se deberían aplicar todas las medidas de protección que aplican a otras redes “normales” como la instalación de equipos cortafuegos, sistemas de protección de intrusiones (IDS/IPS), sistemas de gestión y correlación de eventos (SIEM), etc

Un saludo amigos y recuerda, la próxima vez que estés hablando por teléfono piensa que alguien puede estar escuchándote!!

20 de julio de 2015

¿Quieres que adivine la contraseña de tu correo electrónico?



Hace aproximadamente un mes en el evento “Innovación, si pero con seguridad tuve la oportunidad de dar una charla en el Centro Universitario de Mérida, la que fue mi casa y donde comencé en este mundillo de la Informática. La idea de la charla era transmitir y hacer ver mediante la técnica de phishing con qué facilidad nos pueden robar credenciales si no ponemos las medidas de seguridad adecuadas y la atención suficiente para que esto no suceda.

La mayoría de la audiencia eran alumnos y profesores, todos ellos relacionados con las TIC, por lo que rápidamente entendieron los conceptos de Man In The Middle, arpspoof o dnsspoof que utilicé en el caso práctico, que consistía en suplantar la web de Gmail mediante Social Engineering Toolkit, para posteriormente mediante un MITM capturar las peticiones DNS de la víctima y redirigir las consultas de Gmail a la web suplantada para robarle las contraseñas. Posteriormente se redirigía a la víctima a la web original de Gmail sin que se percatase que previamente había introducido las credenciales en una web suplantada por el atacante.

Debido a la sencillez y a la rapidez con la que se puede hacer el caso práctico anterior tuve tiempo de realizar otro caso práctico. Este nuevo caso práctico consistía en aprovechar el MITM que había hecho previamente para infectar la máquina de la víctima cuando visitase la web de elpais.com. En este nuevo escenario se aprovechaba una vulnerabilidad Java que abría una consola shell inversa contra el servidor de control C&C, permitiendo al atacante acceder al equipo de la víctima, no solo al sistema de ficheros sino también para realizar capturas de pantallas, webcams, etc.

A continuación podéis ver el vídeo de la charla. No olvidéis valorar la charla.


Ya que no se ve del todo bien los casos prácticos, también he subido un vídeo del caso práctico que hice antes de la charla.


Además de los casos prácticos destaqué varias tecnologías que utilizan actualmente las grandes compañías concienciadas con la seguridad para detectar y mitigar intrusos (IDS/IPS), gestionar eventos de seguridad (SIEM) y controlar los accesos a la red (NAC), sin olvidar nunca la importancia de la concienciación a los usuarios en materia de seguridad y la necesidad de contar con profesionales en seguridad de la información.

Por último, aquí tenéis también las transparencias.


Un saludo amigos y recuerda, si bajas la guardia, te podrán adivinar las contraseñas!!

13 de julio de 2015

Hacking Ético II



En esta segunda entrega del curso de Hacking Ético que he realizado quiero hacer hincapié en el módulo de Aplicaciones Web, que desde mi punto de vista es uno de los más interesantes debido a que el auge del Cloud Computing está haciendo que proliferen las aplicaciones web en la nube, obviando e ignorando muchas veces los riesgos de seguridad a los que estamos expuestos si no se sigue el ciclo de vida de desarrollo seguro de aplicaciones (SSDLC).

En esta entrada voy a describir los distintos tipos de herramientas de análisis que podemos utilizar en la fase de Testing del SSDLC para detectar malas prácticas de desarrollo, fallos de configuración y vulnerabilidades de aplicaciones, siendo estas aplicaciones cada vez más demandadas y utilizadas por las compañías para saber y conocer qué problemas de seguridad tienen sus aplicaciones, y así poder mejorarlas.

Herramientas de Análisis Estático de Código Fuente (SAST): Son herramientas de caja blanca que realizan un análisis muy completo de toda la aplicación, que analizando el código fuente simulan lo que ocurriría en tiempo de ejecución. Ejemplos de estas herramientas son Insight, Fortify SCA o Cx-suite de Checkmarx.

Static Analysis Security Tools

Herramientas de Análisis en Tiempo Real de Ejecución (RAST): Son herramientas de caja blanca que se utilizan en tiempo real de ejecución inmersas en el servidor de aplicaciones inspeccionando el entorno de ejecución de los procesos. A diferencia de SAST, la tecnología RAST abarca una mayor superficie de análisis al ser capaz de identificar, localizar, organizar y categorizar la criticidad de las vulnerabilidades del código en tiempo real mientras se ejecuta la aplicación, por tanto se identifican más vulnerabilidades y su análisis es más acertado. Ejemplos de estas herramientas son Acunetix+Acusensor, Fortify Runtime Analysis o Appscan+Glassbox.

Real Time Analysis Security Tools

Herramientas de Análisis Dinámico (DAST): Son herramientas de caja negra que utilizaremos cuando no disponemos del código fuente de la aplicación. Estos escáneres de vulnerabilidades de aplicaciones web lanzarán peticiones malignas contra los servicios webs con la intención de descubrir todas las vulnerabilidades posibles analizando las respuestas de las aplicaciones, para ello conforma y adapta las peticiones abarcando todas las entradas posibles de las aplicaciones. Ejemplos de estas herramientas son Webinspect, Paros o Cenciz.

Dynamic Analysis Security Tools
 
Si no desarrollamos las aplicaciones web siguiendo el ciclo SSDLC y tampoco probamos, o queremos saber, las vulnerabilidades y problemas que tenemos en nuestro código, estaremos poniéndoselo fácil a los atacantes para que nos saquen los colores datos mediante XSS, CSRF, SQLi, etc

Un saludo amigos y recuerda, la concienciación en seguridad es nuestro mejor aliado!!


6 de julio de 2015

Hacking Ético I



En este último mes he estado inmerso en un curso de hacking ético, que junto con mis compañeros hemos ido comentando y desarrollando cada entorno práctico. Algunas de las herramientas ya las conocíamos pero otras no, y este curso nos ha permitido profundizar en todas ellas probándolas contra un entorno de laboratorio.

En primer lugar hemos visto varias metodologías que nos ayudan a realizar una prueba de penetración:
  • PMBOK: Debemos de ver un test de penetración como un proyecto y por tanto la necesidad de gestionarlo mediante una metodología de gestión de proyectos.
  • ISSAF: Es una metodología estructurada de análisis de seguridad que nos proporciona un entorno de trabajo detallado de pruebas y test específicos que debemos ejecutar en una evaluación de seguridad.
  • OSSTMM: Es uno de los estándares profesionales más completos y comúnmente utilizados en Auditorías de Seguridad de Sistemas desde Internet. Esta metodología que cubre únicamente las pruebas que hay que realizar desde el exterior (Internet), y desde un entorno no privilegiado, nos proporcionará un conjunto de reglas que nos indicarán cuándo, qué y cuáles eventos deben de ser testeados.
  • PTES: Es un estándar reciente, que consta de siete apartados que recogen un conjunto de buenas prácticas que tratan de servir de punto de referencia para la realización de pruebas mediante el uso de determinadas herramientas y procedimientos.
A continuación hemos comenzado con la primera fase que debemos llevar a cabo en una prueba de penetración. La fase de reconocimiento o footprinting basándonos en herramientas OSINT que nos permitan recopilar información a partir de fuentes de acceso público como la página web de la empresa, redes sociales, foros, wikis, etc. Algunas de las herramientas que nos ayudan a realizar esta tarea son las siguientes:
  • Anubis: Es una herramienta de auditoría de seguridad y test de penetración encargada de obtener información pública para presentarla de una manera lógica y visible. Anubis permite buscar dominios mediante técnicas basadas en Google Hacking, Bing Hacking, ataques de fuerza bruta contra el DNS, transferencias de zona, etc.
  • Foca: Es una herramienta utilizada principalmente para encontrar metadatos e información oculta en los documentos. Las técnicas utilizadas son Web Search, DNS Search, Resolution IP, PTR Scanning, etc.
  • Maltego: Es una herramienta de obtención de información sobre personas y empresas en Internet, permitiendo cruzar datos para obtener perfiles en redes sociales, direcciones de correo como puede ser de recursos humanos, departamento de ventas, soporte técnico, número telefónico, etc.
Tras la recopilación de información pasiva pasaríamos a la recopilación de información activa, concretamente a la Fase de Enumeración, donde nos conectaríamos a las máquinas o sistemas TIC del objetivo. Sin embargo, esta y otras fases las dejaremos para las siguientes entradas.

Un saludo amigos y recuerda, deja un comentario con lo primero que te sugiera.

Related Posts Plugin for WordPress, Blogger...

Entradas populares