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
idacode — Un'integrazione per IDA e VS Code che li collega per eseguire e debuggare facilmente script IDAPython. | Kitploit
Strumenti/GitHubGitHub/ioncodes/idacode
Reverse EngineeringScripting e AutomazioneDebuggerAnalisi di Binari
GitHubioncodes/idacode

idacode

Un'integrazione per IDA e VS Code che li collega per eseguire e debuggare facilmente script IDAPython.

Vedi Repository
9878511 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

IDACode

IDACode semplifica l'esecuzione e il debug di script Python nel tuo ambiente IDA senza lasciare Visual Studio Code. L'estensione VS Code è disponibile sul marketplace.
IDACode è ancora in una fase molto preliminare e sono previsti bug. Per favore apri una nuova issue se incontri problemi.

Caratteristiche

  • Velocità: Crea ed esegui script rapidamente.
  • Debug: Collega un debugger Python in qualsiasi momento.
  • Compatibilità: IDACode non richiede di modificare i tuoi script in un modo specifico. Tutti gli script possono essere eseguiti da IDA senza modifiche.
  • Modularità: IDACode non fa uso estensivo di wrapper sicuri per la sincronizzazione dei thread, questo ti permette di importare qualsiasi modulo da qualsiasi percorso in qualsiasi momento. Invece IDACode sincronizza il thread di esecuzione dello script con il thread principale di IDA per evitare problemi di prestazioni e imprevisti.
  • Sincronizzazione: Poiché IDACode utilizza debugpy per la comunicazione, sincronizza naturalmente la finestra di output con il pannello di output di VS Code.

IDACode è stato testato su Windows e macOS con IDA 8.4/9.0 e Python 3.12 (versioni Python precedenti hanno problemi con il debug).

Configurazione

Per installare le dipendenze per il plugin IDA esegui:

root@kitploit:~
# assicurati di usare la versione corretta di Python
# IDACode supporta l'ultimo debugpy a partire dalla versione 3.0.0, assicurati di aggiornare!
python -m pip install --user debugpy tornado

Clona questo repository o scarica un pacchetto di release da qui. ida.zip riflette il contenuto della cartella ida in questo repository. Copia tutti i file nella directory dei plugin di IDA.

Il passo successivo è configurare le impostazioni per adattarle al tuo ambiente (opzionale). Modifica idacode_utils/settings.py di conseguenza:

  • HOST: Questo è l'indirizzo host. È sempre 127.0.0.1 a meno che non lo si voglia rendere accessibile da una posizione remota. Tieni presente che questo plugin non utilizza autenticazione.
  • PORT: Questa è la porta su cui vuoi che IDA ascolti. Viene utilizzata per la comunicazione websocket tra IDA e VS Code.
  • DEBUG_PORT: Questa è la porta su cui vuoi ascoltare per le sessioni di debug in arrivo.
  • LOGGING: Determina se il debugger deve scrivere log nei file. È particolarmente utile quando incontri problemi con IDACode. Per favore invia una nuova issue se trovi qualcosa. I file si trovano sempre nella tua directory temporanea (es. Windows: %TEMP%). I file si chiamano debugpy.*.log.

Ora puoi avviare il plugin cliccando su IDACode nel menu dei plugin.

L'estensione VS Code è disponibile sul marketplace. Per configurare l'estensione, fare riferimento al README dell'estensione.

Utilizzo

IDA

Premi IDACode nel menu dei plugin. Dovresti vedere il seguente testo:

root@kitploit:~
IDACode in ascolto su 127.0.0.1:7065

VS Code

A partire dalla versione 0.2.0, IDACode supporta "Esegui al salvataggio" che è abilitato per impostazione predefinita. VS Code eseguirà automaticamente il tuo script in IDA non appena salvi il documento corrente (ad esempio con CTRL+S). Questo comportamento può essere disabilitato nelle impostazioni. Apri la Console di sviluppo dell'estensione VS Code usando Ctrl-Shift-P e digita "idacode" per vedere l'elenco dei comandi sottostanti. Non utilizzare le funzionalità "Esegui" o "Debug" di VS Code, altrimenti riceverai un messaggio "HTTP malformato" in IDA.

Ci sono 4 comandi a tua disposizione:

comandi

Una volta aperta una cartella in cui vuoi mettere i tuoi script (devi specificare la cartella quando VS Code te lo chiede!) sei pronto per connetterti a IDA. Puoi farlo eseguendo Connetti a IDA o Connetti e allega un debugger a IDA. Tieni presente che una sessione di debug è permanente fino al riavvio di IDA. Non puoi cambiare la cartella di lavoro una volta avviato il debugger.
Assicurati che la cartella di lavoro sia quella in cui si trovano i tuoi script principali.
Una volta connesso, puoi selezionare Esegui script in IDA.

Debug

IDACode utilizza il debugger remoto di VS Code per connettersi a IDA. Tutte le funzionalità di VS Code sono supportate. Tuttavia, devi specificare il punto di ingresso dello script usando la funzionalità integrata di Python: breakpoint. Questa istruzione dice al debugger di mettere in pausa l'esecuzione; se non c'è un debugger presente, ignorerà semplicemente la funzione. IDACode importa un pacchetto helper chiamato dbg che implementa un sovraccarico di breakpoint chiamato bp. Questa funzione supporta log e condizioni:

root@kitploit:~
name = idc.get_segm_name(segment)
dbg.bp(name==".text", f"trovato {name} in {segment}")

Tieni inoltre presente che una chiamata breakpoint() non dovrebbe mai avvenire alla fine di un file; deve sempre essere prima di qualsiasi altra riga di codice poiché interrompe sulla prossima istruzione nel tuo codice. Nota anche che se decidi di utilizzare il pacchetto dbg, devi rimuovere tutti i riferimenti o utilizzare la variabile __idacode__ come condizionale prima di eseguirlo come script IDA normale.
È anche importante che l'attaccamento di un debugger crei una nuova istanza del debugger. Nella maggior parte dei casi questo non è ciò che vuoi. Se ti disconnetti dal debugger, utilizza il debugger remoto di VS Code per riconnetterti.

Problemi noti

  • Il modulo importato non si ricarica dopo le modifiche, fai riferimento a questo per una soluzione alternativa.

Demo

demo

Collaboratori

  • mrexodia
  • MeitarR
  • Plutoberth
  • OevreFlataeker
  • RolfRolles
Scarica lo strumento