Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
BinDiffHelper — Estensione Ghidra per integrare BinDiff per il matching delle funzioni | Kitploit
Strumenti/GitHubGitHub/ubfx/bindiffhelper
Analisi StaticaAnalisi del CodiceReverse EngineeringAnalisi MalwareUtilità e FrameworkAnalisi di BinariBinary Exploitation
GitHububfx/bindiffhelper

BinDiffHelper

Estensione Ghidra per integrare BinDiff per il matching delle funzioni

Vedi Repository
2962322 giorni 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

BinDiffHelper

Estensione di Ghidra che utilizza BinDiff sul tuo progetto Ghidra per trovare funzioni corrispondenti e rinominarle automaticamente (BinDiff 6, 7, 8 supportati). Consulta il manuale di BinDiff per vedere come funziona e come confronta funzioni / blocchi di base. Tuttavia, con questa estensione, BinDiff è automatizzato dall'interno di Ghidra, quindi non devi confrontare i tuoi binari manualmente.

Segnala i bug tramite la funzione issue su github

Changelog

v0.7.1

  • Aggiornamento per Ghidra 12

v0.7.0 (versioni di Ghidra >= 11.4)

  • Nessuna modifica eccetto la compatibilità con la versione di Ghidra

v0.6.4 (versioni di Ghidra < 11.4)

  • Supporto all'esportazione dei namespace
  • Risolto il blocco indefinito durante il diffing

v0.6.3

  • Consenti l'ordinamento della tabella

v0.6.2

  • Risolto un bug per cui il diffing si bloccava all'infinito su BinDiff 8
  • Facendo doppio clic su un simbolo, lo si segue sia nel listato del codice primario che in quello secondario

v0.6

  • Aggiornata la libreria driver sqlite, ora dovrebbe funzionare su Apple silicon
  • Supporto ai diff testuali esterni tra funzioni decompilate (vedi https://github.com/ubfx/BinDiffHelper/pull/24)
  • Aggiornamenti dell'interfaccia utente

v0.5

  • Supporto a BinDiff 8
  • Rilascio per Ghidra 11.1
Modifiche precedenti ### v0.4.3 * Rilascio per Ghidra 11.0

v0.4.2

  • Aggiunta la funzione per importare tutte le funzioni (non solo quelle selezionate nella tabella)
  • Aggiunta la funzione per attivare/disattivare la casella di controllo per più elementi nella tabella
  • Aggiornamento per supportare Ghidra 10.3

v0.4.1

  • Aggiornamento per supportare Gradle 7.5 e Ghidra 10.1

v0.4.0

  • Supporto a BinDiff 7 e Ghidra 10

v0.3.2

  • Risolto un bug per cui il diffing con un file diverso dello stesso progetto non funzionava
  • Risolto un bug per cui i file con nomi brevi (< 3 caratteri>) non potevano essere confrontati

v0.3.1

  • Risolto un crash durante l'apertura di un file tramite l'opzione "from project"

v0.3

  • Colorazione delle funzioni corrispondenti nel listato
  • Aggiunta di commenti alle funzioni corrispondenti nel listato con collegamento all'altro binario
  • Risolto un bug per cui la libreria protobuf mancava in alcune build
  • Nuovo menu di caricamento file

v0.2

  • Risolto un bug per cui il file di destinazione dell'importazione doveva essere estratto (checked out).
  • Aumentata la dimensione della finestra di selezione del file di progetto

v0.1

  • Esegui il BinDiff del binario aperto in Ghidra con un altro binario dello stesso progetto Ghidra, mostra i risultati e importa i nomi delle funzioni
  • Apri un file BinDiff, creato con BinDiff 6, da due file .BinExport e importa i nomi delle funzioni corrispondenti in Ghidra

Come installare

Scarica il file .zip dalla release, se è compatibile con la tua versione di Ghidra, altrimenti vedi Come compilare di seguito.

  1. Apri Ghidra
  2. Nella Main Window: Vai su File->Install Extensions...
  3. Clicca il pulsante + in alto a destra e seleziona il file zip di BinDiffHelper
  4. Chiudi il plugin manager. Riavvia Ghidra per caricare il nuovo plugin
  5. Vedi Utilizzo di seguito

Altri strumenti consigliati

  • Plugin BinExport binari o compilato dal sorgente per la tua specifica versione di Ghidra
  • BinDiff (https://zynamics.com/software.html)

Senza questi, potrai solo importare file .BinDiff e non esportare e confrontare automaticamente dal tuo progetto Ghidra

Utilizzo

Assicurati che il plugin sia caricato nel Code Explorer aprendo un file in Ghidra e nel Code Explorer vai su File->Configure

Clicca la piccola icona a spina in alto a destra:

Configure tool

e assicurati che la casella di controllo accanto a BinDiffHelperPlugin sia selezionata.

Configure plugins

Importare .BinDiff esterni

I file .BinExport corrispondenti devono trovarsi nella stessa cartella.

Apri il file in cui vuoi importare i nomi nel code Browser, poi vai su Window->BinDiffHelper Open BinDiffHelper

Usa il pulsante Open from BinDiff o la voce di menu e seleziona il tuo file .BinDiff.

Example import

Seleziona tutti i nomi di funzione che vuoi importare e clicca il pulsante Import function names in alto a destra o la voce di menu.

Confrontare file nel progetto Ghidra

Vai su Window->BinDiffHelper, assicurati che non ci siano avvisi riguardanti BinExport o BinDiff, poi clicca il pulsante Open from project.

Seleziona l'altro file dall'albero e clicca OK.

Example project import

Come compilare

Requisiti:

  • Installazione di Ghidra (https://ghidra-sre.org) o compilata dal sorgente
  • Un jdk. Potrebbero esserci alcune restrizioni a seconda di come è stata compilata la tua Ghidra e di quali altri plugin stai usando. Consiglio di usare Temurin 21 LTS, poiché attualmente sembra funzionare sia con BinExport che con BinDiffHelper.
  • gradle (testato con 7.5, 8.10)

Clona il repository

Clona il repository in modo ricorsivo, poiché dipende da BinExport per la rispettiva definizione del protocol buffer.

git clone --recurse-submodules https://github.com/ubfx/BinDiffHelper.git

Compilalo

Devi impostare la variabile d'ambiente GHIDRA_INSTALL_DIR alla directory di installazione di Ghidra. Se hai installato JDK diversi, assicurati che la variabile d'ambiente JAVA_HOME punti a quello usato dalla tua installazione di Ghidra.

L'estensione sarà compilata specificamente per quella versione di Ghidra.

Poi vai nella cartella BinDiffHelper nella tua shell ed esegui

gradle

Questo compilerà sia BinExport nel rispettivo sottomodulo che BinDiffHelper nella directory padre. Dovrebbe essere stato creato un file .zip nella directory dist. Usa quel file .zip per installare secondo le istruzioni sopra.

Configurazione per sviluppo / debug

A volte è utile poter eseguire il debug dell'estensione insieme a Ghidra, ecco alcune note a riguardo:

Scarica lo strumento