pentesting

¿Por qué es necesario hacer Pentesting en una empresa?

El propósito de una prueba de Pentesting es ayudar a las empresas a buscar cuáles son sus puntos débiles, los cuales podrían haber pasado inadvertidos, facilitando por tanto el ataque de un ciberdelincuente.

Aspectos típicos para evaluar:

  • Desviaciones de las buenas prácticas:
    • Configuración de sistemas
    • Mantenimiento de sistemas
    • Diseño y codificación segura de software.
  • Carencias en la concienciación por parte del personal.

 

virtual soc dexeus mujer

Tipos de Auditoría y métodos de realización

Dependiendo de la visión que un atacante disponga de los sistemas podemos diferenciar 3 tipos de auditoría:

  • Caja blanca (White Box):

El auditor realiza el testeo conociendo la totalidad de la información sobre el entorno informático: contraseñas, códigos, IP, Firewall, logins, etc.  Es el análisis más completo.

  • Caja Negra (Black Box):

Se realiza el testeo desde cero, sin ningún conocimiento acerca del sistema.

  • Caja Gris (Grey Box):

Es una técnica mixta que combina las dos anteriores, generalmente se disponen las credenciales de un usuario no privilegiado y se intenta vulnerar los controles aplicados a dicho usuario, en busca de obtener accesos con mayores privilegios.

En cuanto a los métodos de realización de este tipo de pruebas podemos diferenciarlos en dos métodos:

  • Pentest automatizado, donde es una máquina la que realiza íntegramente la verificación.
  • Pentest manual, donde prima la experiencia del auditor en conjunto con múltiples herramientas, algunas de ellas automatizadas.

 

Limitaciones y beneficios de un pentests manual

  • Permite una mayor calidad de resultados que, de otro modo, podrían pasar desapercibidos por métodos completamente automatizados.
  • Simulación de ciertas casuísticas o ciertos ataques sin los riesgos que conllevan habitualmente, teniendo en cuenta todos los factores que podrían causar un impacto en los sistemas al ser atacados, según la experiencia del auditor.
  • Es más lento que un pentest automatizado.

 

Un beneficio de una prueba manual es que se pueden identificar falsos positivos y que, con la experiencia, es muy fácil detectar vulnerabilidades y/o errores de configuración. También con la variedad de tecnologías que existen hoy en día es imposible crear un escáner universal.

Otro beneficio es la verificación en profundidad de vulnerabilidades habituales (o no).  Esto se hace contando con la habilidad y creatividad del auditor, así como con un conjunto de herramientas tanto preexistentes como otras creadas por el auditor para un determinado caso.

Esto aporta un detalle exhaustivo del estado de vulnerabilidad de los sistemas para ser remediado.

 

Limitaciones y beneficios de los pentests automatizados

  • Son rápidos en su ejecución, pudiendo cubrir un número elevado de activos en poco tiempo.
  • Permiten simulación de ejecución de malware entre otros, para determinar el impacto de un ataque de este tipo, pero sin correr riesgos innecesarios.
  • Sólo pueden llegar a un cierto punto. Al basarse en un conjunto de ataques limitado, podrían dejar de lado vulnerabilidades que en un pentest manual se habrían descubierto sin problema, al carecer de la creatividad y lógica necesarias para buscar problemáticas nuevas.

 

Todos los pentests automatizados tienen otras limitaciones. Por ejemplo, en un Pentest manual se pueden llegar a conseguir archivos en directorios, ftp o smb públicos, recopilando información existente en ficheros como parte de la información para realizar un ataque posterior (véase la localización de puntos de entrada que existieran en el código, usuarios válidos, entre otros de interés), lo cual no podría realizar una máquina.

Otro ejemplo en el que sería más efectivo el acercamiento manual es en la detección de vulnerabilidades SQLi mediante herramientas automatizadas comparado con la detección manual. Esto es debido a que las herramientas automatizadas se basan en inyección de patrones fijos y, sin embargo, un pentester realiza dicho trabajo creando su propia secuencia de comandos mediante la técnica de tanteo, su experiencia y paciencia, siendo mucho más eficaz en la detección.

fraude del ceo

 

Tipos habituales de pentest

 

PENTEST WEB

