Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
hexvero — バイナリまたはアプリバンドルの第一印象: エビデンスに基づく静的・非実行解析。CLI、15ツールのMCPサーバー、ローカルWeb UI、Nodeのみ。 | Kitploit
ツール/GitHubGitHub/maximilianfeix/hexvero
Androidセキュリティ静的分析脆弱性分析コード分析モバイルアプリペンテストリバースエンジニアリング情報収集マルウェア分析デジタルフォレンジックユーティリティとフレームワークバイナリ解析AIセキュリティ
3561日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
GitHubmaximilianfeix/hexvero

hexvero

バイナリまたはアプリバンドルの第一印象: エビデンスに基づく静的・非実行解析。CLI、15ツールのMCPサーバー、ローカルWeb UI、Nodeのみ。

リポジトリを見るウェブサイト
hexvero – バイナリやアプリバンドルを最初にざっと見る。Node だけで得られる、根拠付きの静的事実。

CI npm Node License

English · Deutsch · Español · Français · Português (Brasil) · Русский · 中文 · 日本語 · 한국어

試してみる · ユースケース · インストール · 読み取るもの · CLI · Web UI · AI エージェント向け · エンジン · 制限 · REA との比較 · 仕組み · コントリビューション · FAQ


開発者と AI エージェントのための、高速でローカル、根拠に基づいたソフトウェアの第一印象。

hexvero は実行ファイル、Electron アプリ、APK、アーカイブ、データベース、ネットワークキャプチャを実行せずに読み取ります。ソフトウェアが何を含み、何を公開し、各事実がどこから読み取られたか、どれほど確かか、そして何を確定できなかったかを伝えます。1 つの CLI、コーディングエージェント向けの 1 つの MCP サーバー、1 つのローカル Web UI。何もあなたのマシンから出ません。

ターミナルで Electron アプリを解析する hexvero: ファイルと行を示す検出事項、あるチャンネルの IPC 呼び出し箇所、2 つのビルド間で変わった設定

試してみる

npx hexvero analyze ./MyApp.app/Contents/Resources/app.asar

Node.js 22.12 以降が必要なだけです。空の npm キャッシュから最初の結果を得るまで、ノートPCでコマンド1つと約9秒、ダウンロードも含めて完了しました。examples/ にある小さな Electron アプリでの実際の実行例です:

$ hexvero analyze examples/notesdesk-1.4.0.asar
Summary
  Electron ASAR: 4 JavaScript modules, 6 IPC channels

Findings
  ○ nodeIntegration: true in a BrowserWindow  @ main.js:14
      contextIsolation is on for the same window, so page scripts do not get require(). Node integration keeps the renderer out of the Chromium sandbox.
  ○ sandbox: false in a BrowserWindow  @ main.js:15
      The renderer process runs without the Chromium sandbox.
  ● 6 IPC channels  @ main.js:25
      app:quit, notes:list, notes:save, settings:get, settings:set, shell:open (collections ipcChannels, ipc)
  ● 6 members exposed to pages as window.notesdesk  @ preload.js:4
      getSetting, setSetting, listNotes, saveNote, quit, openInShell (collection contextBridge)
  ○ 2 network endpoints read from the code  @ renderer/app.bundle.js:11
      ${…}/notes/sync, https://telemetry.notesdesk.example/collect (collection endpoints)
  ● 1 storage key read from the code  @ renderer/app.bundle.js:10
      notesdesk.token (collection storage)
  … (preload script, list of collections)

Next
  Which IPC channels can a page reach, and who handles them?
    hexvero collection examples/notesdesk-1.4.0.asar ipcChannels
  What does the preload script expose to web content?
    hexvero collection examples/notesdesk-1.4.0.asar contextBridge
  … (two more)

