
Vibe Reverse Engineer with IDA SQL: ライブ仮想テーブル経由で SQL から IDA を操作するインターフェース
どんなAIエージェントにもコンパイル済みバイナリを理解させる能力を与える。
IDASQLは、IDA ProデータベースのためのSQLインターフェースで、Elias Bachaalanyによって作成されました。関数、クロスリファレンス、文字列、型、インポート、逆アセンブリ、逆コンパイルをカバーする30以上の仮想テーブルを公開します。コーディングエージェントから/idasqlスキルを使って完全にヘッドレスで作業できます(エージェントがバックグラウンドでIDAを実行します)。またはIDAのUIを開いて、コーディングエージェントと協力して一緒にリバースエンジニアリングすることもできます。IDAPythonは不要です。スクリプトも不要です。SQLだけです。
なぜSQLなのか? SQLは、あらゆるAIエージェントがすでに話す普遍的なクエリ言語です。IDASQLはエージェント非依存です。Claude、ChatGPT、Copilot、Cursor、カスタムエージェント、あるいはエージェントなしでも構いません。SQLクエリを発行できるツールはどれでもバイナリを解析できます。
IDASQLは、1つ以上のデータベース間での解析、クロスリファレンス、注釈の転送を同時にサポートします。できることは、あなたの想像力と使用するモデルの能力によってのみ制限されます。
IDA Proには、関数、文字列、クロスリファレンス、型などを記述する独自のデータベース形式がすでにあります。IDASQLはこれらの内部構造をライブな SQL仮想テーブルにマッピングします。別途エクスポートやインデックス作成の手順はありません。クエリはIDAのデータベースに対して直接実行され、変更はライブで反映されます。
| モード | 開始方法 | 最適な用途 |
|---|---|---|
| スタンドアロンCLI | idasql -s binary.i64 -i | 直接SQL、スクリプティング、パイプライン |
| IDAプラグイン | IDAのCLIドロップダウンからidasqlを選択 | GUI内でのSQL、ライブデータベース |
| スキルワークフロー | コーディングCLIでの/idasql:connect | AI駆動の解析 -- エージェントが自律的にSQLクエリを発行 |
| You / Agent --> Natural language or SQL |
|
/idasql skills (LLM translates intent to SQL)
|
IDASQL --> IDA database(s)
|
Results --> LLM summarizes & reasons
## 🔄 **仕組み**
Klydaは、3つの異なるプロバイダーにインストールする必要がある3つの異なるプロファイルで構成されています。これらについての詳細は、[プロファイルのドキュメント](https://github.com/0xkoda/Klyda/blob/main/docs/profiles.md)を参照してください。
これらのプロファイルは以下の通りです:
- **コアノード** - Klydaの頭脳。
- **スカウトノード** - Telegramの脅威フィード。
- **C2リダイレクタノード** - フロント向けフィッシングノード。

## ▶️ **デプロイメント**
デプロイメントガイドはWikiで閲覧するか、以下のリンクをクリックしてください:
[デプロイメントガイド](https://github.com/0xkoda/Klyda/wiki)
## ⚠️ **免責事項**
Klydaは、MFAバイパス技術の仕組みを調査し理解するための教育および研究目的のみで作成されています。武器化はユーザーの全責任です。私は一切の責任を負いません。```
$ 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)
1コマンド。即座に結果。スクリプト不要。
IDASQL CLI とプラグインをインストールしたら、お好みのコーディングエージェントを起動し、プロンプトを送るだけでリバースエンジニアリングを始められます。IDASQL は完全にヘッドレスで動作します -- エージェントが IDA Pro の起動、解析、逆コンパイル、注釈付け、保存をオーケストレーションします -- または IDA GUI 内でホストされ、エージェントとリアルタイムで共同作業できます。
お好みのコーディングエージェント(例: Claude Code)を開いて、次のように入力してください:``` /idasql:connect Please open sample_malware.exe in the background and let's analyze it together.
The agent starts IDASQL headlessly in the background. From this point on, chat naturally with the database. For instance:
エージェントはIDASQLをヘッドレスでバックグラウンドで起動します。この時点から、データベースと自然にチャットします。例えば:```
/idasql:annotations Fully annotate the function I'm looking at, also use the decompiler skill.
モデルは、関数を理解するための最善のアプローチを自律的に推論し、完全にリバースエンジニアリングして注釈を付けます。
完了したら、エージェントに保存してシャットダウンするよう依頼してください:``` /idasql:connect Please save all databases and shut down IDASQL.
### 複数のデータベースを操作する
2つ以上のデータベースを同時に操作できます。エージェントにプロンプトを送信してください:```
/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.
その後、以下を実行します:``` Tell me, how many strings all these databases have in common?
エージェントはすべてのデータベースを同時に扱えます。データベース間で注釈を相互参照、比較、転送できます。
### IDA UIでの操作
上記のすべては、IDA GUIからも同様に機能します。開いているIDAセッションでエージェントを起動するには:
1. IDAの`idasql>`プロンプトで、次のように入力します: ```
.http start
これでIDASQLとお使いのIDA UIが接続され、連携して動作します。
IDASQLスキルは、コーディングエージェントに自然言語によるIDAデータベースの完全な制御を提供します。
allthingsida/idasql-skills マーケットプレイスからインストールします。ida.exe、macOS/Linuxでは ida)idasql --version が動作することClaude Code内で、次を実行します:```text /plugin marketplace add allthingsida/idasql-skills
次に、そのマーケットプレイスから `idasql` プラグインをインストールします。Codex およびその他のインストール方法については、[idasql-skills README](https://github.com/allthingsida/idasql-skills#installation) を参照してください。
#### スキル
| Skill | 説明 |
|-------|-------------|
| `connect` | IDA データベースに接続: CLI、HTTP サーバー、セッションブートストラップ、スキルルーティング、グローバルコントラクト。 |
| `disassembly` | IDA 逆アセンブリを照会: 関数、セグメント、命令、ブロック、オペランド、グラフ。 |
| `data` | IDA の文字列、バイト、バイナリデータを照会: 検索、再構築、バイトパターン。 |
| `xrefs` | IDA クロスリファレンスを解析: 呼び出し元、呼び出し先、インポート、データ参照、grep 検索。 |
| `decompiler` | IDA 関数を逆コンパイル: 疑似コード、ctree AST、ローカル変数、ラベル。 |
| `annotations` | IDA データベースを編集: コメント、名前変更、型、ブックマーク、enum/struct レンダリング。 |
| `types` | IDA 型システム: 構造体、共用体、列挙型、typedef、parse_decls の作成・変更・適用。 |
| `debugger` | IDA デバッガー: ブレークポイント、バイトパッチ、条件、パッチインベントリ。 |
| `storage` | netnode_kv による IDA データベース内の永続キー値ストレージ。 |
| `idapython` | idasql 経由で IDAPython を実行: スニペット、サンドボックス、出力キャプチャ。 |
| `functions` | 完全な idasql SQL 関数リファレンスカタログ。 |
| `analysis` | IDA バイナリを解析: トリアージ、セキュリティ監査、暗号・ネットワーク検出、複数テーブルクエリ。 |
| `resource` | IDA バイナリの再ソース: 再帰的注釈、構造復元、型再構築。 |
| `ui-context` | ライブの IDA UI コンテキストを取得: 画面、選択範囲、ウィジェットフォーカス、アドレスアンカー。 |
#### プロンプト例```
/idasql:analysis analyze this binary; tell me the most called functions.
/idasql:data find functions that reference "password" strings and rank by xrefs.
/idasql:xrefs show callers of CreateFileW and summarize error handling.
/idasql:data identify suspicious hardcoded URLs and the functions that reference them.
/idasql スキルは、コーディング CLI から分析を駆動します。IDAPython スクリプトは不要です。
idasql v0.0.18 - SQL interface to IDA databases
Usage: idasql -s [-q ] [-f ] [-i] [--export ]