Podcast – 27 – Pentesting

El pentesting es un tipo de ataques a un sistema en búsqueda de localizar, y explotar, vulnerabilidades de un sistema informático. Así pues los pentester buscan debilidades para ‘penetrar en el sistema’ (de ahí el nombre).

pentesting

PENTESTING. Fuente imagen:Cuculmeca

Lo primero indicar que en España realizar este tipo de ataques es ilegal salvo que lo hayas acordado con el propietario del sistema. Así que si cuidado con lo que hacemos… que puede tener consecuencias 😉
Cuando se contrata un pentesting tanto la empresa «víctima» como el analista acuerdan diferentes puntos (qué se puede atacar exactamente, qué técnicas, el horario de los ataques, si se permite tirar el servicio o no se puede provocar DoS), etc. Esto debe aclararse y firmarse por escrito antes de empezar este tipo de consultorías para evitar futuros problemas legales.
Los tipos de ataque de pentesting se categorizan por:

  • De «caja negra» donde el consultor externo no conoce nada del sistema a atacar (sólo la dirección web, ). Se utiliza este tipo de análisis para simular al máximo la situación real en la que un atacante externo quisiera entrar en nuestro sistema. Este tipo de ataque requiere de especialistas más formados y la validez de este resultado depende en gran medida de la capacidad del auditor.
  • De «caja blanca» donde el auditor externo tiene acceso a toda la información sobre la aplicación(arquitectura, servicios usados e incluso el código fuente). El análisis puede ser mucho más profundo y permite preparar y diseñar pruebas específicas de tal forma que se obtenga un resultado más fiable y auditable por un tercero externo.
  • Las de «caja gris» son un punto intermedio entre las dos anteriores donde el atacante recibe parte de la información pero no toda(p.e. tiene el diseño lógico de la aplicación pero desconoce el sistema operativo de los servidores).

Si bien se han desarrollado diferentes metodologías que han buscado unificar y procedimientar este tipo de ataque (sobretodo de cara a la aplicación de normativas y estándares) siendo los más famosos Kill-Chain (una metodología de origen militar), OSSTMM, ISSAF, la guía OWASP (únicamente de aplicaciones web) o la Penetration Testing Framework; la verdad es que el pentesting sigue siendo un proceso manual que depende en gran medida de la experiencia previa, capacidad y pericia del auditor.

Micro con feed

Fuente imagen:PerfectYourPodcast

Aunque todas las metodologías mencionadas antes tienen diferencias podemos decir que en todas tendrían, de una forma u otra, las siguientes fases:

  1. Preparación
    Esta sería una fase teórica de preparar los equipos, tanto hardware como software y equipos humano para realizar el ataque. También se puede incluir en esta fase la negociación del alcance y objetivo de la auditoria con el cliente.
  2. Recopilación de información
    En esta fase el atacante busca obtener la máxima cantidad de información posible del objetivo. Se pueden utilizar métodos pasivos o activos, búsqueda de información pública (dominios, URL, servicios publicados, direcciones físicas, noticias de empresa [si hay una noticia de que la empresa víctima usa Office365 y tenemos una pista para empezar], etc.). El atacante también obtendrá información con acciones activas como pueden ser un escaneo de puertos o consultas DNS.
    Esta fase es probablemente la menos técnica y divertida pero es la base imprescindible para las siguientes fases.
  3. Análisis de vulnerabilidades
    Una vez obtenida toda la información posible toca buscar las debilidades de los sistemas a analizar. Como se puede obtener las técnicas y estrategias usadas serán diferentes en función del objetivo a analizar: no tendrán las mismas vulnerabilidades una aplicación web que los servidores FTP o de correo corporativo. En función del alcance del ataque (que siempre hay que aclarar antes de empezar) los objetivos y estrategias variarán.
    Esta es la fase donde la calidad del auditor destaca especialmente.
  4. Explotación de vulnerabilidades
    En esta fase, una vez localizada la vulnerabilidad se procede a su aprovechamiento de tal forma que se demuestre la viabilidad del ataque y por ende la posibilidad de intrusión exterior. Esta es probablemente la fase más delicada ya que puede implicar la pérdida de servicio por parte del cliente o la extracción de información confidencial (para demostrar que se ha podido acceder). Nuevamente recordar que antes de lanzar un pentest hay que negociar con el cliente qué se puede/debe hacer y cuáles serán las pruebas que demuestren que el atacante ha podido entrar.
  5. Documentación
    El último, e imprescindible paso, es documentar de forma clara y con las pruebas obtenidas en la explotación de las vulnerabilidades de tal forma que se demuestren los problemas y se pueda informar al cliente de cuáles son y qué debe hacer para remediarlos.

Descarga directa.

Un comentario en “Podcast – 27 – Pentesting

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *