You are on page 1of 20

Francisco José Ribadas Pena

ribadas@uvigo.es Departamento de Informática Universidade de Vigo

Tests de Intrusión. Análise da seguridade en entornos GNU/Linux
Ferramentas de seguridade en GNU/Linux
Curso de Extensión Universitaria

25 de xuño de 2010

Indice Tests de intrusión
¿Qué son? ¿Para qué sirven? Tipología de los test de intrusión Metodologías y buenas prácticas Fases y tareas típicas

Distribuciones GNU/linux para pen testing
Backtrack 4

2

… Dependerá del alcance concreto del test realizado Test de penetración != análisis de vulnerabilidades Las vulnerabilidades detectadas se explotan 3 . interrumpir un servicio.Tests de intrusión (I) ¿Qué son? Mecanismo de evaluación de las medidas de protección de una organización y de los servicios expuestos a Internet. Analizan la efectividad de los controles de seguridad implantados en una organización relizando una bateria de acciones planificadas que simulan el comportamiento de un atacante. Otros nombres: tests de penetración (pen testing). hacking ético (ethical hacking) Objetivo: vulnerar la seguridad de los mecanismos implantados para conseguir accesos no autorizados a la organización. obtener información sensible.

recomendaciones) Beneficios Encuentran brechas de seguridad no vistas Documentan e informan a la dirección de problemas/amenazas Verificación de configuraciones seguras (en redes y software) Verificación real del cumplimiento de las políticas y medidas de seguridad establecidas 4 . impacto en la organización. probabilidad de ocurrencia.estimación de su gravedad.Tests de intrusión (II) ¿Para qué sirven? Conforman un conjunto de actividades destinadas a estimar el estado real de la seguridad de un sistema. Son uno de los posibles métodos y técnicas a usar en las auditorias de seguridad Finalizan con un informe técnico (identificación del riesgo.

Tests de intrusión (III) Conceptos (ISO-27001) Activo: Cualquier valor cuantificable de naturaleza material o inmaterial de una organización Amenaza: Factor de riesgo externo representado por un peligro latente asociado a un fenómeno natural. produciendo efectos adversos a personas o bienes Vulnerabilidad: Factor de riesgo interno de un sistema expuesto a una amenaza. pudiendo manifestarse en un sitio específico por un tiempo determinado. y se corresponde con su predisposición intrínseca a ser afectado o susceptible de daño Riesgo: Probabilidad de que una amenaza explote una vulnerabilidad Impacto: Cuantificación del daño ocasionado una vez materializada la amenaza 5 . tecnológico o humano.

NVD (National Vulnerability Database) Desarrollada por el Instituto Nacional de Estándares y Tecnología Norteamericano (NIST) Define 23 tipos de vulnerabilidades. etc) 6 . de código y de entorno.Test de intrusión (III) Colecciones y catálogos de vulnerabilidades CWE (Common Weakness Enumeration) Cataloga más de 600 entradas dividas en: vulnerabilidades de configuración. Es la clasificación usada por CVE (Common Vulnerabilities and Exposures). OWASP (Open Web Application Security Project) Colección de 24 tipos vulnerabilidades centrada exclusivamente en la seguridad de aplicaciones web. SAMATE (Software Assurance Metrics and Tool Evaluation) Desarrollada y mantenida por el NIST Centrada en los errores de codificación de aplicaticiones (buffer overflow.

departamentos. SS. bases de datos.. firewalls. .) Se cuenta con colaboración del personal y con acceso a los recursos de la empresa.OO. IDS.. Simula un atacante con conocimiento exhaustivo del sistema Análisis interno Desde el punto de vista de un administrador o usuario que cuentan con acceso (privilegiado o no) al sistema Puede ser muy extenso (alcance muy amplio) y minucioso (se dispone de un conocimiento completo) 7 .. responsabilidades) y de la red (topología. dispositivos.Tipos de tests de intrusión (I) White box pentest Se posee un amplio conocimiento de la organización (estructura.

.Tipos de tests de intrusión (II) Black box pentest No hay conocimiento previo de la organización o la red Sólo se dispone de información públicamente accesible Pocas personas de la organización saben que esta será atacada. wireless. bases de datos.] + personal entrenado) Grey box pentest (combina los anteriores) Usa técnicas de un atacante real (black box) con conocimiento del sistema analizado (white box) Tests de intrusión específicos Servicios/aplicaciones web... Las tareas y pasos concretos a seguir varían ligeramente en cada tipo 8 . Simulación más realista de un ataque auténtico Puede ser muy costoso (tiempo [recopilación info.

Tipos de tests de intrusión (III) Otra visión: Conocimiento del atacante vs conocimiento del atacado 9 .

organiza y secuencia las tareas y comprobaciones a realizar para analizar 3 aspectos (alcance) de la seguridad: COMMSEC (communication security): redes y transferencia de datos PHYSEC (physical security): personal y equipos físicos SPECSEC (spectrum security): comunicaciones wireless Entre esos pasos/tareas/comprobaciones se incluye un marco para la realización de tests de penetración 10 . incluidos test de penetración Metodología Open Source.osstmm.org Define. Metodologías de Pen Test (I) Test de penetración supone definir y ejecutar multitud de tareas muy complejas y variadas => necesidad de guias Metodologías que definan y organicen los procedimientos a ejecutar para mantener la coherencia en las acciones a realizar Open Source Security Testing Methodology Manual (OSSTMM) Metodología del ISECOM para la realización de evaluaciones de seguridad. disponible en http://www.

org/ Productos: Guia de desarrollo y testing de aplicaciones web http://www.org/index. Metodologías de Pen Test (II) ISSAF(Information Systems Security Assessment Framework) Framework del OISSG (Open Information Systems Security Group) que define procediemientos de aseguramiento y comprobación de la seguridad incluido pen testing Web: http://www.php/OWASP_Top_Ten_Project 11 . Web: http://www.owasp.php/OWASP_Guide_Project Define listas de comprobaciones en un test de intrusión web Top 10 de amenazas web http://www.org/ OWASP Testing Guide de OWASP Framework del proyecto Open Web Application Security Project (OWASP) exclusivamente dedicado a seguridad de aplicaciones web.org/index.oissg.owasp.owasp.

Explotación Etapa 4: Acceso Etapa 5: Escalada de privilegios Etapa 6: Daño Etapa 7: Borrado de huellas 12 . medio. bajo) Propuesta de correcciones y sugerencia de buenas prácticas Informe ejecutivo.Fases y tareas típicas Recopilación de información Etapa 1: Rastreo Etapa 2: Exploración Análisis de datos Etapa 3: Enumeración Informe final del test Informe técnico. Resumen del proceso realizado Clasificación de las vulnerabilidades encontradas y su nivel (alto.

. Maltego 13 . nslookup. … Buscadores Genéricos: Google hacking. KartOO (http://kartoo. responsables.Fases y tareas típicas (I) Etapa 1: Rastreo Obtener información del sistema/organización/red/máquina bajo análisis Nombres de dominio. bing hacking. DNS.. Específicos: Goolag (http://www.org). Herramientas específicas: FOCA (análisis metadatos). nombres de usuarios. ..org) Herramientas genéricas de gestión de red: dig. RIPE.goolag.. direcciones IP.. … Bases de datos públicas: whois.

. máquinas disponibles... xprobe.). . . sistema operativo.. hping3.. traceroute. 14 .Fases y tareas típicas (II) Etapa 2: Exploración Analizar el sistema objetivo para identificar servicios activos. Herramientas genéricas de gestión de red: ping... firewalls. recursos/dispositivos de red (routers. Herramientas específicas escáneres de puertos: nmap.. ..

Escáneres de vulnerabilidades: nessus. sus versiones y parches de seguridad (service packs..OO.. … Escáneres de vuknerabilidades específicos: w3af (escaner de wulnerabilidades web) 15 . xprobe. etc) Versiones concretas de servicios/aplicaciones Cuentas de usuario válidas Herramientas específicas Escáneres puertos e identificadores de servicios: nmap..Fases y tareas típicas (III) Etapa 3: Enumeración Pruebas y tests para identificar recursos específicos y sus características concretas Identificar SS. openvas.

Abel and Cain. ettercap. . John the Ripper. Inyección de tráfico: ettercap. sslsniff. ataques de diccionario (Rainbow tables).. SAINTexploit Uso de valores de entrada no previstos fuzzers: exploraciones exhaustiva automatizada de los posibles datos de entrada. Sniffing/escucha de contraseñas o datos sensibles: wireshark... Exploits específicos: http://milw0rm. dnsniff.Fases y tareas típicas (IV) Etapa 4: Acceso Obtener un acceso no autorizado o no previsto a alguno/s de los recursos o servicios identificados en el sistema objetivo..com Herramientas automatización exploits:Metasploit. Explotación de vulnerabilidades específicas de las versiones concretas de los servicios/recursos identificados. . Rotura de contraseñas Por fuerza bruta.. buscando (a ciegas) situaciones no previstas 16 . prueba de contraseñas por defecto o contrseñas débiles Herramientas: THC hydra.. tcpdump. CORE Impact..

Fases y tareas típicas (V) Etapa 5: Escalada de privilegios Obtener control completo del sistema. Exploits específicos: http://milw0rm. Suele requerir incluir código específico en el sistema objetivo (payload) que permitan realizar determinadas acciones: Normalmente ofrecen algún tipo de acceso remoto al mismo (habilitan puertas traseras): abrir shells del sistema con privilegios (bash). adquiriendo (y manteniendo) permisos..LCP 5. Explotación de vulnerabilidades específicas de las versiones concretas de los servicios/recursos identificados. Objetivo: Validar si para el supuesto atacante sería posible adquirir privilegios que le permitieran ejecutar acciones maliciosas o acceder a datos restringidos.com Herramientas automatización exploits: Metasploit.0 17 . credenciales y privilegios propios de los administradores.. habilitar conexiones de escritorio remoto (VNC). Core Impact Puertas traseras: BackOrifice..

Denegación de servicio (DoS) Imposibilitar el acceso o uso de determinados componentes del sistema a sus usuarios legítimos. páginas web.. .Fases y tareas típicas (VI) Etapa 6: Daño Valorar y evaluar la capacidad del atacante que ha “escalado” privilegios de realizar acciones maliciosas que causen daño: Daños posibles: Acceso a datos confidenciales Robo de información Alteración de información: datos protegidos.. Extensión del ataque Evaluar la posibilidad de usar el sistema controlado como punto de partida para iniciar ataques a otras parte del propio sistema objetivo o a sistemas ajenos 18 .

Objetivo: Eliminación de los registros y logs que contengan información que releve la existencia del ataque y que pudiera ser de utilidad en un análisis forense o una auditoría de seguridad.Fases y tareas típicas (VII) Etapa 7: Borrado de huellas Verificar hasta que punto el potencial atacante tendría capacidad de eliminar el rastro de sus acciones maliciosas y mantener su control del sistema de forma permanente sin ser detectado. 19 .

org/ Otras distribuciones: Pentoo [web: http://www.pentoo.damnvulnerablelinux.Rfid) Penetration (Exploit & Social Engineering Toolkit) Privilege Escalation Maintaining Access Digital Forensics Reverse Engineering Voice Over IP Web: http://www.ch/] DVL (damm vulnerable linux) [web:http://www.11. 20 ..backtrack-linux.Bluetooth.Distribuciones GNU/Linux para pen testing BackTrack 4 Live-cd con multitud de herramientas de análisis de seguridad preconfiguradas... Herramientas organizadas en 11 categorias que se corresponden con las fases típicas de una intrusión.org/] ejercicios de intrusión. sistemas vulnerables para pruebas. Orientado principalmente a tests de intrusión. Information Gathering Network Mapping Vulnerability Identification Web Application Analysis Radio Network Analysis (802.