Este Pentest es un proceso que evalúa el sistema web, incluyendo el núcleo, las extensiones, los temas y otras infraestructuras en busca de vulnerabilidades e información de interés para un atacante.

Una auditoría de seguridad web completa normalmente implica el análisis de código estático (análisis del código fuente en busca de patrones que se saben causan problemas de seguridad) y dinámico (pruebas en ejecución, en busca de errores de lógica, configuraciones problemáticas, etc.).

Tras esta, se obtendrán todas las vulnerabilidades ocultas en su sitio web y la infraestructura de seguridad.

Las pruebas de penetración no son otra cosa que emular a un hacker en una situación de ataque real, procediendo a explotar las vulnerabilidades, con el fin de encontrar el riesgo asociado a cada una de ellas.

Las auditorías de seguridad más fiables hacen uso tanto de herramientas automatizadas como de la perspicacia humana.

 

AUDITORÍA DE CÓDIGO

Es el proceso de verificación manual de una aplicación web para temas de seguridad, ya que este tipo de Pentest no se puede detectar con ningún otro tipo de análisis.

Aquí entran muchos errores sin intención pero que son un gran problema de seguridad y que son muy difíciles de encontrar.

Este es el Pentest para el cual se necesita más experiencia como programador, ya que hay que leer detalladamente y entender cómo funciona la aplicación que se nos ha dado a auditar. Esto también tiene muchos beneficios ya que se haría una limpieza de código (el uso de buenas prácticas).

 

PENTEST INTERNO

Este es el pentest que se hace dentro de la infraestructura de la empresa. Normalmente es un Pentest de Caja negra y sobre el directorio activo de Windows, en el cual existen diversidad de ataques muy interesantes con los cuales tenemos que escalar desde un usuario sin privilegios al administrador del dominio. Esto simularía un ataque en la vida real en el cual el atacante, teniendo acceso a un usuario administrador del dominio, puede desplegar un ransomware y así pedir un rescate por la liberación de todos los equipos conectados al Doman Controller.

 

PENTEST WIFI

Consiste en analizar las vulnerabilidades que presentan los dispositivos (tanto el router Wi-Fi como el resto de los dispositivos conectados a la WLAN) y el estudio de la posibilidad de llevar a cabo su explotación.

En la metodología que se sigue en un Pentesting Wi-Fi, una vez que el atacante ha conseguido hackear la contraseña del punto de acceso inalámbrico y conectarse a la red Wi-Fi, el siguiente paso es hacer el fingerprinting de todos los dispositivos conectados a ella para identificar su sistema operativo, su versión, los puertos que están abiertos y los servicios que se están ejecutando. Con toda esta información, el atacante identifica después las vulnerabilidades detectadas y lleva a cabo su explotación.

 

AUDITORÍA DE APLICACIONES MÓVILES

Las aplicaciones móviles no se salvan de todo tipo de vulnerabilidades, tanto en su api y Backend como en el código de la propia aplicación, dónde se buscará descubrir puntos de ataque posibles y explotarlos, en todas las partes que forman la aplicación y su servicio.

 

RFID y NFC

El hacking de RFID se produce cuando un hacker utiliza un dispositivo para reescribir o copiar la información almacenada en un chip o etiqueta de identificación por radiofrecuencia (RFID). Los ciberdelincuentes pueden atacar los chips RFID para robar los números de las tarjetas de crédito, las credenciales de las tarjetas de seguridad para acceder a los edificios, la información de los pasaportes, los permisos de conducir, etc.

 

AUDITORÍAS DE INGENIERÍA SOCIAL

Las pruebas de ingeniería social están diseñadas para comprobar la adhesión de los empleados a las políticas y prácticas de seguridad definidas por la dirección.

Las pruebas deben proporcionar a la empresa información sobre la facilidad con la que un intruso podría convencer a los empleados para que rompan las normas de seguridad o divulguen o den acceso a información sensible.

La empresa también debería comprender mejor el éxito de su formación en materia de seguridad y el nivel de seguridad de la organización en comparación con sus homólogas.

 

INGENIERÍA SOCIAL: PHISHING