塗りつぶされた点はファイルから読み取った事実、中空の点はパターンからの推論であり、@ main.js:14 はそれを読み取った場所を示す。設定は書かれているとおりに報告され、Electron のデフォルトとして仮定されることは決してない。${…} はアドレスのうち実行時に計算される部分を示す。windows コレクションは、各ウィンドウの nodeIntegration、contextIsolation、sandbox を true、false、computed、not written として並べて示し、それらを合わせて何が導かれるかを述べる。package.json 内のバージョンにおける Electron のデフォルトに依拠する値には default on / default off が付く。ルールとその出典は docs/electron-findings.md にある。IPC の検出結果は、IPC 形式のすべての呼び出しを追跡できた場合にのみ塗りつぶされた点となり、そうでなければ制約事項として追跡できなかった呼び出しをファイルと行とともに示す。

どのような用途に使われるか

1. なじみのないアプリケーションを理解する。 バイナリ、Electron アプリ、または APK をダウンロードしたとしよう。hexvero はそれが何であるか、何を露出しているか、証拠がどこにあるかを示し、次に何を見るべきかを提案する。ネイティブプログラムでは、ハードニングと注目すべきインポートを挙げる:

$ cc -O2 -o demo examples/native/demo-v2.c && hexvero analyze demo
Findings
  ● Imports functions that start other programs or a shell: system
      Read from the import table. Whether and with what input they are called is not established by static reading; a call graph (hexvero calls) shows who calls them. (collection imports)
  ● Hardening: PIE yes, stack canary no, ARC no, code signature yes, stripped yes

$ hexvero calls demo radare2 main --goal system      # with radare2, rizin or Ghidra installed
radare2 path main → sym.imp.system · found
main
  └ sym._run_tool
    └ sym.imp.system

2. 2つのバージョンを比較する。 2つのビルド間で何が変わったかを、リストごとに、項目を証拠として示す。移動しただけのコードは変更として報告されない。

$ hexvero compare examples/notesdesk-1.4.0.asar examples/notesdesk-1.5.0.asar webPreferences
webPreferences: 0 added, 0 removed, 2 changed, 2 unchanged · matched by file+windowName+key
  ~ main.js::win::nodeIntegration  value: true → false
  ~ main.js::win::sandbox  value: false → true

$ hexvero compare examples/notesdesk-1.4.0.asar examples/notesdesk-1.5.0.asar windows
windows: 0 added, 0 removed, 1 changed, 0 unchanged · matched by file+windowName
  ~ main.js::win  nodeIntegration: true → false, nodeIntegrationInEffect: "on" → "off", sandbox: false → true, sandboxInEffect: "off" → "on"

$ hexvero compare examples/notesdesk-1.4.0.asar examples/notesdesk-1.5.0.asar contextBridge
contextBridge: 1 added, 1 removed, 0 changed, 5 unchanged · matched by api+member
  + notesdesk::checkUpdate
  - notesdesk::openInShell

デフォルトでは何も無視されません。ネイティブバイナリ内で移動しただけのコードは relocated としてカウントされます。ウィンドウは割り当てられた変数(win)で照合されるため、ウィンドウを追加しても他のウィンドウのペアリングが崩れることはありません。片側にしか見つからない項目は、もう片側がその項目が存在するファイルを読み取った場合にのみ added または removed となり、そうでなければ unknown(?)となります。

3. AIエージェントに調査させる。 npx hexvero setup --apply は、検出されたコーディングエージェント(Claude Code、Codex、Cursor、VS Code、その他14種類)にMCPサーバーを登録し、npx hexvero setup --skill --apply は調査ループを教えるスキルをインストールします。その後エージェントはターゲットを開き、提案された次の呼び出しとともに小さな最初の回答を読み、必要なリストだけをページングし、各主張に対して file:line を引用します。ターゲット内のテキストはデータとして扱われ、決して命令として扱われません。これを確認するために、テストではそのようなテキストをターゲットに仕込んでいます。詳細はAIエージェント向けを参照してください。

なぜhexveroなのか

ツールをダウンロード