Sistemas

Pentesting con OWASP: fases y metodología

7 Mins de lectura

Llamamos “pentest” o test de intrusión a una prueba de seguridad ofensiva que simula un ciber ataque real en un entorno controlado. El objetivo principal de este tipo de pruebas es identificar las posibles brechas en la seguridad de un sistema de manera que, al simular el comportamiento de los atacantes reales, podamos descubrir vulnerabilidades y agujeros de seguridad que necesiten ser corregidos para que no sean explotados por parte de atacantes reales.

A la hora de buscar vulnerabilidades durante un pentest se deben cubrir todas las partes posibles de un sistema teniendo en cuenta qué métodos de intrusión van a usar los atacantes.

Los métodos de intrusión más habituales utilizados por atacantes son:

  • Instalación de Malware, virus, troyanos o keyloggers.
  • Explotación de puertas traseras.
  • Acceso a los sistemas aprovechando una mala configuración.
  • Utilizar técnicas de ingeniería social para “colar” archivos no deseados o abrir puertas traseras.

Los test de intrusión son una forma de hacking ético en la que no se actúa al margen de la ley ya que existen límites legales que son pactados entre la entidad u organización que solicita este tipo de servicios y la empresa que los realiza.

El objetivo de un pentesters es “entrar en tu casa” y “meterse hasta la cocina” pasando por cada una de las habitaciones de tu casa. Descubrir cómo está todo distribuido, si tienes dobles ventanas, si dispones de suelo radiante, de ver los diferentes tipos de dispositivos informáticos de tu hogar, de ver hasta lo que tienes guardado en un cajón que nadie de tu hogar sabia excepto tu.

De esta manera podemos mostrar el destrozo que los ciberdelincuentes podrían llegar a causar a una compañía y arreglar esas vías de entrada para que eso no ocurra.

Principalmente esto es lo que distingue un Pentest de una auditoria.

El pentesting no solo detecta las brechas en la seguridad o sus correspondientes vulnerabilidades, sino que las explota. Muestra las posibles formas de acceso a una compañía, haciéndonos pasar por ciberdelincuentes para así poder corregir las brechas encontradas y explotadas.

Es imprescindible estar al día en cuestiones tecnológicas. Un pentest es una terapia de choque a las compañías para entender mejor la situación actual de su negocio y de lo que pueden llegar a perder si el ataque hubiera sido real.

Es importante invertir en un test de intrusión programado ya que, como se suele decir, las auditorías o te las haces o te las hacen.

Fases de un pentesting

Reconocimiento

Fase principal en la que recolectamos toda la información posible, usando diferentes técnicas como:

  • Recopilación de dominios/IPs/puertos/servicios
  • Recopilación de metadatos
  • Uso de Google Dorks
  • Recopilación de información gracias a servicios de terceros

Analisis de vulnerabilidades

En esta fase analizaremos la información recopilada en la fase anterior y el descubrimiento de las vulnerabilidades. Con la información que tenemos intentaremos buscar CVEs (Common Vulnerabilities and Exposures) conocidos y/o fáciles de explotar

Explotación

La fase de explotación consiste en realizar todas aquellas acciones que puedan comprometer al sistema auditado, a los usuarios o a la información que maneja. Principalmente se comprueba que no se puedan realizar ataques tipo:

  • Inyección de código
  • Inclusión de ficheros locales o remotos
  • Evasión de autenticación
  • Carencia de controles de autorización
  • Ejecución de comandos en el lado del servidor
  • Ataques tipo Cross Site Request Forgery
  • Control de errores
  • Gestión de sesiones
  • Fugas de información
  • Secuestros de sesión
  • Comprobación de las condiciones para realizar una denegación de servicio
  • Carga de ficheros maliciosos

Estos tipos de ataques se realizan adecuando el desarrollo de cada ataque, técnicas en uso y las últimas tecnologías disponibles adaptadas para conseguirlo.

