Menu

Pentesting para dummies

¿Sabes qué es un test de penetración? No es nada sexual, sino un proceso para encontrar cómo de vulnerable es un sistema informático por lo fácil que es penetrarlo.

Es posible que a la hora de informarte sobre lo que es el “pentesting”, “test de intrusión”, “pentest”, “auditoría de seguridad informática”, “Red Team” te hayan surgido dudas sobre en qué se diferencian y en qué consisten. En este artículo te voy a ayudar con el jaleo mental dando una pincelada sobre lo que es el pentesting.

Una píldora sobre el pentest

Pentest, test de intrusión, prueba/test de penetración y hacer pentesting son diferentes formas de referirse a lo mismo. El término pentesting (unión de penetration testing) que en español se traduce como test de penetración o de intrusión, es el proceso llevado a cabo utilizando técnicas de hacking ético para simular lo que haría un ciberatacante para comprometer una empresa u organización vulnerando la confidencialidad, integridad y disponibilidad de sus sistemas o servicios.

"Una prueba de penetración es un proceso que es a la vez complejo y delicado. Se tiene que revisar minuciosamente los sistemas objetivo para identificar agujeros de seguridad significativos que pongan en riesgo la seguridad de una compañía u organización y la de sus usuarios y usuarias."

Un ejemplo de lo que se puede hacer durante el pentest: utilizar una vulnerabilidad en un servicio desactualizado expuesto en redes públicas como vector de ataque para traspasar a la red interna de una empresa. Otras pruebas comunes pueden ser búsqueda de posibles vías para la fuga de información interna, pruebas de stress DoS/DDoS (sin recurrir al uso de una botnet puesto que se trata de un método ilegal), comunicaciones Wireless y VoIP y analizar si los privilegios están bien configurados dependiendo del rol del usuario o usuaria dentro de la empresa.

Es importante destacar lo siguiente:

  • En el momento de llevar a cabo una prueba de intrusión, se debe garantizar que la actividad tendrá el menor impacto posible en los sistemas de producción y en los servicios de la empresa. Si el pentest se va a llevar a cabo en la nube es importante tener en cuenta las reglas de interacción en componentes de Microsoft Cloud o de otros proveedores.
  • Estas pruebas se tienen que abordar a través de un proceso estructurado, es decir, siguiendo una sucesión de pasos que aseguren que cada potencial vulnerabilidad sea comprobada y de manera ágil (esto es fundamental porque, debido a la complejidad de algunos sistemas, podemos perder la cabeza si no seguimos una metodología y pasar por alto vulnerabilidades relevantes).

Las fases de una prueba de penetración son las siguientes:


Como habrás observado en el esquema anterior, el pentest es un proceso cíclico, esto quiere decir que en el momento en el que se ha explotado una vulnerabilidad y se ha conseguido acceso a otro sistema, el proceso vuelve a empezar con la fase de recopilación de información. El ciclo se repite hasta que ya no hay más sistemas y servicios (dentro del alcance previamente indicado por la empresa) por evaluar y explotar o hasta que no se encuentren más vulnerabilidades que nos permitan seguir avanzando (¡esto también es positivo!).

Tras la entrega del informe a la empresa u organización se determina un tiempo para que el equipo técnico responsable pueda corregir las vulnerabilidades detectadas y, posteriormente, se vuelven a evaluar los mismos sistemas para verificar que se han corregido correctamente. El objetivo de este paso es el de asegurar que los sistemas tienen la máxima seguridad posible. Después, lo recomendable es realizar pruebas de intrusión periódicamente debido a que constantemente surgen nuevas técnicas de ataque y vulnerabilidades que puedan afectar a los sistemas.

Tipos de pruebas de penetración

Dependiendo de en qué sistemas se quiera hacer la prueba y qué roles se quiera simular, se puede realizar un tipo u otro de test de intrusión: caja, negra, caja gris o caja blanca.

Caja negra

