Penetration TestAlejandro Ramoswww.securitybydefault.com
Introducción.
Método para evaluar la seguridad de un sistema o red de sistemas de información simulando el ataque por un intrusoTest de intrusión
Parte por la necesidad de comprobar cual es el impacto real de una vulnerabilidad mediante la realización de pruebas controladas.Que no se diagnostique una enfermedad no significa que no exista, se busca la detección de vulnerabilidades no conocidas.¿Por qué realizar un Test de intrusión?
Auditoría de vulnerabilidades:Cuantifica y clasifica vulnerabilidades y recomendacionesEncuentra el 100% de las vulnerabilidades conocidasTest de intrusión:Detecta algunas vulnerabilidades conocidas y algunas desconocidasDescribe y demuestra el impacto asociado a las vulnerabilidades detectadas.Diferencias entre Test de Intrusión y Auditoría de vulnerabilidades
Ataque: lo que afecta a la Autenticidad, Confidencialidad, Integridad, Disponibilidad, o Auditabilidad (ACIDA)ActivoModifica el sistemaAltera la integridad o disponibilidadEjemplos: explotar una vulnerabilidad, descargar una base de datos.PasivoNo modifica los sistemasIntercepta informaciónAfecta a la confidencialidadEjemplo: escucha de paquetes en la redTipos de ataque
ExternoEjecutado desde fuera del perímetro de seguridad.Ejemplo: InternetInternoCon más privilegios de acceso en la redEjemplo: empleado, cliente, proveedor, conexión wirelessÁmbitos de pruebas
¿Dónde?Capa de aplicaciónAnálisis de visibilidadAuditoría de código fuente (J2EE, C, ASPX, PHP…)Auditoría de aplicaciones web y web servicesAuditoría de Servicios (BBDD, WEB, Correo, etc)Auditoría de sistemas OperativosCapa comunicacionesTestDei ntrus iónAuditoría entornos inalámbricos: WiFi, BT, RFIDAuditoría Accesos remotos: Wardialing, VPNAuditoría Elementos de red: routers, switchesAuditoría Elementos de seguridad: FW, IDS, SEIMCapa físicaIngeniería SocialDumpsterDiving
Se genera un requerimiento de propuestas (requestforproposal)Proveedores responden con sus ofertasSe acepta una de ellasReunión de arranqueEjecuciónCierre de proyectoAsí nace, así muere
FasesFase 0.ArranqueProyectoFase I.Test de IntrusiónExternoFase IV.   Cierre de Proyecto    Fase III.         ResultadosFase II.Test de Intrusión InternoGestión ProyectoDb.Recopilación InformaciónA. Reunión ArranqueDa. Recopilación InformaciónH. Informe técnicoJ. Presentación de ResultadosB. Planificación de pruebasK. Reunión de Cierre de ProyectoEb. EnumeraciónEa. EnumeraciónI. Informe EjecutivoFa. AnálisisFb. AnálisisL. Aceptación de hitos y finalización de proyectoC. Reuniones SeguimientoFb.1  InfraestructuraFa.1  InfraestructuraFb.2 Sistema OperativoFa.2 Sistema OperativoFb.3 ServiciosFa.3 ServiciosFb.4 AplicacionesFa.4 AplicacionesGb.Obtención de evidenciasGa.Obtención de evidencias
Ámbito / AlcanceNivel de informaciónCaja BlancaCaja NegraAutorización de trabajohttp://www.counterhack.net/permission_memo.htmlObjetivos de auditoría¿Ingeniería social?¿Pruebas (exploits) peligrosos?Antes de empezar
Fases de pruebas
Fases – DarkSide
ISECOM OSSTMM 3.0http://www.isecom.org/OWASPhttp://www.owasp.orgNIST SP 800-42 (Security Testing), 800-115http://csrc.nist.govMetodologías
Fase 1 - Obtención de información.
Primera fase del test de intrusiónEsencial para elaborar un ataque sofisticado posteriorNo intrusivo, la entidad no debe detectarloRecopilar mayor cantidad de información publica:Introducción
Objetivo: encontrar nuevos hosts y aplicaciones webIdentificar otros dominios alojados en una misma dirección IP (virtual vost)Se consultan todas las direcciones IP en buscadoresBing.com permite “IP:<ip>”Online:http://www.serversniff.net/hostonip.phphttp://www.myipneighbors.comhttp://www.domaintools.com/reverse-ip/http://whois.webhosting.info/Ejemplo: dominios virtuales
Ejemplo DNS inverso
Always... Coca-Google
Fase 2 – Enumeración.
A veces incluido dentro de fase de obtención de información (activo)Identificar las versiones y los servicios que ofrece cada dirección IPIdentificación de sistemasoperativos, elementos de red, etcétera.Identificación de reglas en firewallsDescartar sistemas que no ofrezcan servicios (IPs sin uso)Enumeración
Objetivo: descubrir los servicios activosBarrer los 65535 puertos.Uso de distintos protocolosOptimización de tiempoDetección de reglas de firewallEscáner de puertos
Ejemplo Nmap
Fase 3 – Análisis de vulnerabilidades.
Versiones antiguasFalta de parchesErrores de configuraciónConfiguraciones por defectoUsuarios y contraseñas débilesDetección de vulnerabilidades
Análisis de vulnerabilidadesProceso de detección de vulnerabilidades automáticamente:Banco de pruebas muy elevado.
Ahorro en coste/tiempo
Falta de control
Número elevado de falsos positivos
Denegación de ServicioTenableNessusOpenVASGFI LanguardSAINTQualysGuardRapid7 NexposeeEye RetinaFoundstonenCircle IP360SkyboxSecuresolutionGideonSecureFusionProductos
Ejemplo Nessus
Ejemplo AppScan
Fase 4 – Explotación.
Objetivos:Eliminación de falsos positivos.
Obtención de evidencias
Salto a la red interna y/o entre servidores
Muestra el impacto realPrecauciones:Caída del servicio
Caída del sistema
Inestabilidad de los servicios

