Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
BruteShark — Herramienta de Análisis de Red | Kitploit
Herramientas/GitHubGitHub/odedshimon/bruteshark
Sniffing y Análisis de PaquetesDescifrado de ContraseñasMapeo de RedesAnálisis de HashForensia de RedAnálisis ForenseAnálisis de DNS
GitHubodedshimon/bruteshark

BruteShark

Herramienta de Análisis de Red

Ver Repositorio
3.4k35759hace 4 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

badge GitHub release (latest by date) Github All Releases Donate Tweet Reddit User Karma

  • Acerca de
    • Lo que puede hacer
    • Descarga
  • Ejemplos
  • Uso
    • BruteSharkDesktop
    • BruteSharkCli
    • Módulos
  • Arquitectura
  • Contribuciones

Acerca de

BruteShark es una herramienta de análisis forense de redes (NFAT) que realiza un procesamiento profundo e inspección del tráfico de red (principalmente archivos PCAP, pero también es capaz de capturar en vivo directamente desde una interfaz de red). Incluye: extracción de contraseñas, construcción de un mapa de red, reconstrucción de sesiones TCP, extracción de hashes de contraseñas cifradas e incluso su conversión a un formato de Hashcat para realizar un ataque de fuerza bruta offline.

Descargar herramienta

El objetivo principal del proyecto es proporcionar una solución a los investigadores de seguridad y administradores de red en la tarea de analizar el tráfico de red mientras intentan identificar debilidades que un atacante potencial podría utilizar para obtener acceso a puntos críticos de la red.

Hay dos versiones de BruteShark disponibles, una aplicación basada en GUI (Windows) y una herramienta de línea de comandos (Windows y Linux).
Los diversos proyectos de la solución también se pueden usar de forma independiente como infraestructura para analizar tráfico de red en máquinas Linux o Windows. Para más detalles, consulte la sección de Arquitectura.

El proyecto fue desarrollado en mi tiempo libre para abordar dos de mis principales pasiones: la arquitectura de software y el análisis de datos de red.

¡Me encanta recibir comentarios de los usuarios de BruteShark, tu opinión es importante para mí! No dudes en contactarme en [email protected] o crear un nuevo issue.

¡Por favor, ⭐️ este repositorio si este proyecto te ayudó!

También, si te sientes generoso, puedes invitarme un café

Lo que puede hacer

  • Extraer y codificar nombres de usuario y contraseñas (HTTP, FTP, Telnet, IMAP, SMTP...)
  • Extraer hashes de autenticación y descifrarlos usando Hashcat (Kerberos, NTLM, CRAM-MD5, HTTP-Digest...)
  • Construir un diagrama visual de la red (nodos de red, puertos abiertos, usuarios de dominio)
  • Extraer consultas DNS
  • Reconstruir todas las sesiones TCP y UDP
  • File Carving
  • Extraer llamadas VoIP (SIP, RTP)

Descarga

Windows
  • Requisitos previos:
    • Controlador Npcap (Wireshark instala uno de estos por defecto)
    • .NET Core Runtime (Ten en cuenta que debes instalar el runtime adecuado según tus necesidades, es decir, .NET Core Desktop Runtime para BruteSharkDesktop y .NET Core Runtime para BruteSharkCli).
  • Para la versión de escritorio descarga BruteSharkDesktop Windows Installer (64 Bit).
  • Para la versión CLI descarga BruteSharkCli Windows 10 Executable.
Linux
  • Requisitos previos: controlador libpcap
  • Descarga BruteSharkCli y simplemente ejecútalo:
    root@kitploit:~
    wget https://github.com/odedshimon/BruteShark/releases/latest/download/BruteSharkCli
    ./BruteSharkCli
    

Ejemplos

Vídeos

Construcción de un mapa de red
https://user-images.githubusercontent.com/18364847/131922221-5714f351-85f7-4490-bec9-8da4339b66b3.mp4
Ejemplo de uso de BruteSharkCli - Extraer múltiples contraseñas y hashes (también disponible en youtube)
https://user-images.githubusercontent.com/18364847/131924013-8b2aa18b-0941-456e-a09d-799902554166.mp4

Extracción de Hashes

Construcción de un Diagrama de Red

Construcción de un Diagrama de Red

File Carving

Extracción de Contraseñas

Reconstrucción de todas las sesiones TCP

Extracción de Llamadas VoIP

Brute Shark CLI

Uso

En general, se recomienda cargar, ejecutar y explorar los resultados.
Se pueden descargar archivos PCAP de ejemplo que contienen escenarios que demuestran todas las capacidades de BruteShark desde aquí.
Ten en cuenta que analizar el tráfico de red es una operación que consume tiempo y recursos, por lo que se recomienda seleccionar solo los módulos necesarios cuando se carguen archivos grandes.
Se debe prestar especial atención a las opciones "Build TCP Sessions" / "Build UDP Sessions".

