
Una colección de herramientas de hacking, recursos y referencias para practicar hacking ético.

Este repositorio es una visión general de lo que necesitas aprender sobre pruebas de penetración y una colección de herramientas, recursos y referencias para practicar hacking ético. La mayoría de las herramientas son compatibles con UNIX, gratuitas y de código abierto.
Este proyecto ha sido terminado y archivado. El contenido puede estar desactualizado.
(TOC hecho con nGitHubTOC)
Penetration testing es un tipo de prueba de seguridad que se utiliza para evaluar la seguridad de una aplicación. Se realiza para encontrar un riesgo de seguridad que pueda estar presente en un sistema.
Si un sistema no es seguro, un atacante podría interrumpir o tomar el control no autorizado de ese sistema. Un riesgo de seguridad normalmente es un error accidental que ocurre durante el desarrollo e implementación del software. Por ejemplo, errores de configuración, errores de diseño, bugs de software, etc. Más información
Conocer los riesgos en internet y cómo pueden prevenirse es muy útil, especialmente como desarrollador. El hacking web y las pruebas de penetración son la versión 2.0 de la autodefensa. Pero ¿saber sobre herramientas y cómo usarlas es realmente todo lo que necesitas para convertirte en un pentester? Definitivamente no. Un verdadero pentester debe ser capaz de proceder rigurosamente y detectar las debilidades de una aplicación. Debe poder identificar la tecnología subyacente y probar cada posible puerta que pueda estar abierta a los hackers.
Este repositorio apunta primero a establecer un método de reflexión sobre las pruebas de penetración y explicar cómo proceder para asegurar una aplicación. Y en segundo lugar, a agrupar todo tipo de herramientas o recursos que los pentesters necesitan. Asegúrate de conocer los fundamentos de los lenguajes de programación y la seguridad en internet antes de aprender pruebas de penetración.
También es importante informarse sobre la ley y qué está permitido hacer o no. Según tu país, las leyes informáticas no son las mismas. Primero, consulta las leyes sobre privacidad y vigilancia: Países de los Nueve Ojos, Cinco Ojos y Catorce Ojos. Siempre verifica si lo que estás haciendo es legal. Incluso cuando no es ofensivo, ¡la recopilación de información también puede ser ilegal!
Infosec: Seguridad de la información, que es la práctica de prevenir el acceso no autorizado, uso, divulgación, interrupción, modificación, inspección, grabación o destrucción de información. La información o los datos pueden adoptar cualquier forma, por ejemplo, electrónica o física. Infosec también puede referirse a una persona que practica seguridad ética. Wikipedia
Opsec: Seguridad de operaciones, que es un proceso que identifica información crítica para determinar si las acciones amigas pueden ser observadas por la inteligencia enemiga, determina si la información obtenida por adversarios podría ser interpretada como útil para ellos, y luego ejecuta medidas seleccionadas que eliminen o reduzcan la explotación por parte del adversario de información crítica amiga. Wikipedia
Hacker de sombrero negro/gris/blanco: Alguien que utiliza bugs o exploits para irrumpir en sistemas o aplicaciones. El objetivo y el método difieren según sean hackers de sombrero negro, gris o blanco. Un sombrero negro es simplemente alguien malicioso que no espera permiso para irrumpir en un sistema o aplicación. Un sombrero blanco es normalmente un investigador de seguridad que practica hacking ético. Un sombrero gris está en el medio de estos dos tipos de hackers; pueden tener intenciones maliciosas si les beneficia (filtración de datos, dinero, denuncia de irregularidades...).
Red team: Según Wikipedia, un red team o equipo rojo es un grupo independiente que desafía a una organización para mejorar su efectividad asumiendo un rol o punto de vista adversarial. Es particularmente efectivo en organizaciones con culturas fuertes y formas fijas de abordar problemas. La comunidad de inteligencia de Estados Unidos (militar y civil) tiene red teams que exploran futuros alternativos y escriben artículos como si fueran líderes mundiales extranjeros. Existe poca doctrina formal o publicaciones sobre Red Teaming en el ámbito militar. En ejercicios de infosec, los miembros del red team interpretan el papel de atacantes. Wikipedia
Blue team: Un blue team es un grupo de personas que realizan un análisis de los sistemas de información para garantizar la seguridad, identificar fallos de seguridad, verificar la efectividad de cada medida de seguridad y asegurarse de que todas las medidas de seguridad continúen siendo efectivas después de su implementación. Como resultado, los blue teams fueron desarrollados para diseñar medidas defensivas contra las actividades del red team. En ejercicios de infosec, los miembros del blue team interpretan el papel de defensores. Wikipedia
Penetration tester: Un hacker ético que practica seguridad, prueba aplicaciones y sistemas para prevenir intrusiones o encontrar vulnerabilidades.
Security researcher: Alguien que practica pruebas de penetración y navega por la web para encontrar sitios web de phishing/falsos, servidores infectados, bugs o vulnerabilidades. Pueden trabajar para una empresa como consultor de seguridad y son muy probablemente miembros del blue team.
Reverse engineering: Ingeniería inversa, también llamada back engineering, es el proceso mediante el cual un objeto creado por el hombre es deconstruido para revelar sus diseños, arquitectura, o para extraer conocimiento del objeto. Similar a la investigación científica, la única diferencia es que la investigación científica trata sobre un fenómeno natural. Wikipedia
Social engineering: En el contexto de la seguridad de la información, se refiere a la manipulación psicológica de personas para que realicen acciones o divulguen información confidencial. Un tipo de estafa de confianza con el propósito de recopilar información, cometer fraude u obtener acceso al sistema; se diferencia de una "estafa" tradicional en que a menudo es uno de muchos pasos en un esquema de fraude más complejo. El término "ingeniería social" como acto de manipulación psicológica de un ser humano también está asociado con las ciencias sociales, pero su uso se ha popularizado entre los profesionales de la seguridad informática y de la información. Wikipedia
Threat analyst: Un cazador de amenazas, también llamado analista de amenazas de ciberseguridad, es un profesional de seguridad o un proveedor de servicios gestionados (MSP) que utiliza técnicas manuales o asistidas por máquina de forma proactiva para detectar incidentes de seguridad que pueden eludir los sistemas automatizados. Los cazadores de amenazas buscan descubrir incidentes que una empresa de otro modo no conocería, proporcionando a los directores de seguridad de la información (CISO) y a los directores de información (CIO) una línea de defensa adicional contra amenazas persistentes avanzadas (APT). SearchCIO
Un hacker de sombrero negro practica pruebas de penetración, pero a diferencia de un sombrero blanco, esto no es hacking ético. El hacking ético consiste en encontrar vulnerabilidades y mejorar la seguridad de un sistema. Un hacker ético es el profesional de seguridad por excelencia. Los hackers éticos saben cómo encontrar y explotar vulnerabilidades y debilidades en varios sistemas, al igual que un hacker malicioso (un hacker de sombrero negro). De hecho, ambos utilizan las mismas habilidades; sin embargo, un hacker ético utiliza esas habilidades de manera legítima y lícita para tratar de encontrar vulnerabilidades y corregirlas antes de que los malos puedan llegar e intentar infiltrarse. Un hacker ético es básicamente un hacker de sombrero blanco.
Aprender programación es la primera manera de empezar a aprender sobre seguridad. Hay muchos lenguajes; la mayoría de la gente comienza con Python, es el más fácil y el más popular. PHP y Go son menos populares para escribir cosas relacionadas con la seguridad, pero cualquiera de ellos aún puede usarse en ese contexto. Bash y Powershell se centran principalmente en scripting y escribir aplicaciones CLI simples.
Dado que no todos los lenguajes funcionan de la misma manera, debes ver cómo funcionan y qué quieres aprender. Por ejemplo, C++ y Java compilan; PHP y Python no, son lenguajes interpretados. Esto definitivamente cambia para qué deberías usarlos. Cada lenguaje también tiene sus propios patrones de diseño.
Estos son los sistemas de gestión de contenidos (CMS) más utilizados. Consulta una lista completa aquí.
Fuente: tutorialspoint
Lee más sobre la metodología de pruebas de penetración
Se puede encontrar una lista más completa de herramientas en el sitio web oficial de Kali Linux.
Las herramientas de recopilación de información te permiten recopilar metadatos de host sobre servicios y usuarios. Verifica información sobre un dominio, dirección IP, número de teléfono o dirección de correo electrónico.
Rompe contraseñas y crea listas de palabras.
| Herramienta | Descripción |
|---|---|
| Probable Wordlist | Listas de palabras ordenadas por probabilidad, creadas originalmente para la generación y prueba de contraseñas. |
Se utiliza para la detección de intrusiones y ataques wifi.
Accede a sistemas y datos con exploits orientados a servicios.
Escucha el tráfico de red o falsifica una entidad de red.
Explota CMS populares que están alojados en línea.
Exploits para después de haber obtenido acceso.
| Herramienta | Lenguaje | Soporte | Descripción |
|---|---|---|---|
| TheFatRat | C | Linux/Windows/macOS | Herramienta sencilla para generar puertas traseras y para ataques de post-explotación como ataques al navegador, DLL, etc. |
Los frameworks son paquetes de herramientas de pruebas de penetración con navegación shell personalizada y documentación.| Herramienta | Lenguaje | Soporte | Descripción |
| ----------- |-------------------------|----------|----------------|
| Operative Framework | Python | Linux/Windows/macOS | Framework basado en la acción de huella digital, esta herramienta se utiliza para obtener información sobre un sitio web o un objetivo empresarial con múltiples módulos. |
| Metasploit | Ruby | Linux/Windows/macOS | Un marco de pruebas de penetración para hackers éticos. |
| cSploit | Java | Android | El conjunto de herramientas profesionales de seguridad informática más completo y avanzado en Android. |
| radare2 | C | Linux/Windows/macOS/Android | Marco de ingeniería inversa tipo Unix y herramientas de línea de comandos. |
| Wifiphisher | Python | Linux | El marco de punto de acceso rogue. |
| Beef | Javascript | Linux/Windows/macOS | El marco de explotación del navegador. Es una herramienta de pruebas de penetración que se centra en el navegador web. |
| Mobile Security Framework (MobSF) | | | Mobile Security Framework (MobSF) es un marco automatizado y todo en uno para pruebas de penetración de aplicaciones móviles (Android/iOS/Windows), análisis de malware y evaluación de seguridad, capaz de realizar análisis estático y dinámico. |
| | | | Burp Suite es una gama líder de herramientas de ciberseguridad, traída a usted por PortSwigger. |
Advertencia : No los he leído todos, así que no consideres que los recomiendo porque me gustaron. Solo parecen proporcionar recursos útiles.
Este repositorio está bajo la licencia MIT.
| Herramienta | Lenguaje | Soporte | Descripción |
|---|
| theHarvester | Python | Linux/Windows/macOS | Recolector de correos electrónicos, subdominios y nombres. |
| CTFR | Python | Linux/Windows/macOS | Abusando de los registros de transparencia de certificados para obtener subdominios de sitios web HTTPS. |
| Sn1per | bash | Linux/macOS | Escáner automatizado de reconocimiento para pruebas de penetración. |
| RED Hawk | PHP | Linux/Windows/macOS | Herramienta todo en uno para recopilación de información, escaneo de vulnerabilidades y rastreo. Una herramienta imprescindible para todos los pentesters. |
| Infoga | Python | Linux/Windows/macOS | Recopilación de información de correos electrónicos. |
| KnockMail | Python | Linux/Windows/macOS | Verifica si existe una dirección de correo electrónico. |
| a2sv | Python | Linux/Windows/macOS | Escaneo automático de vulnerabilidades SSL. |
| Wfuzz | Python | Linux/Windows/macOS | Fuzzer de aplicaciones web. |
| Nmap | C/C++ | Linux/Windows/macOS | Una herramienta muy común. Detector de hosts de red, vulnerabilidades y puertos. |
| PhoneInfoga | Go | Linux/macOS | Un framework OSINT para números de teléfono. |
| Herramienta | Lenguaje | Soporte | Descripción |
|---|
| John the Ripper | C | Linux/Windows/macOS | John the Ripper es un crackeador de contraseñas rápido. |
| hashcat | C | Linux/Windows/macOS | La utilidad de recuperación de contraseñas más rápida y avanzada del mundo. |
| Hydra | C | Linux/Windows/macOS | Crackeador de inicio de sesión paralelizado que soporta numerosos protocolos para atacar. |
| ophcrack | C++ | Linux/Windows/macOS | Crackeador de contraseñas de Windows basado en tablas rainbow. |
| Ncrack | C | Linux/Windows/macOS | Herramienta de craqueo de autenticación de red de alta velocidad. |
| WGen | Python | Linux/Windows/macOS | Crea listas de palabras increíbles con Python. |
| SSH Auditor | Go | Linux/macOS | La mejor manera de escanear contraseñas SSH débiles en tu red. |
| Herramienta | Lenguaje | Soporte | Descripción |
|---|
| Aircrack | C | Linux/Windows/macOS | Suite de herramientas de auditoría de seguridad WiFi. |
| bettercap | Go | Linux/Windows/macOS/Android | bettercap es la navaja suiza para ataques y monitorización de redes. |
| WiFi Pumpkin | Python | Linux/Windows/macOS/Android | Framework para ataque de punto de acceso Wi-Fi fraudulento. |
| Airgeddon | Shell | Linux/Windows/macOS | Script bash multiuso para sistemas Linux para auditar redes inalámbricas. |
| Airbash | C | Linux/Windows/macOS | Script compatible con POSIX, completamente automatizado para captura de handshake WPA PSK, orientado a pruebas de penetración. |
| Herramienta | Lenguaje | Soporte | Descripción |
|---|
| SQLmap | Python | Linux/Windows/macOS | Herramienta automática de inyección SQL y toma de control de bases de datos. |
| XSStrike | Python | Linux/Windows/macOS | Suite avanzada de detección y explotación de XSS. |
| Commix | Python | Linux/Windows/macOS | Herramienta automatizada todo en uno de inyección y explotación de comandos del sistema operativo. |
| Nuclei | Go | Linux/Windows/macOS | Escáner de vulnerabilidades rápido y personalizable basado en DSL simple con YAML. |
| Herramienta | Lenguaje | Soporte | Descripción |
|---|
| Wireshark | C/C++ | Linux/Windows/macOS | Wireshark es un analizador de protocolos de red. |
| WiFi Pumpkin | Python | Linux/Windows/macOS/Android | Framework para ataque de punto de acceso Wi-Fi fraudulento. |
| Zarp | Python | Linux/Windows/macOS | Un framework gratuito de ataque a redes. |
| Herramienta | Lenguaje | Soporte | Descripción |
|---|
| WPScan | Ruby | Linux/Windows/macOS | WPScan es un escáner de vulnerabilidades de WordPress de caja negra. |
| Droopescan | Python | Linux/Windows/macOS | Un escáner basado en plugins para identificar problemas en varios CMS, principalmente Drupal y Silverstripe. |
| Joomscan | Perl | Linux/Windows/macOS | Escáner de vulnerabilidades de Joomla. |
| Drupwn | Python | Linux/Windows/macOS | Escáner de seguridad de Drupal para realizar enumeraciones en aplicaciones web basadas en Drupal. |
| CMSeek | Python | Linux/Windows/macOS | Suite de detección y explotación de CMS: escanea WordPress, Joomla, Drupal y otros 130 CMS. |
Linux/Windows/macOSLinux/Windows/macOS