Tests de Intrusión. Análise da seguridade en  entornos GNU/Linux
Indice <ul><li>Tests de intrusión </li><ul><li>¿Qué son? ¿Para qué sirven?
Tipología de los test de intrusión
Metodologías y buenas prácticas
Fases y tareas típicas </li></ul><li>Distribuciones GNU/linux para  pen testing </li><ul><li>Backtrack  4 </li></ul></ul>
Tests de intrusión (I) ¿Qué son? <ul><ul><li>Mecanismo de  evaluación  de las medidas de protección de una organización y ...
Otros nombres: tests de penetración ( pen testing ), hacking ético ( ethical hacking)   </li></ul><li>Objetivo:  vulnerar ...
Test de penetración != análisis de vulnerabilidades </li><ul><li>Las vulnerabilidades detectadas se explotan </li></ul></u...
Tests de intrusión (II) ¿Para qué sirven? <ul><ul><li>Conforman un conjunto de actividades destinadas a estimar el estado ...
Finalizan con un informe técnico (identificación del riesgo, probabilidad de ocurrencia, impacto en la organización,estima...
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 </li></ul></ul></ul>
Tests de intrusión (III) Conceptos (ISO-27001) <ul><ul><li>Activo:  Cualquier valor cuantificable de naturaleza material o...
Amenaza:  Factor de riesgo externo representado por un peligro latente asociado a un fenómeno natural, tecnológico o human...
Vulnerabilidad:  Factor de riesgo interno de un sistema expuesto a una amenaza, y se corresponde con su predisposición int...
Riesgo:  Probabilidad de que una amenaza explote una vulnerabilidad
Impacto:  Cuantificación del daño ocasionado una vez materializada la amenaza </li></ul></ul>
Test de intrusión (III) Colecciones y catálogos de  vulnerabilidades <ul><li>CWE ( Common Weakness Enumeration ) </li><ul>...
Es la clasificación usada por CVE ( Common Vulnerabilities and Exposures ). </li></ul><li>NVD ( National Vulnerability Dat...
Upcoming SlideShare
Loading in …5
×

Tests de intrusión. Análisis de seguridad en GNU/Linux

3,953 views
3,766 views

Published on

Tests de intrusión. Análisis de seguridad en GNU/Linux.
Curso "Herramientas de seguridad en GNU/Linux" Universidad de Vigo. Ourense, junio-2010

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,953
On SlideShare
0
From Embeds
0
Number of Embeds
138
Actions
Shares
0
Downloads
199
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Tests de intrusión. Análisis de seguridad en GNU/Linux

  1. 1. Tests de Intrusión. Análise da seguridade en entornos GNU/Linux
  2. 2. Indice <ul><li>Tests de intrusión </li><ul><li>¿Qué son? ¿Para qué sirven?
  3. 3. Tipología de los test de intrusión
  4. 4. Metodologías y buenas prácticas
  5. 5. Fases y tareas típicas </li></ul><li>Distribuciones GNU/linux para pen testing </li><ul><li>Backtrack 4 </li></ul></ul>
  6. 6. Tests de intrusión (I) ¿Qué son? <ul><ul><li>Mecanismo de evaluación de las medidas de protección de una organización y de los servicios expuestos a Internet. </li><ul><li>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.
  7. 7. Otros nombres: tests de penetración ( pen testing ), hacking ético ( ethical hacking) </li></ul><li>Objetivo: vulnerar la seguridad de los mecanismos implantados para conseguir accesos no autorizados a la organización, obtener información sensible, interrumpir un servicio,… </li><ul><li>Dependerá del alcance concreto del test realizado
  8. 8. Test de penetración != análisis de vulnerabilidades </li><ul><li>Las vulnerabilidades detectadas se explotan </li></ul></ul></ul></ul>
  9. 9. Tests de intrusión (II) ¿Para qué sirven? <ul><ul><li>Conforman un conjunto de actividades destinadas a estimar el estado real de la seguridad de un sistema. </li><ul><li>Son uno de los posibles métodos y técnicas a usar en las auditorias de seguridad
  10. 10. Finalizan con un informe técnico (identificación del riesgo, probabilidad de ocurrencia, impacto en la organización,estimación de su gravedad, recomendaciones) </li></ul><li>Beneficios </li><ul><li>Encuentran brechas de seguridad no vistas
  11. 11. Documentan e informan a la dirección de problemas/amenazas
  12. 12. Verificación de configuraciones seguras (en redes y software)
  13. 13. Verificación real del cumplimiento de las políticas y medidas de seguridad establecidas </li></ul></ul></ul>
  14. 14. Tests de intrusión (III) Conceptos (ISO-27001) <ul><ul><li>Activo: Cualquier valor cuantificable de naturaleza material o inmaterial de una organización
  15. 15. Amenaza: Factor de riesgo externo representado por un peligro latente asociado a un fenómeno natural, tecnológico o humano, pudiendo manifestarse en un sitio específico por un tiempo determinado, produciendo efectos adversos a personas o bienes
  16. 16. Vulnerabilidad: Factor de riesgo interno de un sistema expuesto a una amenaza, y se corresponde con su predisposición intrínseca a ser afectado o susceptible de daño
  17. 17. Riesgo: Probabilidad de que una amenaza explote una vulnerabilidad
  18. 18. Impacto: Cuantificación del daño ocasionado una vez materializada la amenaza </li></ul></ul>
  19. 19. Test de intrusión (III) Colecciones y catálogos de vulnerabilidades <ul><li>CWE ( Common Weakness Enumeration ) </li><ul><li>Cataloga más de 600 entradas dividas en: vulnerabilidades de configuración, de código y de entorno.
  20. 20. Es la clasificación usada por CVE ( Common Vulnerabilities and Exposures ). </li></ul><li>NVD ( National Vulnerability Database ) </li><ul><li>Desarrollada por el Instituto Nacional de Estándares y Tecnología Norteamericano (NIST)
  21. 21. Define 23 tipos de vulnerabilidades. </li></ul><li>OWASP ( Open Web Application Security Project ) </li><ul><li>Colección de 24 tipos vulnerabilidades centrada exclusivamente en la seguridad de aplicaciones web. </li></ul><li>SAMATE (Software Assurance Metrics and Tool Evaluation) </li><ul><li>Desarrollada y mantenida por el NIST
  22. 22. Centrada en los errores de codificación de aplicaticiones (buffer overflow, etc) </li></ul></ul>
  23. 23. Tipos de tests de intrusión (I) White box pentest <ul><ul><li>Se posee un amplio conocimiento de la organización (estructura, departamentos, responsabilidades) y de la red (topología, dispositivos, SS.OO., bases de datos, IDS, firewalls, ...)
  24. 24. Se cuenta con colaboración del personal y con acceso a los recursos de la empresa.
  25. 25. Simula un atacante con conocimiento exhaustivo del sistema
  26. 26. Análisis interno </li><ul><li>Desde el punto de vista de un administrador o usuario que cuentan con acceso (privilegiado o no) al sistema
  27. 27. Puede ser muy extenso (alcance muy amplio) y minucioso (se dispone de un conocimiento completo) </li></ul></ul></ul>
  28. 28. Tipos de tests de intrusión (II) Black box pentest <ul><ul><li>No hay conocimiento previo de la organización o la red </li><ul><li>Sólo se dispone de información públicamente accesible </li></ul><li>Pocas personas de la organización saben que esta será atacada.
  29. 29. Simulación más realista de un ataque auténtico
  30. 30. Puede ser muy costoso (tiempo [recopilación info.] + personal entrenado) </li></ul></ul>Grey box pentest (c ombina los anteriores) <ul><ul><li>Usa técnicas de un atacante real (black box) con conocimiento del sistema analizado (white box) </li></ul></ul>Tests de intrusión específicos <ul><ul><li>Servicios/aplicaciones web, bases de datos, wireless, ...
  31. 31. Las tareas y pasos concretos a seguir varían ligeramente en cada tipo </li></ul></ul>
  32. 32. Tipos de tests de intrusión (III) Otra visión: <ul><ul><li>Conocimiento del atacante vs conocimiento del atacado </li></ul></ul>
  33. 33. <ul><li>Metodologías de Pen Test (I) </li></ul>Test de penetración supone definir y ejecutar multitud de tareas muy complejas y variadas => necesidad de guias <ul><ul><li>Metodologías que definan y organicen los procedimientos a ejecutar para mantener la coherencia en las acciones a realizar </li></ul></ul>Open Source Security Testing Methodology Manual (OSSTMM) <ul><ul><li>Metodología del ISECOM para la realización de evaluaciones de seguridad, incluidos test de penetración
  34. 34. Metodología Open Source, disponible en http://www.osstmm.org
  35. 35. Define, organiza y secuencia las tareas y comprobaciones a realizar para analizar 3 aspectos (alcance) de la seguridad: </li><ul><li>COMMSEC ( communication security ): redes y transferencia de datos
  36. 36. PHYSEC ( physical security ): personal y equipos físicos
  37. 37. SPECSEC ( spectrum security ): comunicaciones wireless </li></ul><li>Entre esos pasos/tareas/comprobaciones se incluye un marco para la realización de tests de penetración </li></ul></ul>
  38. 38. <ul><li>Metodologías de Pen Test (II) </li></ul>ISSAF( Information Systems Security Assessment Framework ) <ul><li>Framework del OISSG ( Open Information Systems Security Group ) que define procediemientos de aseguramiento y comprobación de la seguridad incluido pen testing
  39. 39. Web: http://www.oissg.org/ </li></ul>OWASP Testing Guide de OWASP <ul><li>Framework del proyecto Open Web Application Security Project (OWASP) exclusivamente dedicado a seguridad de aplicaciones web.
  40. 40. Web: http://www.owasp.org/
  41. 41. Productos: </li><ul><li>Guia de desarrollo y testing de aplicaciones web http://www.owasp.org/index.php/OWASP_Guide_Project </li><ul><li>Define listas de comprobaciones en un test de intrusión web </li></ul><li>Top 10 de amenazas web http://www.owasp.org/index.php/OWASP_Top_Ten_Project </li></ul></ul>
  42. 42. Fases y tareas típicas <ul>Recopilación de información <ul><li>Etapa 1: Rastreo
  43. 43. Etapa 2: Exploración </li></ul></ul>Informe final del test <ul><li>Informe técnico. </li><ul><li>Resumen del proceso realizado
  44. 44. Clasificación de las vulnerabilidades encontradas y su nivel (alto, medio, bajo)
  45. 45. Propuesta de correcciones y sugerencia de buenas prácticas </li></ul><li>Informe ejecutivo. </li></ul><ul>Análisis de datos <ul><li>Etapa 3: Enumeración </li></ul></ul><ul>Explotación <ul><li>Etapa 4: Acceso
  46. 46. Etapa 5: Escalada de privilegios
  47. 47. Etapa 6: Daño
  48. 48. Etapa 7: Borrado de huellas </li></ul></ul>
  49. 49. Fases y tareas típicas (I) Etapa 1: Rastreo <ul><li>Obtener información del sistema/organización/red/máquina bajo análisis </li><ul><li>Nombres de dominio, direcciones IP, nombres de usuarios, responsables, …
  50. 50. Bases de datos públicas: whois, RIPE, DNS, …
  51. 51. Buscadores </li><ul><li>Genéricos: Google hacking, bing hacking, ...
  52. 52. Específicos: Goolag ( http://www.goolag.org ), KartOO ( http://kartoo.org ) </li></ul><li>Herramientas genéricas de gestión de red: dig, nslookup,...
  53. 53. Herramientas específicas: FOCA (análisis metadatos) , Maltego </li></ul></ul>
  54. 54. Fases y tareas típicas (II) Etapa 2: Exploración <ul><li>Analizar el sistema objetivo para identificar servicios activos, máquinas disponibles, recursos/dispositivos de red (routers, firewalls, ...), sistema operativo, ... </li><ul><li>Herramientas genéricas de gestión de red: ping, traceroute,...
  55. 55. Herramientas específicas </li><ul><li>escáneres de puertos: nmap, hping3, xprobe, ... </li></ul></ul></ul>
  56. 56. Fases y tareas típicas (III) Etapa 3: Enumeración <ul><li>Pruebas y tests para identificar recursos específicos y sus características concretas </li><ul><li>Identificar SS.OO., sus versiones y parches de seguridad (service packs, etc)
  57. 57. Versiones concretas de servicios/aplicaciones
  58. 58. Cuentas de usuario válidas
  59. 59. Herramientas específicas </li><ul><li>Escáneres puertos e identificadores de servicios: nmap, xprobe...
  60. 60. Escáneres de vulnerabilidades: nessus, openvas, …
  61. 61. Escáneres de vuknerabilidades específicos: w3af (escaner de wulnerabilidades web) </li></ul></ul></ul>
  62. 62. 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. <ul><li>Rotura de contraseñas </li><ul><li>Por fuerza bruta, ataques de diccionario (Rainbow tables), prueba de contraseñas por defecto o contrseñas débiles
  63. 63. Herramientas: THC hydra, John the Ripper, Abel and Cain,... </li></ul><li>Sniffing/escucha de contraseñas o datos sensibles: wireshark, tcpdump, ettercap, ...
  64. 64. Inyección de tráfico: ettercap, dnsniff, sslsniff, ...
  65. 65. Explotación de vulnerabilidades específicas de las versiones concretas de los servicios/recursos identificados. </li><ul><li>Exploits específicos: http://milw0rm.com
  66. 66. Herramientas automatización exploits: Metasploit, CORE Impact, SAINTexploit
  67. 67. Uso de valores de entrada no previstos </li><ul><li>fuzzers : exploraciones exhaustiva automatizada de los posibles datos de entrada, buscando (a ciegas) situaciones no previstas </li></ul></ul></ul>
  68. 68. Fases y tareas típicas (V) Etapa 5: Escalada de privilegios Obtener control completo del sistema, adquiriendo (y manteniendo) permisos, credenciales y privilegios propios de los administradores. <ul><ul><li>Objetivo: Validar si para el supuesto atacante sería posible adquirir privilegios que le permitieran ejecutar acciones maliciosas o acceder a datos restringidos.
  69. 69. Suele requerir incluir código específico en el sistema objetivo ( payload ) que permitan realizar determinadas acciones: </li><ul><li>Normalmente ofrecen algún tipo de acceso remoto al mismo (habilitan puertas traseras ): </li><ul><li>abrir shells del sistema con privilegios (bash), habilitar conexiones de escritorio remoto (VNC),... </li></ul></ul><li>Explotación de vulnerabilidades específicas de las versiones concretas de los servicios/recursos identificados. </li><ul><li>Exploits específicos: http://milw0rm.com
  70. 70. Herramientas automatización exploits: Metasploit, Core Impact
  71. 71. Puertas traseras: BackOrifice,LCP 5.0 </li></ul></ul></ul>
  72. 72. Fases y tareas típicas (VI) Etapa 6: Daño <ul><li>Valorar y evaluar la capacidad del atacante que ha “escalado” privilegios de realizar acciones maliciosas que causen daño: </li><ul><li>Daños posibles: </li><ul><li>Acceso a datos confidenciales </li><ul><li>Robo de información
  73. 73. Alteración de información: datos protegidos, páginas web, ... </li></ul><li>Denegación de servicio (DoS) </li><ul><li>Imposibilitar el acceso o uso de determinados componentes del sistema a sus usuarios legítimos. </li></ul><li>Extensión del ataque </li><ul><li>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 </li></ul></ul></ul></ul>
  74. 74. Fases y tareas típicas (VII) Etapa 7: Borrado de huellas <ul><li>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. </li><ul><li>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. </li></ul></ul>
  75. 75. Distribuciones GNU/Linux para pen testing BackTrack 4 <ul><li>Live-cd con multitud de herramientas de análisis de seguridad preconfiguradas.
  76. 76. Orientado principalmente a tests de intrusión.
  77. 77. Herramientas organizadas en 11 categorias que se corresponden con las fases típicas de una intrusión.
  78. 78. Web: http://www.backtrack-linux.org/ </li></ul>Otras distribuciones: <ul><li>Pentoo [web: http://www.pentoo.ch/ ]
  79. 79. DVL ( damm vulnerable linux ) [web: http://www.damnvulnerablelinux.org/ ] </li><ul><li>ejercicios de intrusión, sistemas vulnerables para pruebas,... </li></ul></ul>Digital Forensics Reverse Engineering Voice Over IP Information Gathering Network Mapping Vulnerability Identification Web Application Analysis Radio Network Analysis (802.11,Bluetooth,Rfid) Penetration (Exploit & Social Engineering Toolkit) Privilege Escalation Maintaining Access

×