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
HexRaysCodeXplorer — Plugin Hex-Rays Decompiler per una migliore navigazione del codice | Kitploit
Strumenti/GitHubGitHub/rehints/hexrayscodexplorer
Analisi StaticaReverse EngineeringDebuggerAnalisi MalwareAnalisi di Binari
GitHubrehints/hexrayscodexplorer

HexRaysCodeXplorer

Plugin Hex-Rays Decompiler per una migliore navigazione del codice

Vedi Repository
2.6k4138 mesi 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

| | | | | ___ \ / __ \ | | \ \ / / | |
| || | _____ | |/ /__ _ _ _ | / / ___ | | ___ \ V / _ __ | | ___ _ __ ___ _ __ | _ |/ _ \ / / // | | | / __| | / _ \ / _ |/ _ / | ' | |/ _ | '/ _ \ '| | | | | __/> <| |\ \ (| | || __ \ _/\ () | (| | __/ /^\ \ |) | | () | | | __/ |
_| |
/_//__| __,|_, |/_/_/ _,|_/ / ./||___/|| ___||
/ | | |
|
/ |_|

============================================================================

Licenza: GPL v3 Code Climate Conteggio Issue

Il plugin Hex-Rays Decompiler per una migliore navigazione del codice nel processo di RE. CodeXplorer automatizza la REcostruzione del codice di applicazioni C++ o malware moderni come Stuxnet, Flame, Equation, Animal Farm ... :octocat:

Il plugin CodeXplorer è uno dei primi disponibili pubblicamente plugin per Hex-Rays Decompiler. Manteniamo aggiornato questo progetto dall'estate del 2013 e continuiamo a contribuire con nuove funzionalità frequentemente. Inoltre, le caratteristiche più interessanti di CodeXplorer sono state presentate in numerose conferenze sulla sicurezza come: REcon, ZeroNights, H2HC, NSEC e BHUS 👾

Contributori:

Alex Matrosov (@matrosov)

Eugene Rodionov (@rodionov)

Rodrigo Branco (@rrbranco)

Gabriel Barbosa (@gabrielnb)

Versioni supportate dei prodotti Hex-Rays: ci concentriamo sempre sulle ultime versioni di IDA e Decompiler perché cerchiamo di utilizzare nuove interessanti funzionalità nei nuovi rilasci dell'SDK. Ciò significa anche che abbiamo testato solo sulle ultime versioni dei prodotti Hex-Rays e non garantiamo un funzionamento stabile su versioni precedenti.

Perché non IdaPython: tutto il codice è sviluppato in C/C++ perché è un modo più stabile per supportare un plugin complesso per Hex-Rays Decompiler.

Piattaforme supportate: x86/x64 per Win, Linux e Mac.

HexRaysCodeXplorer - Plugin Hex-Rays Decompiler per una navigazione più semplice del codice. Il menu contestuale con clic destro nella finestra Pseudocode mostra i comandi del plugin CodeXplorer:

1

💎 Ecco le principali funzionalità del plugin CodeXplorer: 💎

  • REcostruzione automatica del tipo per oggetti C++. Per poter ricostruire un tipo usando HexRaysCodeXplorer è necessario selezionare la variabile che contiene il puntatore all'istanza di codice indipendente dalla posizione o a un oggetto e, con il clic destro del mouse, selezionare dal menu contestuale l'opzione «REconstruct Type»:

2

La struttura ricostruita viene visualizzata nella "Finestra di output". Informazioni dettagliate sulla funzionalità di ricostruzione del tipo sono fornite nel post del blog "Type REconstruction in HexRaysCodeXplorer".

Inoltre, il plugin CodeXplorer supporta la REcostruzione automatica del tipo nell'archivio dei tipi locali di IDA.

6

  • Identificazione della tabella delle funzioni virtuali - identifica automaticamente i riferimenti alle tabelle delle funzioni virtuali durante la ricostruzione del tipo. Quando viene identificato un riferimento a una tabella di funzioni virtuali, il plugin genera una corrispondente struttura C. Come mostrato di seguito, durante la ricostruzione di struct_local_data_storage sono state identificate due tabelle di funzioni virtuali e, di conseguenza, sono state generate due strutture corrispondenti: struct_local_data_storage_VTABLE_0 e struct_local_data_storage_VTABLE_4.

12

  • Visualizzazione del grafico C-tree – una struttura speciale simile a un albero che rappresenta una routine decompilata in termini di citem_t (hexrays.hpp). Funzionalità utile per capire come funziona il decompilatore. Il nodo del grafico evidenziato corrisponde alla posizione corrente del cursore nella finestra Pseudocode di HexRays:

3

  • Vista dell'elemento Ctree – mostra la rappresentazione ctree per l'elemento evidenziato:

16

  • Estrai Ctrees in File – calcola l'hash SHA1 e scarica tutti i ctrees in un file.

14

  • Estrai Tipi in File – scarica tutte le informazioni sui tipi (inclusi i tipi ricostruiti) in un file.

  • Navigazione attraverso chiamate a funzioni virtuali nella finestra Pseudocode di HexRays. Dopo aver rappresentato gli oggetti C++ con strutture C, questa funzionalità permette di navigare con un clic del mouse alle chiamate a funzioni virtuali come campi della struttura:

4

  • Salta a Disasm - piccola funzionalità per navigare al codice assembly nella finestra "IDA View" dalla posizione corrente della riga Pseudocode. Aiuta a trovare un posto nel codice assembly associato alla riga decompilata.

8

  • Object Explorer – interfaccia utile per navigare attraverso le strutture delle tabelle virtuali (VTBL). Object Explorer visualizza le informazioni VTBL in una finestra personalizzata di IDA. La finestra di output viene mostrata selezionando l'opzione «Object Explorer» nel menu contestuale del tasto destro del mouse:

5

Object Explorer supporta le seguenti funzionalità:

  • Generazione automatica di strutture per VTBL nei tipi locali di IDA

  • Navigazione nell'elenco delle tabelle virtuali e salto all'indirizzo VTBL nella finestra "IDA View" con un clic

  • Mostra suggerimenti per la posizione corrente nell'elenco delle tabelle virtuali

  • Mostra l'elenco dei cross-reference cliccando nel menu su "Show XREFS to VTBL"

11

  • Supporto per l'analisi automatica degli oggetti RTTI:

13

La modalità Batch contiene le seguenti funzionalità:

  • Modalità Batch - funzionalità utile per utilizzare CodeXplorer per elaborare più file senza alcuna interazione da parte dell'utente. Abbiamo aggiunto questa funzionalità dopo la ricerca di Black Hat nel 2015 per elaborare 2 milioni di campioni.
root@kitploit:~
Esempio (dump tipi e ctrees per funzioni con prefisso nome "crypto_"):
idaq.exe -OHexRaysCodeXplorer:dump_types:dump_ctrees:CRYPTOcrypto_path_to_idb

Compilazione:

Windows:

  • Apri la soluzione in Visual Studio
  • Apri il file src/HexRaysCodeXplorer/PropertySheet.props in notepad(++) e aggiorna i valori dei percorsi IDADIR e IDASDK in modo che puntino rispettivamente al percorso di installazione di IDA e al percorso di IDA7 SDK. HexRays SDK dovrebbe essere in $IDADIR\plugins\hexrays_sdk (come di default)
  • Compila le configurazioni Release | x64 e Release x64 | x64

Linux:

  • cd src/HexRaysCodeXplorer/
  • IDA_DIR=<PATH_TO_IDA> IDA_SDK=<PATH_TO_IDA_SDK> EA64=0 make -f makefile.lnx
  • IDA_DIR=<PATH_TO_IDA> IDA_SDK=<PATH_TO_IDA_SDK> EA64=0 make -f makefile.lnx install

Mac:

  • cd src/HexRaysCodeXplorer/
  • IDA_DIR=<PATH_TO_IDA> IDA_SDK=<PATH_TO_IDA_SDK> make -f makefile.mac
  • Il makefile per Mac potrebbe necessitare di qualche modifica manuale, le pull request sono benvenute!
  • L'estensione del file .pmc per IDA 7.0 dovrebbe essere .dylib
  • bash$ export IDA_DIR="/Applications/IDA\ Pro\ 7.0/ida.app/Contents/MacOS" && export IDA_SDK="/Applications/IDA\ Pro\ 7.0/ida.app/Contents/MacOS/idasdk" && make -f makefile7.mac
  • Oppure apri il progetto in Xcode HexRaysCodeXplorer.xcodeproj

Con CMake:

  • cd src/HexRaysCodeXplorer/
  • mkdir build && cd build
  • cmake .. -DIdaSdk_ROOT_DIR=<PATH_TO_IDA_SDK> -DHexRaysSdk_ROOT_DIR=<PATH_TO_HEXRAYS_SDK>
  • cmake --build . --config Release

============================================================================

Interventi a conferenze sul plugin CodeXplorer:

  • 2015
  • "Distributing the REconstruction of High-Level IR for Large Scale Malware Analysis", BHUS [slide]
  • "Object Oriented Code RE with HexraysCodeXplorer", NSEC [slide]
  • 2014
  • "HexRaysCodeXplorer: object oriented RE for fun and profit", H2HC [slide]
  • 2013
  • "HexRaysCodeXplorer: make object-oriented RE easier", ZeroNights [slide]
  • "Reconstructing Gapz: Position-Independent Code Analysis Problem", REcon [slide]
Scarica lo strumento