
Vibe Reverse Engineer con IDA SQL: Un'interfaccia per IDA in SQL tramite tabelle virtuali live
Dai a qualsiasi agente AI la capacità di comprendere binari compilati.
IDASQL è un'interfaccia SQL per i database IDA Pro, creata da Elias Bachaalany. Espone oltre 30 tabelle virtuali che coprono funzioni, riferimenti incrociati, stringhe, tipi, import, disassembly e decompilazione. Utilizza le skill /idasql del tuo agente di codifica per lavorare completamente in modalità headless — l'agente esegue IDA in background per te — oppure apri l'interfaccia di IDA e collabora con il tuo agente di codifica per fare reverse engineering insieme. Niente IDAPython. Niente scripting. Solo SQL.
Perché SQL? SQL è il linguaggio di query universale che ogni agente AI già parla. IDASQL è agnostico rispetto all'agente: Claude, ChatGPT, Copilot, Cursor, agenti personalizzati, o nessun agente. Qualsiasi strumento in grado di eseguire una query SQL può analizzare un binario.
IDASQL supporta l'analisi, i riferimenti incrociati e il trasferimento di annotazioni tra uno o più database contemporaneamente. Ciò che puoi fare è limitato solo dalla tua immaginazione e dalla potenza del modello che utilizzi.
IDA Pro ha già il proprio formato di database che descrive funzioni, stringhe, riferimenti incrociati, tipi e altro. IDASQL mappa queste strutture interne a tabelle virtuali SQL live. Non esiste una fase separata di esportazione o indicizzazione: le query vengono eseguite direttamente sul database di IDA e le modifiche si riflettono in tempo reale.
| Modalità | Come avviare | Ideale per |
|---|---|---|
| CLI standalone | idasql -s binary.i64 -i | SQL diretto, scripting, pipeline |
| Plugin IDA | Seleziona idasql dal menu a discesa della CLI di IDA | SQL nell'interfaccia grafica, database live |
| Workflow con skill | /idasql:connect nella tua CLI di codifica | Analisi guidata dall'AI: l'agente emette query SQL in autonomia |
| You / Agent --> Natural language or SQL |
|
/idasql skills (LLM translates intent to SQL)
|
IDASQL --> IDA database(s)
|
Results --> LLM summarizes & reasons
I received your request to translate chunk 3 of 53 from English to Italian, but the input content is empty. There is no source text in the "INPUT:" section to translate.
Please provide the actual Markdown content for chunk 3, and I will translate it immediately according to all the specified rules.```
$ idasql -s WerFaultTool.exe.i64 -q "SELECT * FROM funcs LIMIT 5"
Opening: WerFaultTool.exe.i64...
Database opened successfully.
+------+-------------------------------------------------+------+----------+-------+
| addr | name | size | end_addr | flags |
+------+-------------------------------------------------+------+----------+-------+
| 16 | WerFaultTool.AboutForm::.ctor | 13 | 29 | 4096 |
| 32 | WerFaultTool.AboutForm::Dispose | 30 | 62 | 4096 |
| 64 | WerFaultTool.AboutForm::InitializeComponent | 295 | 359 | 4096 |
| 400 | WerFaultTool.WerFaultGUI::.ctor | 936 | 1336 | 4096 |
| 1344 | WerFaultTool.WerFaultGUI::CreateDynamicControls | 231 | 1575 | 4096 |
+------+-------------------------------------------------+------+----------+-------+
5 row(s)
Un solo comando. Risultati immediati. Nessuno scripting richiesto.
Dopo aver installato il CLI e il plugin IDASQL, avvia il tuo agente di coding preferito e inizia il reverse engineering tramite prompt. IDASQL funziona interamente in modalità headless -- il tuo agente orchestra IDA Pro: avvio, analisi, decompilazione, annotazione, salvataggio -- oppure è integrato nella GUI di IDA, dove collabori con il tuo agente in tempo reale.
Apri il tuo agente di coding preferito (es. Claude Code) e digita:``` /idasql:connect Please open sample_malware.exe in the background and let's analyze it together.
L'agente avvia IDASQL in modalità headless in background. Da questo momento in poi, chatta in modo naturale con il database. Per esempio:```
/idasql:annotations Fully annotate the function I'm looking at, also use the decompiler skill.
Il modello ragiona autonomamente sull'approccio migliore per comprendere la funzione, ne esegue il reverse engineering completo e la annota.
Quando hai finito, chiedi all'agente di salvare e spegnersi:``` /idasql:connect Please save all databases and shut down IDASQL.
### Lavorare con più database
Puoi lavorare con due o più database contemporaneamente. Chiedi al tuo agente:```
/idasql:connect In this folder, there are many *.exe files. Please use parallel agents to open IDASQL in the background and report how many functions each has.
Poi prosegui:``` Tell me, how many strings all these databases have in common?
L'agente funziona con tutti i database contemporaneamente. Puoi incrociare i riferimenti, confrontare e trasferire annotazioni tra di essi.
### Lavorare con l'interfaccia di IDA
Tutto quanto sopra funziona allo stesso modo dalla GUI di IDA. Per avviare il tuo agente con una sessione IDA aperta:
1. Nel prompt `idasql>` di IDA, digita: ```
.http start
Ora IDASQL e la tua interfaccia utente IDA sono connesse e lavorano insieme.
Le skill IDASQL danno al tuo agente di codifica il controllo completo sui database IDA tramite linguaggio naturale.
allthingsida/idasql-skills.ida.exe su Windows, ida su macOS/Linux)idasql --version dovrebbe funzionare dalla riga di comandoAll'interno di Claude Code, esegui:```text /plugin marketplace add allthingsida/idasql-skills
therefore, from that marketplace, install the `idasql` plugin. For Codex and other installation paths, see the [idasql-skills README](https://github.com/allthingsida/idasql-skills#installation).
#### Skill