Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
BruteShark — Strumento di analisi di rete | Kitploit
Strumenti/GitHubGitHub/odedshimon/bruteshark
Sniffing e Analisi dei PacchettiPassword CrackingMappatura della ReteAnalisi HashNetwork ForensicsInformatica ForenseAnalisi DNS
GitHubodedshimon/bruteshark

BruteShark

Strumento di analisi di rete

Vedi Repository
3.4k35794 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

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

  • Informazioni
    • Cosa può fare
    • Download
  • Esempi
  • Utilizzo
    • BruteSharkDesktop
    • BruteSharkCli
    • Moduli
  • Architettura
  • Contribuire

Informazioni

BruteShark è uno strumento di analisi forense di rete (NFAT) che esegue elaborazione e ispezione approfondita del traffico di rete (principalmente file PCAP, ma è anche in grado di catturare live direttamente da un'interfaccia di rete). Include: estrazione di password, creazione di una mappa di rete, ricostruzione di sessioni TCP, estrazione di hash di password crittografate e persino conversione in formato Hashcat per eseguire un attacco offline di forza bruta.

Scarica lo strumento

L'obiettivo principale del progetto è fornire una soluzione ai ricercatori di sicurezza e agli amministratori di rete per l'analisi del traffico di rete, mentre cercano di identificare vulnerabilità che potrebbero essere utilizzate da un potenziale aggressore per ottenere l'accesso a punti critici della rete.

Sono disponibili due versioni di BruteShark: un'applicazione GUI (Windows) e uno strumento a riga di comando (Windows e Linux).
I vari progetti nella soluzione possono anche essere utilizzati indipendentemente come infrastruttura per l'analisi del traffico di rete su macchine Linux o Windows. Per ulteriori dettagli, vedere la sezione Architettura.

Il progetto è stato sviluppato nel mio tempo libero per soddisfare due grandi passioni: l'architettura del software e l'analisi dei dati di rete.

Adoro ricevere feedback dagli utenti di BruteShark, la tua opinione è importante per me! Sentiti libero di contattarmi a [email protected] o di creare una nuova issue.

Per favore, metti ⭐️ a questo repository se il progetto ti è stato utile!

Inoltre, se ti senti generoso, puoi offrirmi un caffè

Cosa può fare

  • Estrarre e codificare nomi utente e password (HTTP, FTP, Telnet, IMAP, SMTP...)
  • Estrarre hash di autenticazione e decifrarli usando Hashcat (Kerberos, NTLM, CRAM-MD5, HTTP-Digest...)
  • Costruire un diagramma di rete visivo (nodi di rete, porte aperte, utenti del dominio)
  • Estrarre query DNS
  • Ricostruire tutte le sessioni TCP e UDP
  • File Carving
  • Estrarre chiamate VoIP (SIP, RTP)

Download

Windows
  • Prerequisiti:
    • Driver Npcap (Wireshark ne installa uno di default)
    • Runtime .NET Core (Nota: devi installare il runtime appropriato alle tue esigenze, ovvero .NET Core Desktop Runtime per BruteSharkDesktop e .NET Core Runtime per BruteSharkCli).
  • Per la versione desktop, scarica BruteSharkDesktop Windows Installer (64 Bit).
  • Per la versione CLI, scarica BruteSharkCli Windows 10 Executable.
Linux
  • Prerequisiti: driver libpcap
  • Scarica BruteSharkCli ed eseguilo:
    root@kitploit:~
    wget https://github.com/odedshimon/BruteShark/releases/latest/download/BruteSharkCli
    ./BruteSharkCli
    

Esempi

Video

Costruzione di una mappa di rete
https://user-images.githubusercontent.com/18364847/131922221-5714f351-85f7-4490-bec9-8da4339b66b3.mp4
Esempio di utilizzo di BruteSharkCli - Estrazione di più password e hash (disponibile anche su YouTube)
https://user-images.githubusercontent.com/18364847/131924013-8b2aa18b-0941-456e-a09d-799902554166.mp4

Estrazione di hash

Costruzione di un diagramma di rete

Costruzione di un diagramma di rete

File Carving

Estrazione di password

Ricostruzione di tutte le sessioni TCP

Estrazione di chiamate VoIP

Brute Shark CLI

Utilizzo

In generale, si consiglia di caricare, eseguire ed esplorare i risultati.
I file PCAP di esempio che contengono scenari che dimostrano tutte le capacità di BruteShark possono essere scaricati da qui.
Nota: l'analisi del traffico di rete è un'operazione che consuma tempo e risorse, quindi si consiglia di selezionare solo i moduli necessari quando vengono caricati file di grandi dimensioni.
Prestare particolare attenzione alle opzioni "Build TCP Sessions" / "Build UDP Sessions".

BruteSharkDesktop

La GUI è abbastanza autoesplicativa: basta caricare i file desiderati, configurare i moduli desiderati e premere il pulsante di esecuzione.

BruteSharkCli

BruteSharkCli è la versione CLI di BruteShark per utenti Linux e Windows. Ha tutte le funzionalità di BruteSharkDesktop ed è progettato per funzionare da una shell. Come classico strumento CLI, funziona ricevendo tutti i parametri pertinenti per l'elaborazione e poi stampando i risultati su stdout o su file.

Stampa il menu di aiuto:

root@kitploit:~
BruteSharkCli --help

Ottieni le credenziali da tutti i file in una directory (le password e gli hash verranno stampati su stdout):

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

Ottieni le credenziali da tutti i file in una directory ed esporta anche gli hash estratti (se trovati) in file di input per Hashcat.

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

Esegui più moduli su tutti i file in una directory ed esporta anche tutti i risultati.

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

Sniffa un'interfaccia chiamata "Wi-Fi", esegui più moduli ed esporta anche tutti i risultati in una directory (i risultati verranno esportati solo quando si ferma lo sniffer premendo CTRL + C).

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

Moduli

BruteShark è uno strumento modulare, progettato per essere esteso.

Modulo Credenziali

Questo modulo si occupa di estrarre e codificare nomi utente e password, nonché hash di autenticazione. In effetti, questo modulo aggiorna due tabelle di visualizzazione: la tabella delle password e la tabella degli hash. Mentre nomi utente e password sono di uso immediato, gli hash vengono spesso utilizzati in attacchi più complessi come pass-the-hash o forzandoli brutalmente per ottenere la password. BruteShark è integrato con Hashcat in modo che tutti gli hash estratti possano essere convertiti in un file di input per Hashcat.

ProtocolloTipo di HashModalità Hashcat (-m)
HTTPHTTP-Digest11400
SMTP\IMAPCRAM-MD516400
NTLM (es. SMB)NTLMv15500
NTLM (es. 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
Modulo Mappa di Rete

Questo modulo si occupa di costruire la mappa di rete identificando i componenti della rete e le connessioni tra di essi. La mappa di rete può essere esportata in due file JSON: un file contiene tutte le connessioni nella rete e l'altro contiene tutti gli endpoint e le informazioni correlate (come porte aperte, mapping DNS, ecc.). Questi file possono essere utilizzati per analisi con strumenti esterni come Neo4j.

Modulo Estrazione File

Questo modulo tenta di estrarre file dalle sessioni UDP/TCP (Pertanto, nota: affinché questo modulo sia efficace, le opzioni "Build TCP Sessions" / "Build UDP Sessions" devono essere attivate). Attualmente, questo modulo supporta tecniche forensi classiche di file carving tramite l'algoritmo "Header-Footer", che è efficace per file con header e footer noti come JPG, PNG, PDF.

Modulo Chiamate VoIP

Questo modulo estrae le chiamate VoIP dai protocolli SIP e RTP. Le chiamate estratte possono essere esportate come file audio grezzi e possono essere riprodotte utilizzando un lettore audio appropriato (come Audacity)

Architettura

Tutti i progetti di BruteShark sono implementati utilizzando .Net Core e .Net Standard per un supporto moderno e multipiattaforma. La soluzione è progettata con un'architettura a tre livelli, includendo uno o più progetti per ogni livello: DAL, BLL e PL. La separazione tra i livelli è creata dal fatto che ogni progetto fa riferimento solo ai propri oggetti.

PcapProcessor (DAL)

Come livello di accesso ai dati, questo progetto si occupa di leggere file PCAP grezzi utilizzando driver appropriati (WinPcap, libpcap) e la fantastica libreria wrapper SharpPcap di Chris Morgan. Può analizzare una lista di file in una volta sola e fornisce funzionalità aggiuntive come la ricostruzione di tutte le sessioni TCP (usando il progetto eccellente TcpRecon).

PcapAnalyzer (BLL)

Il livello di logica di business, responsabile dell'analisi delle informazioni di rete (pacchetto, sessione TCP, ecc.), implementa un meccanismo di plug-in. Ogni plug-in è essenzialmente una classe che implementa l'interfaccia IModule. Tutti i plug-in vengono caricati tramite reflection:

root@kitploit:~
private void _initilyzeModulesList()
{
    // Crea un'istanza per ogni modulo disponibile cercando ogni classe che
    // 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();

    // Si registra per ogni evento del modulo.
    foreach(var m in _modules)
    {
        m.ParsedItemDetected += (s, e) => this.ParsedItemDetected(s, e);
    }
    
}
BruteSharkDesktop (PL)

Applicazione desktop per Windows basata su WinForms. Utilizza un progetto trasversale nel senso che fa riferimento sia al livello DAL che a BLL. Ciò viene fatto componendo ciascuno dei livelli, registrandosi ai loro eventi; quando un evento viene attivato, l'oggetto evento viene convertito nell'oggetto equivalente del livello successivo e inviato al livello successivo.

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

    _files = new HashSet<string>();

    // Crea gli oggetti DAL e BLL.
    _processor = new PcapProcessor.Processor();
    _analyzer = new PcapAnalyzer.Analyzer();
    _processor.BuildTcpSessions = true;

    // Crea i controlli utente. 
    _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;

    // Contrae gli eventi.
    _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();
}

Contribuire

Prima di tutto, grazie per aver dedicato del tempo a contribuire! BruteShark accoglie con favore i contributi di tutti.

Quando contribuisci a questo repository, per favore discuti prima la modifica che desideri apportare tramite issue o un'email prima di apportare modifiche.

Come puoi contribuire?

  • Implementare nuove funzionalità dai problemi di BruteShark, cerca le etichette "good first issue" e "help wanted".
  • Caricare file PCAP di esempio, in particolare file con contenuti interessanti.
  • Proporre nuove funzionalità creando una Issue.
  • Segnalare un bug creando una Issue.
  • Discutere lo stato corrente del codice.
  • Creare video e tutorial di esempio sull'uso di BruteShark.