El phishing es una forma de ingeniería social. Los ataques de phishing utilizan el correo electrónico o sitios web maliciosos para solicitar información personal haciéndose pasar por una organización de confianza. Por ejemplo, un atacante puede enviar un correo electrónico aparentemente desde una compañía de tarjetas de crédito o institución financiera de buena reputación que solicita información de la cuenta, a menudo sugiriendo que hay un problema. Cuando los usuarios responden con la información solicitada, los atacantes pueden utilizarla para acceder a las cuentas.

 

INGENIERÍA SOCIAL: ATAQUES CON USB

USB dropping: Un ataque de USB dropping se produce cuando un atacante coloca estratégicamente un dispositivo USB que puede contener código malicioso, con la intención de que alguien lo coja y lo conecte a un ordenador.

Este tipo de ataque emplea el uso de la ingeniería social, tanto para la ubicación del dispositivo en algún sitio visible para las personas objetivo, el nombre de los ficheros del dispositivo, para incitar a su apertura y compromiso de la máquina, etc.

 

INGENIERÍA SOCIAL: OTROS

Este campo es tan grande como la imaginación humana. Muchas son técnicas y medios utilizados, algunos de ellos se han utilizado desde que la humanidad existe, pero en nuestro caso adaptados a los nuevos tiempos, así como otros métodos modernos y más elaborados.

 

Metodologías de test de intrusión

Existen multitud de estándares que facilitan diferentes partes de un pentest, en cuanto a su calidad de resultados. A continuación, se listarán los más utilizados:

 

OWASP

Es un proyecto que se desarrolló durante muchos años.

El objetivo del proyecto es ayudar a las personas a comprender qué, por qué, cuándo, dónde y cómo probar aplicaciones web.

En realidad, tiene un enfoque mucho más amplio, tratando aspectos de seguridad en todo el ciclo de vida del aplicativo, pero en cuanto a pentest existe una sección dedicada, que es la que se suele utilizar.

El proyecto proporciona un marco de prueba completo, no solo una simple lista de verificación o prescripción de problemas que deben abordarse.

Este proyecto analiza anualmente la evolución de los ataques clasificándolos por su naturaleza, publicando un listado de las vulnerabilidades más atacadas, llamado TOP 10 de OWASP, que suele ser la base para casi cualquier pentest web en la actualidad.

 

ISSAF

La metodología de test de penetración ISSAF está diseñada para evaluar su Red de trabajo, sistema y control de aplicaciones.

Consta de tres fases y nueve pasos de evaluación:

  • Planificación y Preparación
  • Evaluación
  • Reportes, Limpieza y Destrucción de Objetos

 

OSSTMM

El Manual de Metodología de Pruebas de Seguridad de Código Abierto (OSSTMM) proporciona una metodología para pruebas de seguridad exhaustivas.

Una auditoría OSSTMM es una medición precisa de la seguridad a nivel operacional que está libre de suposiciones y pruebas anecdóticas.

Como metodología está diseñada para ser consistente y repetible.

 

virtual soc dexeus mujer

 

La apuesta de Open3s

En nuestros días, no es suficiente con disponer de un buen proceso de gestión continua de la vulnerabilidad, basado en herramientas de análisis de vulnerabilidades automatizadas, dado que es seguro que múltiples vulnerabilidades escaparán su escrutinio, por lo que cada día es más imprescindible realizar ejercicios periódicos de pentest lo más cercanos a lo que un atacante podría realizar, cubriendo las diferentes zonas de exposición, no centrándose siempre en una de ellas.

Cuando las necesidades de auditoría se vuelven continuas, existen diferentes herramientas automatizadas de pentest que podrán complementar a un pentest manual, lo bueno de estas herramientas es que se podrán tener los resultados del impacto de cualquier vulnerabilidad nueva a diario si así se desea, por su velocidad de análisis, con el consecuente beneficio en cuanto a visibilidad del área de exposición real de la compañía.

No olvidemos al eslabón más débil de la cadena, que es el factor humano, por lo que se torna casi imprescindible realizar sondeos de ataques de ingeniería social, tales como campañas de phishing y eventos formativos basados en los resultados de este tipo de campañas, entre otros. Si quieres saber más acerca de cómo trabajamos en Open3s, contacta con nosotros.

 

Autor: Mario Guglia, Cyber Security Consultant.