BruteSharkDesktop

La GUI es bastante autoexplicativa, simplemente carga los archivos deseados, configura los módulos deseados y presiona el botón de ejecutar.

BruteSharkCli

BruteSharkCli es la versión CLI de BruteShark para usuarios de Linux y Windows. Tiene todas las características de BruteSharkDesktop y está diseñada para operar desde un shell. Como herramienta CLI clásica, funciona obteniendo todos los parámetros relevantes para el procesamiento y luego imprimiendo los resultados en stdout o archivos.

Imprime el menú de ayuda:

root@kitploit:~
BruteSharkCli --help

Obtén credenciales de todos los archivos en un directorio (las contraseñas y hashes se imprimirán en stdout):

root@kitploit:~
 BruteSharkCli -m Credentials -d "C:\Users\King\Desktop\Pcap Files"

Obtén credenciales de todos los archivos en un directorio y también exporta los hashes extraídos (si se encuentran) a archivos de entrada de Hashcat.

root@kitploit:~
 BruteSharkCli -m Credentials -d C:\Users\King\Desktop\Pcap_Examples -o C:\Users\King\Desktop\Results

Ejecuta múltiples módulos en todos los archivos de un directorio y también exporta todos los resultados.

root@kitploit:~
 BruteSharkCli -m Credentials,NetworkMap,FileExtracting -d C:\Users\King\Desktop\Pcap_Examples -o C:\Users\King\Desktop\Results
 

Captura una interfaz llamada "Wi-Fi", ejecuta múltiples módulos y también exporta todos los resultados a un directorio (los resultados se exportarán solo al detener el sniffer presionando CTRL + C).

root@kitploit:~
BruteSharkCli -l Wi-Fi -m Credentials,NetworkMap,FileExtracting,DNS -o C:\Users\King\Desktop\Test Export

Módulos

BruteShark es una herramienta modular, diseñada para ser ampliable.

Módulo de Credenciales

Este módulo es responsable de extraer y codificar nombres de usuario y contraseñas, así como hashes de autenticación. De hecho, este módulo se encarga de actualizar dos tablas de visualización, la tabla de contraseñas y la tabla de hashes. Mientras que los nombres de usuario y contraseñas son de uso directo, los hashes se utilizan con mayor frecuencia en ataques más complejos como pass-the-hash o mediante fuerza bruta para obtener la contraseña. BruteShark está integrado con Hashcat por lo que todos los hashes extraídos se pueden convertir a un archivo de entrada de Hashcat.

ProtocoloTipo de HashModo Hascat (-m)
HTTPHTTP-Digest11400
SMTP\IMAPCRAM-MD516400
NTLM (por ej. SMB)NTLMv15500
NTLM (por ej. SMB)NTLMv25600
KerberosAS-REQ etype 237500
KerberosAS-REP etype 2318200
KerberosTGS-REP etype 2313100
Kerberos (AES128)TGS-REP etype 1719600
Kerberos (AES256)TGS-REP etype 1819700
Módulo de Mapa de Red

Este módulo es responsable de construir el mapa de red identificando componentes en la red y las conexiones entre ellos. El mapa de red se puede exportar a dos archivos JSON, un archivo contiene todas las conexiones en la red y el otro contiene todos los endpoints y la información relacionada con ellos (como puertos abiertos, asignaciones DNS, etc.). Estos archivos se pueden usar para análisis con herramientas externas como Neo4j.

Módulo de Extracción de Archivos

Este módulo intenta extraer archivos de sesiones UDP / TCP (Por lo tanto, ten en cuenta que para que este módulo sea efectivo, las opciones "Build TCP Sessions" / "Build UDP Sessions" deben estar activadas). Actualmente, este módulo admite técnicas clásicas de forense de file carving mediante el algoritmo "Header-Footer", que es efectivo para archivos con cabecera y pie de archivo conocidos como JPG, PNG, PDF.

Módulo de Llamadas VoIP

Este módulo extrae llamadas VoIP de los protocolos SIP y RTP. Las llamadas extraídas se pueden exportar como archivos de audio sin procesar y se pueden reproducir usando un reproductor de audio adecuado (como Audacity)

Arquitectura

Todos los proyectos de BruteShark están implementados usando .Net Core y .Net Standard para soporte moderno y multiplataforma. La solución está diseñada con una arquitectura de tres capas, que incluye uno o más proyectos en cada capa: DAL, BLL y PL. La separación entre capas se logra por el hecho de que cada proyecto solo hace referencia a sus propios objetos.