Post explotación

En caso de encontrarse una vulnerabilidad que permita realizar otras acciones en el sistema auditado o en su entorno, se realizarán controles adiciones con el objetivo de comprobar la criticidad de esta.

En función de las posibilidades que permita una vulnerabilidad concreta, se intentarán realizar las siguientes acciones de post-explotación:

  • Obtención de información confidencial
  • Evasión de mecanismos de autenticación
  • Realizar acciones del lado de los usuarios
  • Realizar acciones o ejecutar comandos en el servidor que aloja la aplicación
  • Privilegios disponibles en el servidor, si se consigue acceso al mismo
  • Otros sistemas o servicios accesibles desde la aplicación comprometida
  • Posibilidad de impersonalización del usuario
  • Realizar acciones sin el consentimiento o conocimiento de los usuarios

La posibilidad de encadenar varias vulnerabilidades para conseguir un acceso de mayor nivel o para evadir los controles de seguridad también serán escenarios valorados a la hora de realizar el análisis de riesgos.

Informes

La última parte de un test de intrusión será siempre realizar un resumen informativo (esto es un documento de cómo ha ido el test de intrusión) donde se incluirán todas las vulnerabilidades encontradas y las exposiciones que podrían aprovechar los atacantes.

También se debe incluir un documento donde se recopile todo lo obtenido en la prueba. Podemos considerarlo una muestra de la información que podría haber sido recopilada por un atacante.

Por último, debe constar, si se ha pactado previamente, un documento de contramedidas para resolver (o mitigar) en medida de lo posible estos problemas.

Modalidades de Pentest

Caja Negra

Esta modalidad consiste en no tener conocimiento de la infraestructura de un cliente. A la hora de realizar un pentest, no se dispone de información al respecto. Esta modalidad es la que simula un ataque desde el exterior por parte de un atacante sin conocimiento sobre el sistema a atacar.

Caja Blanca

Previamente la entidad que requiere el test de intrusión nos ha facilitado al detalle las tecnologias, codigo fuente, cuentas de usuario de todo tipo, arquitectura y otros detalles del objetivo. Esta modalidad es la que simula un ataque interno por parte de un miembro de la entidad que conoce a la perfección cómo está estructurado el sistema objetivo.

Caja Gris

En esta última modalidad, y no menos importante, se dispondra de cierta información parcial del objetivo, como cuentas legitimas, información de ciertas tecnologias que sean necesarias de evaluar, dominios o cualquier otro tipo de información valiosa que nos proporcione la compañía. Se diferencia de la Caja Blanca en el nivel de conocimiento y profuncidad del mismo que proporciona la entidad. Esta modalidad híbrida es la que simula un ataque con un relativo conocimiento de la situación como el que podrían llevar a cabo un cliente o un competidor.

Metodologías utilizadas

En el equipo de Ciberseguridad en Hiberus utilizamos varias metodologías. Una muy usada en el sector es la metodología llamada OWASP TOP 10 –2021, OSINT, OSSTMM.

Open Web Application Security Project (OWASP) es una organización sin ánimo de lucro a nivel mundial dedicada a mejorar la seguridad de las aplicaciones y del software en general.

La metodología OWASP se divide en 2 fases:

Una fase pasiva donde se realizan pruebas hasta comprender la lógica de la aplicación que está en fase de auditoría. Analizar si arroja elementos que signifiquen vulnerabilidades abiertas para su análisis en profundidad.

Y una fase activa donde el auditor prueba todos los procesos recomendados en la metodología, siguiendo una metodología estándar de Ethical Hacking.

El actual OWASP TOP 10 –2021 establece los siguientes riesgos más graves dentro de las aplicaciones, que serán probados en la auditoria.

 

 