Este tipo de prueba implica que la persona que realiza el pentest tiene el rol de un ciberatacante que no tiene ningún conocimiento previo sobre el funcionamiento de los sistemas y servicios de la empresa u organización. En la fase de recopilación de la información, las personas encargadas del test de penetración se encargarán de buscar en fuentes públicas direcciones IP, dominios y subdominios para, posteriormente, buscar servicios escuchando a través de puertos abiertos y que tengan vulnerabilidades que puedan ser utilizadas como vector de ataque para entrar en redes internas de la organización.

Caja gris

La prueba de caja gris implica tener una visión parcial de los sistemas, está diseñada para simular ataques realizados por personal de la plantilla, clientela o personas descontentas que tengan algún privilegio dentro de la red interna. Para poder realizar esta prueba el equipo que va a realizar el pentest debe tener acceso a la red interna y cuentas de usuario con algún privilegio. El objetivo de esta prueba es simular lo que haría un atacante con pocos privilegios: buscar formas de elevar privilegios, acceder a información confidencial, exfiltrar documentos sensibles, etc.

Caja blanca

Para realizar este tipo de prueba el equipo necesita tener una visión total de los sistemas y sus servicios. En el momento de llevarlo a cabo se conoce la arquitectura de los sistemas en los que se va a realizar el pentest, qué sistemas operativos y servicios utilizan y se necesita tener acceso a los sistemas con una cuenta con privilegios elevados para poder revisar políticas, sistemas, servicios, redes y código de aplicaciones. El objetivo de la prueba de caja blanca es el de encontrar agujeros de seguridad que puedan facilitar a usuarios con privilegios vulnerar la tríada CID (confidencialidad, integridad y disponibilidad) de los sistemas y servicios.

Enfoques

Debido a la complejidad de las infraestructuras de una empresa u organización es necesario abordar el pentest de una manera u otra:

  • Puede tratarse de un pentest desde la infraestructura pública.
  • Pentest de redes internas (hace falta una conexión mediante VPN o el desplazamiento a la oficina).
  • Podría tratarse de pentesting de aplicaciones web.
  • Pentesting de redes wifi. El uso de redes wifi puede implicar serios problemas de seguridad debido a que la que la señal inalámbrica se propaga a través del aire. El objetivo es identificar vulnerabilidades en estas redes que puedan facilitar a ciberatacantes acceder a los sistemas internos de la empresa.  
  • Pentest de las comunicaciones VoIP.

¿En qué se diferencia el pentesting de una auditoría de seguridad informática?

Como habrás deducido, la principal diferencia es que en una auditoría no se pasa a la fase de explotación tras evaluar las posibles vulnerabilidades detectadas y no es un proceso cíclico. Cuando se está auditando un sistema acotado y ya se han inventariado todas las posibles vulnerabilidades o fallos de seguridad (software desactualizado, contraseñas en filtraciones, cortafuegos mal configurado, etc) se crea un documento para que el equipo de IT tenga una lista con las vulnerabilidades a corregir (también puede ser necesario para verificar si se cumplen los estándares de seguridad). En un ejercicio de pentesting, el o la pentester va más allá y continúa buscando vulnerabilidades en los sucesivos entornos a los que llegue tras utilizar puntos de pivoting (ir de una máquina a otra) y formas de escalar privilegios hasta que no encuentre ninguna vulnerabilidad o se haya analizado todos los sistemas dentro del alcance.

¿En qué se diferencian un ejercicio de Red Team y un Pentest?

La principal diferencia son las técnicas que se utilizan y la duración. Para un ejercicio de Red Team, hay vía libre para intentar entrar en una organización simulando lo que harían cibercriminales: se suele utilizar ingeniería social, phishing, OSINT (inteligencia de fuentes abiertas), pentest, persistencia, entre otras. En un ejercicio de Red Team se haría uso del pentest explotando vulnerabilidades, buscando puntos de pivoting para desplazarse dentro de una red corporativa con el objetivo de escalar privilegios y controlar los dispositivos comprometidos mediante técnicas de Command and Control (C2). Un equipo de Red Team prueba las defensas gestionadas por un Blue Team para encontrar fallos.

En resumen, un ejercicio de Red Team puede utilizar un pentest como una de las formas para conseguir su objetivo.

Si tienes alguna consulta o crees que podemos ayudar a tu organización, no dudes en ponerte en contacto con nosotros

Estaremos encantados de ayudarte😊