Los pentesters utilizan varias herramientas para realizar reconocimientos, detectar vulnerabilidades y automatizar partes clave del proceso de pentesting. Algunas de las herramientas más comunes incluyen:
Sistemas operativos especializados
La mayoría de los pentesters utilizan sistemas operativos diseñados para pentesting y hackeo ético. El más popular es Kali Linux, una distribución de Linux de código abierto que viene preinstalada con herramientas de pentesting como Nmap, Wireshark y Metasploit.
Herramientas de descifrado de credenciales
Estos programas pueden descubrir contraseñas rompiendo cifrados o lanzando ataques de fuerza bruta, que utilizan bots o scripts para generar y probar automáticamente posibles contraseñas hasta que una funciona. Algunos ejemplos son Medusa, Hyrda, Hashcat y John the Ripper.
Escáneres de puertos
Los escáneres de puertos permiten a los pentesters probar remotamente los dispositivos en busca de puertos abiertos y disponibles, que pueden utilizar para violar una red. Nmap es el escáner de puertos más utilizado, pero masscan y ZMap también son comunes.
Escáneres de vulnerabilidades
Las herramientas de escaneo de vulnerabilidades buscan vulnerabilidades conocidas en los sistemas, lo que permite a los especialistas en pentesting encontrar rápidamente posibles vías de acceso a un objetivo. Algunos ejemplos son Nessus, Core Impact y Netsparker.
Los escáneres de vulnerabilidades web son un subconjunto de los escáneres de vulnerabilidades que evalúan las aplicaciones web y los sitios web. Algunos ejemplos son Burp Suite y Zed Attack Proxy (ZAP) de OWASP.
Analizadores de paquetes
Los analizadores de paquetes, también llamados sniffers de paquetes, permiten a los pentesters analizar el tráfico de red capturando e inspeccionando paquetes. Los pentesters pueden averiguar de dónde procede el tráfico, a dónde se dirige y, en algunos casos, qué datos contiene. Wireshark y tcpdump se encuentran entre los analizadores de paquetes más utilizados.
Metasploit
Metasploit es un marco de pentest con multitud de funciones. Lo más importante es que Metasploit permite a los pentesters automatizar los ciberataques. Metasploit cuenta con una biblioteca integrada de códigos de explotaciones y cargas útiles preescritos. Los pentesters pueden seleccionar una explotación, darle una carga útil para entregar al sistema de destino, y dejar que Metasploit se encargue del resto.