La imagen muestra la evolución de la metodología a lo largo de los años. Actualmente la implementada por el organismo OWASP es la siguiente:

  • A1: Control de accesos destruidos: Generalmente accesos dados por permisos inadecuados a usuarios que no deberían tenerlos.
  • A2: Fallos criptográficos: Podemos encontrar diversas vertientes, debilidades en cifrados de datos fácilmente calculables por parte de los atacantes, errores en cifrado que dejan en limpio la lectura de los datos y finalmente, la exposición de los datos dadas determinadas operaciones de tránsito entre distintas entidades o personas.
  • A3: Inyección: Ataques a Bases de Datos a través de inclusión de un comando o consultas ejecutadas en el intérprete, como resultado obtenemos la extracción de resultados y exposición de datos que no deberían ser públicos ni visibles al exterior.
  • A4: Diseño inseguro: Diseños de arquitecturas e infraestructuras inadecuadas a nivel de hardware, posible generación de túneles directos a las redes internas.
  • A5: Desconfiguración de la seguridad: la no correcta configuración de políticas de permisos conlleva la exposición de ventanas y registros de información al exterior.
  • A6: Componentes Vulnerables y Obsoletos: es recomendable conocer si hay actualizaciones de nuestros dispositivos electrónicos para solventar posibles brechas genéricas que pueden ser fácilmente corregidas si se mantiene una política de actualizaciones de software y firmware al día.
  • A7: Fallos de identificación y autenticación: dentro de esta categoría que está relacionada directamente con criptografía A2, podemos incluir ataques automatizados de fuerza bruta por diccionario, exposición de contraseñas por su debilidad morfológica y fallos por no implementar factores de doble autenticación.
  • A8: Fallos de integridad de Software y Datos: incluimos dentro de estos fallos, aplicaciones o páginas web que no utilizan certificados oficiales o bien no han sido aprobadas por empresas certificadoras oficiales, se debe establecer una cadena de integridad del producto que permita desde la primera ejecución de una aplicación o código la imposibilidad de ejecución de malware o scripts en segundo plano.
  • A9: Fallos en el registro y supervisión de la seguridad: escalamos dentro de esta categoría la no detección mediante políticas y herramientas preventivas a nivel interno que permitan monitorizar vulnerabilidades dentro de una organización o empresa.
  • A10: Server-Side Request Forgey: estas amenazas son factibles debido a la no utilización de protocolos HTTPS, DNS y URLS no seguras (incluyendo URLS acortadas), su mitigación es posible desde la capa de red mediante políticas correctas en el firewall.

Desde el departamento de Ciberseguridad de Hiberus Sistemas podemos ayudarte a securizar tu infraestructura para que tus datos estén seguros.

 

 

2 posts

Sobre el autor
Responsable del equipo de Ciberseguridad de Hiberus Sistemas.
Artículos

PROTEGEMOS TU COMPAÑÍA FRENTE A LAS CIBERAMENAZAS

En Hiberus Sistemas contamos con más de 20 años de experiencia ofreciendo las últimas soluciones tecnológicas con los niveles más altos de seguridad.

Te guiamos de manera segura a través de cada fase de su transformación digital y te ayudamos a mejorar tu estrategia de seguridad.

¿Te ayudamos?

Artículos relacionados
Sistemas

Los estándares de calidad del software más importantes

6 Mins de lectura
El objetivo de todas las empresas y profesionales es ofrecer productos y servicios de calidad que se ajusten a las expectativas de…
Sistemas

Qué es Varnish Caché y por qué debes usarlo para optimizar tu servicio web

5 Mins de lectura
¿Qué es Varnish Cache? Varnish es un acelerador de aplicaciones web. En otras palabras: un proxy inverso de cacheo HTTP que actúa…
Sistemas

¿Por qué es necesario un análisis forense en Ciberseguridad?

4 Mins de lectura
Generalmente cuando oímos la palabra forense nuestro cerebro la asocia a una rama de la medicina, más concretamente y haciendo un esfuerzo,…

Deja una respuesta

Tu dirección de correo electrónico no será publicada.