Pentesting

  • 1.
  • 2.
  • 3.
    Método para evaluarla seguridad de un sistema o red de sistemas de información simulando el ataque por un intrusoTest de intrusión
  • 4.
    Parte por lanecesidad de comprobar cual es el impacto real de una vulnerabilidad mediante la realización de pruebas controladas.Que no se diagnostique una enfermedad no significa que no exista, se busca la detección de vulnerabilidades no conocidas.¿Por qué realizar un Test de intrusión?
  • 5.
    Auditoría de vulnerabilidades:Cuantificay clasifica vulnerabilidades y recomendacionesEncuentra el 100% de las vulnerabilidades conocidasTest de intrusión:Detecta algunas vulnerabilidades conocidas y algunas desconocidasDescribe y demuestra el impacto asociado a las vulnerabilidades detectadas.Diferencias entre Test de Intrusión y Auditoría de vulnerabilidades
  • 6.
    Ataque: lo queafecta a la Autenticidad, Confidencialidad, Integridad, Disponibilidad, o Auditabilidad (ACIDA)ActivoModifica el sistemaAltera la integridad o disponibilidadEjemplos: explotar una vulnerabilidad, descargar una base de datos.PasivoNo modifica los sistemasIntercepta informaciónAfecta a la confidencialidadEjemplo: escucha de paquetes en la redTipos de ataque
  • 7.
    ExternoEjecutado desde fueradel perímetro de seguridad.Ejemplo: InternetInternoCon más privilegios de acceso en la redEjemplo: empleado, cliente, proveedor, conexión wirelessÁmbitos de pruebas
  • 8.
    ¿Dónde?Capa de aplicaciónAnálisisde visibilidadAuditoría de código fuente (J2EE, C, ASPX, PHP…)Auditoría de aplicaciones web y web servicesAuditoría de Servicios (BBDD, WEB, Correo, etc)Auditoría de sistemas OperativosCapa comunicacionesTestDei ntrus iónAuditoría entornos inalámbricos: WiFi, BT, RFIDAuditoría Accesos remotos: Wardialing, VPNAuditoría Elementos de red: routers, switchesAuditoría Elementos de seguridad: FW, IDS, SEIMCapa físicaIngeniería SocialDumpsterDiving
  • 9.
    Se genera unrequerimiento de propuestas (requestforproposal)Proveedores responden con sus ofertasSe acepta una de ellasReunión de arranqueEjecuciónCierre de proyectoAsí nace, así muere
  • 10.
    FasesFase 0.ArranqueProyectoFase I.Testde IntrusiónExternoFase IV. Cierre de Proyecto Fase III. ResultadosFase II.Test de Intrusión InternoGestión ProyectoDb.Recopilación InformaciónA. Reunión ArranqueDa. Recopilación InformaciónH. Informe técnicoJ. Presentación de ResultadosB. Planificación de pruebasK. Reunión de Cierre de ProyectoEb. EnumeraciónEa. EnumeraciónI. Informe EjecutivoFa. AnálisisFb. AnálisisL. Aceptación de hitos y finalización de proyectoC. Reuniones SeguimientoFb.1 InfraestructuraFa.1 InfraestructuraFb.2 Sistema OperativoFa.2 Sistema OperativoFb.3 ServiciosFa.3 ServiciosFb.4 AplicacionesFa.4 AplicacionesGb.Obtención de evidenciasGa.Obtención de evidencias
  • 11.
    Ámbito / AlcanceNivelde informaciónCaja BlancaCaja NegraAutorización de trabajohttp://www.counterhack.net/permission_memo.htmlObjetivos de auditoría¿Ingeniería social?¿Pruebas (exploits) peligrosos?Antes de empezar
  • 12.
  • 13.
  • 14.
    ISECOM OSSTMM 3.0http://www.isecom.org/OWASPhttp://www.owasp.orgNISTSP 800-42 (Security Testing), 800-115http://csrc.nist.govMetodologías
  • 15.
    Fase 1 -Obtención de información.
  • 16.
    Primera fase deltest de intrusiónEsencial para elaborar un ataque sofisticado posteriorNo intrusivo, la entidad no debe detectarloRecopilar mayor cantidad de información publica:Introducción
  • 17.
    Objetivo: encontrar nuevoshosts y aplicaciones webIdentificar otros dominios alojados en una misma dirección IP (virtual vost)Se consultan todas las direcciones IP en buscadoresBing.com permite “IP:<ip>”Online:http://www.serversniff.net/hostonip.phphttp://www.myipneighbors.comhttp://www.domaintools.com/reverse-ip/http://whois.webhosting.info/Ejemplo: dominios virtuales
  • 18.
  • 19.
  • 20.
    Fase 2 –Enumeración.
  • 21.
    A veces incluidodentro de fase de obtención de información (activo)Identificar las versiones y los servicios que ofrece cada dirección IPIdentificación de sistemasoperativos, elementos de red, etcétera.Identificación de reglas en firewallsDescartar sistemas que no ofrezcan servicios (IPs sin uso)Enumeración
  • 22.
    Objetivo: descubrir losservicios activosBarrer los 65535 puertos.Uso de distintos protocolosOptimización de tiempoDetección de reglas de firewallEscáner de puertos
  • 23.
  • 24.
    Fase 3 –Análisis de vulnerabilidades.
  • 25.
    Versiones antiguasFalta deparchesErrores de configuraciónConfiguraciones por defectoUsuarios y contraseñas débilesDetección de vulnerabilidades
  • 26.
    Análisis de vulnerabilidadesProcesode detección de vulnerabilidades automáticamente:Banco de pruebas muy elevado.
  • 27.
  • 28.
  • 29.
    Número elevado defalsos positivos
  • 30.
    Denegación de ServicioTenableNessusOpenVASGFILanguardSAINTQualysGuardRapid7 NexposeeEye RetinaFoundstonenCircle IP360SkyboxSecuresolutionGideonSecureFusionProductos
  • 31.
  • 32.
  • 33.
    Fase 4 –Explotación.
  • 34.
  • 35.
  • 36.
    Salto a lared interna y/o entre servidores
  • 37.
    Muestra el impactorealPrecauciones:Caída del servicio
  • 38.
  • 39.
  • 40.
    Obtención de informaciónconfidencialRevisión del alcance y autorización de trabajosIntroducción!
  • 41.
    Código que explotauna vulnerabilidad en beneficio del que la ejecutaCategorías:Exploits de servicio - Server sideExploits en el cliente - ClientsideEscalada local de privilegiosFrameworksCódigos independientesExploits
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
    Fase 7 –Documentación.
  • 47.
    Resumen ejecutivo yconclusionesIntroducciónMetodologíaProceso de intrusión, vulnerabilidadesCriticidades, recomendaciones, evidenciasApendicesEstructura de informes
  • 48.