PcapProcessor (DAL)

Como capa de acceso a datos, este proyecto es responsable de leer archivos PCAP sin procesar utilizando los controladores adecuados (WinPcap, libpcap) y la increíble biblioteca contenedora SharpPcap de Chris Morgan. Puede analizar una lista de archivos a la vez y proporciona características adicionales como la reconstrucción de todas las sesiones TCP (usando el increíble proyecto TcpRecon).

PcapAnalyzer (BLL)

La capa de lógica de negocio, responsable de analizar la información de la red (paquete, sesión TCP, etc.), implementa un mecanismo conectable. Cada plugin es básicamente una clase que implementa la interfaz IModule. Todos los plugins se cargan mediante reflexión:

root@kitploit:~
private void _initilyzeModulesList()
{
    // Crea una instancia para cualquier módulo disponible buscando cada clase que
    // implementa IModule.
    this._modules = AppDomain.CurrentDomain.GetAssemblies()
                    .SelectMany(s => s.GetTypes())
                    .Where(p => typeof(IModule).IsAssignableFrom(p) && !p.IsInterface)
                    .Select(t => (IModule)Activator.CreateInstance(t))
                    .ToList();

    // Se registra en cada evento del módulo.
    foreach(var m in _modules)
    {
        m.ParsedItemDetected += (s, e) => this.ParsedItemDetected(s, e);
    }
    
}
BruteSharkDesktop (PL)

Aplicación de escritorio para Windows basada en WinForms. Utiliza un proyecto transversal en el sentido de que hace referencia tanto a la capa DAL como a la BLL. Esto se logra componiendo cada una de las capas, registrándose en sus eventos, y cuando se dispara un evento, se convierte el objeto del evento al objeto equivalente de la siguiente capa y se envía a la siguiente capa.

root@kitploit:~
public MainForm()
{
    InitializeComponent();

    _files = new HashSet<string>();

    // Crea los objetos DAL y BLL.
    _processor = new PcapProcessor.Processor();
    _analyzer = new PcapAnalyzer.Analyzer();
    _processor.BuildTcpSessions = true;

    // Crea los controles de usuario.
    _networkMapUserControl = new NetworkMapUserControl();
    _networkMapUserControl.Dock = DockStyle.Fill;
    _sessionsExplorerUserControl = new SessionsExplorerUserControl();
    _sessionsExplorerUserControl.Dock = DockStyle.Fill;
    _hashesUserControl = new HashesUserControl();
    _hashesUserControl.Dock = DockStyle.Fill;
    _passwordsUserControl = new GenericTableUserControl();
    _passwordsUserControl.Dock = DockStyle.Fill;

    // Contrata los eventos.
    _processor.TcpPacketArived += (s, e) => _analyzer.Analyze(Casting.CastProcessorTcpPacketToAnalyzerTcpPacket(e.Packet));
    _processor.TcpSessionArived += (s, e) => _analyzer.Analyze(Casting.CastProcessorTcpSessionToAnalyzerTcpSession(e.TcpSession));
    _processor.FileProcessingStarted += (s, e) => SwitchToMainThreadContext(() => OnFileProcessStart(s, e));
    _processor.FileProcessingEnded += (s, e) => SwitchToMainThreadContext(() => OnFileProcessEnd(s, e));
    _processor.ProcessingPrecentsChanged += (s, e) => SwitchToMainThreadContext(() => OnProcessingPrecentsChanged(s, e));
    _analyzer.ParsedItemDetected += (s, e) => SwitchToMainThreadContext(() => OnParsedItemDetected(s, e));
    _processor.TcpSessionArived += (s, e) => SwitchToMainThreadContext(() => OnSessionArived(Casting.CastProcessorTcpSessionToBruteSharkDesktopTcpSession(e.TcpSession)));
    _processor.ProcessingFinished += (s, e) => SwitchToMainThreadContext(() => OnProcessingFinished(s, e));

    InitilizeFilesIconsList();
    this.modulesTreeView.ExpandAll();
}

Contribuciones

En primer lugar, ¡gracias por tomarte el tiempo de contribuir! BruteShark agradece las contribuciones de todos.

Al contribuir a este repositorio, por favor discute primero el cambio que deseas realizar a través de un issue o un correo electrónico antes de hacer el cambio.

¿Cómo puedes contribuir?

  • Implementar nuevas funciones de BruteShark Issues, busca etiquetas "good first issue" y "help wanted".
  • Subir archivos PCAP de ejemplo, especialmente archivos con contenido interesante.
  • Proponer nuevas funciones Creando un Issue.
  • Reportar un error Creando un Issue.
  • Discutir el estado actual del código.
  • Crear videos y tutoriales de ejemplo sobre el uso de BruteShark.