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
diaphora — Diaphora, il più avanzato strumento di diffing di programmi gratuito e open source. | Kitploit
Strumenti/GitHubGitHub/joxeankoret/diaphora
Analisi delle VulnerabilitàReverse EngineeringAnalisi di Binari
GitHubjoxeankoret/diaphora

diaphora

Diaphora, il più avanzato strumento di diffing di programmi gratuito e open source.

Vedi Repository
4.4k4173 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

δiaphora

Installazione

Installa con il gestore plugin Hex-Rays:

root@kitploit:~
hcli plugin install https://github.com/joxeankoret/diaphora/archive/refs/tags/3.4.2.zip

Le istruzioni di installazione manuale sono riportate di seguito.

Diaphora (διαφορά, greco per 'differenza') versione 3.4 è il più avanzato strumento di diffing di programmi (funzionante come plugin IDA) disponibile ad oggi (2026). È stato rilasciato per la prima volta durante il SyScan 2015 ed è stato mantenuto attivamente da allora: Diaphora è stato portato già da 11 anni a ogni singola versione minore di IDA, dalla 6.8 alla 9.4.

Diaphora supporta versioni di IDA >= 7.4 perché il codice viene eseguito solo in Python 3.X (Python 3.11 è stata l'ultima versione testata).

Caratteristiche uniche

Diaphora ha molte delle più comuni funzionalità di diffing (bindiffing) dei programmi che potresti aspettarti, come:

  • Diffing dell'assembler.
  • Diffing dei grafi di controllo di flusso.
  • Porting di nomi di simboli e commenti.
  • Aggiunta di corrispondenze manuali.
  • Calcolo del rapporto di similarità.
  • Automazione batch.
  • Calcolo del matching del call graph.
  • Decine di euristiche basate su teoria dei grafi, assembler, byte, caratteristiche delle funzioni, ecc...

Tuttavia, Diaphora ha anche molte funzionalità uniche, non disponibili in nessun altro strumento pubblico. La seguente è una lista non esaustiva di funzionalità uniche:

  • Capacità di portare struct, enum, union e typedef.
  • Rilevamento di vulnerabilità potenzialmente corrette per sessioni di patch diffing.
  • Supporto per le unità di compilazione (individuazione e diffing delle unità di compilazione).
  • Supporto del microcode.
  • Diffing parallelo.
  • Euristiche basate su pseudo-codice.
  • Generazione di patch di pseudo-codice.
  • Diffing di pseudo-codici (con evidenziazione della sintassi!).
  • Supporto per scripting (sia per i processi di esportazione che di diffing).
  • ...

Installazione

Diaphora non richiede installazione: basta scaricare il codice ed eseguire lo script diaphora.py da IDA o dalla riga di comando (solo per il diffing di database già esportati). Tuttavia, può essere integrato come plugin in IDA procedendo come segue:

  • Copia plugins/diaphora_plugin.py e plugins/diaphora_plugin.cfg nella directory dei plugin di IDA.
  • Modifica diaphora_plugin.cfg e imposta il valore del percorso sulla directory di Diaphora.

Donazioni

Puoi aiutare (o ringraziare) l'autore di Diaphora facendo una donazione. Se desideri farlo, puoi usare uno dei seguenti link:

  • Liberapay
  • Donate

Supporto

Sentiti libero di aprire issue su GitHub se hai problemi o hai bisogno di aiuto. Se preferisci chattare in modo interattivo, puoi usare il seguente canale Discord: https://discord.gg/atg34w2xjV

Licenza

Le versioni di Diaphora precedenti alla 1.2.4, inclusa la versione 1.2.4, erano concesse in licenza secondo la GNU GPL versione 3. Dalla versione 2.0, Diaphora è concessa in licenza secondo la GNU Affero GPL versione 3. La licenza è stata modificata affinché le aziende che vogliono modificare e adattare Diaphora non possano offrire servizi web basati su queste versioni modificate senza restituire le modifiche.

Per il 99,99% degli utenti, il cambio di licenza non li influenza affatto. Se la tua azienda necessita di un modello di licenza diverso, controlla la sezione successiva...

Supporto commerciale e consulenza

Supporto commerciale e consulenza sono offerti per aziende legalmente costituite. Se hai bisogno di supporto o consulenza per problemi con il tuo target, per sviluppare prodotti basati su Diaphora, per usare Diaphora internamente interagendo con i tuoi strumenti, per progetti di rilevamento del plagio, ecc... puoi contattarmi all'indirizzo [email protected] per maggiori dettagli.

Problemi di licenza

Se la tua azienda non consente l'uso della licenza AGPL, puoi ottenere licenze commerciali di Diaphora per usarla nella tua azienda o per usarla come individuo in qualsiasi azienda in cui lavori (concetto simile alle licenze nominative di IDA). Per maggiori dettagli, contattami all'indirizzo [email protected].

Ricorda che non sono io a impedirti di usare Diaphora: è la tua azienda. Grazie per la comprensione.

Wiki

Se stai cercando come automatizzare il processo di esportazione o di diffing, o vuoi velocizzare le operazioni, ecc... Potresti voler dare un'occhiata alla wiki dove trovano risposta queste domande.

Schermate

Diaphora individua la funzione esatta in cui è stata corretta una vulnerabilità in CVE-2020-1350:

CVE-2020-1350

Diaphora, ancora, individua la funzione esatta in cui è stata corretta CVE-2023-28231:

CVE-2023-28231

CVE-2023-28231. Come spiegato in un blog di ZDI, la vulnerabilità è stata corretta verificando che il numero di messaggi di inoltro relay in "ProcessRelayForwardMessage()" non sia maggiore o uguale a 32 (0x20), come mostrato nel seguente diffing di pseudo-codice:

CVE-2023-28231

Diaphora mentre esegue il diffing del microcode di Hex-Ray:

Diffing microcode in a graph

Diffing di assembly, pseudo-codice e microcode:

Assembly, pseudo-code and microcode

Diffing di CVE-2023-21768 con Diaphora 3.0:

Diffing CVE-2023-21768 with #Diaphora 3.0

Questa è una schermata di Diaphora mentre esegue il diffing della vulnerabilità del kernel iOS PEGASUS corretta in iOS 9.3.5:

Diffing iOS 9.3.5 diff

E questa è una vecchia schermata di Diaphora mentre esegue il diffing del bollettino Microsoft MS15-034:

Diaphora diffing MS15-034

Queste sono alcune schermate di Diaphora mentre esegue il diffing del bollettino Microsoft MS15-050, estratte dal post del blog Analyzing MS15-050 With Diaphora di Alex Ionescu.

Diaphora diffing MS15-050, best matches Diaphora diffing MS15-050, partial matches Diaphora diffing MS15-050, diffing pseudo-code

Diaphora diffing a LuaBot, matches and pseudo-code

Ecco una schermata di Diaphora che esegue il diffing di iBoot da iOS 10.3.3 rispetto a iOS 11.0:

Diaphora diffing iBoot from iOS 10.3.3 against iOS 11.0

Scarica lo strumento