
軽量な16進エディタと逆コンパイラで、バイナリファイル解析の問題を解決します。
リバースエンジニアリングのためのオープンプラットフォーム。
EUVAは単なる16進エディタや逆コンパイラではありません。どちらかと言えば、カスタマイズされるのではなく、自らカスタマイズするリバースエンジニアリングプラットフォームです。あらゆるものにプラグインでき、それに対して異議を唱えることはありません。私たちはコミュニティの利益にコミットし、最大限のツールの柔軟性と、他のアナライザ(あなた自身のものかもしれませんし、産業用のものでも?)との迅速な統合をサポートします。このツールを別の逆コンパイラにしたくはありません。逆コンパイルは楽しくないからです。IDA、Binijaなどがすでにそれを行っています。しかし、私たちはより良いもの、より良いアーキテクチャを構築しようとしています。それがおそらく私たちの主な目標です。 EUVAは単独では進化せず、コミュニティと共に進化します。
このプログラムは活発に開発中です。実験的なビルドにはバグが含まれていたり、予期しない動作を引き起こす可能性があります。注意してご使用ください。
このソフトウェアは「現状のまま」提供され、いかなる種類の保証もありません。EUVAは教育目的およびセキュリティ研究のために設計された高精度なツールです。作者は、このツールの誤用に起因するシステムの不安定性、データ損失、または法的結果について一切責任を負いません。
EUVAを使用することにより、お客様はご自身の行動に単独で責任を負い、バイナリファイルやプロセスメモリを変更するリスクを理解し、お住まいの地域の法律や規制を遵守することに同意したものとみなされます。
16進エディタの機能をご覧ください。これには値置換のための当社のDSLも含まれています。これはパッチを簡単に共有できるように設計されていますよね?パッチが必要なものを作成し、他の人と共有したいとします。とても簡単です。.euvスクリプトを送るだけで、プログラムがバイナリファイルにパッチを適用します。頭痛の種はありません。
おそらく私たちの作業の中で最も重要な部分の一つが逆コンパイラです。これは、プログラムの動作の意味を可能な限り最良に伝えることを目標に設計され、現在も設計され続けています。ユーザーフレンドリーにするよう努めています。なぜなら、他の逆コンパイラを読み解くのは苦痛だからです。それらは翻訳者のように振る舞い、その狂気の中で何らかの意味を探し求めることになります。当社の逆コンパイラでも状況は単純ではありませんが、参入障壁を下げ、逆コンパイルされたコードを可能な限り人間に理解しやすいように再構築しようとしています。もちろん、やみくもに行っているわけではなく、すべてに限界はありますが、それでもまだ完全に翻訳されていない生のCコードを読むよりもはるかに優れています。これは常に便利というわけではないので、私たちは逆コンパイルされたコードにC++の抽象化を適用し、その結果に満足できるようにここにいます。
example output:
逆コンパイラの引数について確信が持てない場合は、逆アセンブラを表示して結果を再確認してください。
完璧にアプローチするなら、Themidaのようなプロテクタ検出機能の追加だけでなく、逆コンパイラ自体についても話しています。ちなみに、Roslynを使用して動的にコンパイルされるC#スクリプトにより、あなたのパッチもサポートしています。これらは逆コンパイラのプラグインと呼べるもので、あなたのニーズに合わせて調整することができます。これはYaraルールにも当てはまります。最近完了したVirustotal統合でしょうか?私たちはそこで止まるつもりはなく、この分野で開発を続けていきます。
私たちには二重のシステムがあります。AIリファクタリングプログラムに組み込まれた機能で、APIキーを指定します。ポイントはOpenAI標準にも準拠している必要があります。これは、プロセスに深く関与するつもりがない場合や、クラウドを使用せずにローカルのAIモデルで慎重に分析を行う必要がある場合のクイック介入ボタンです。また、MCPとの統合もあり、モデルが必要なものすべてにアクセスできるため非常に便利です。逆コンパイルされたコードを読み、あなたの希望に応じて修正し、学習と理解を支援します。必要な設定ファイルを構成するだけで、MCPをサポートする任意のサービスを使い始めることができます。MCPは、より深く掘り下げたい方やクラウドの使用に抵抗がない方に適しています。すべてあなたの選択です。この柔軟なアプローチを維持するつもりです。
[!NOTE] あなたの選択、あなたの管理: AIエージェントは「Bring Your Own Key」システムです。クラウドLLM(OpenAI、Claude、Groq)およびローカルLLM(Ollama、LocalAI)をサポートします。プライバシーが最優先です。
🟢 AI後(セマンティックリファクタリング)
example output:
Ctrl+Z)とセッション全体のロールバック(Ctrl+Shift+Z)の両方.euv format) – ライブファイル監視実行対応リリースからダウンロードするか、winget経由でEUVAをインストール
winget use:
winget install Euva-Project.EUVA
または、以下のガイドを使用してソースファイルからプログラムをビルドしてください。
ビルドする前に、以下がインストールされていることを確認してください。
| 要件 | バージョン | リンク |
|---|---|---|
| .NET SDK | 8.0+ | ダウンロード |
| Windows OS | 10 / 11 | 必須(WPF) |
[!NOTE] EUVAはWPFで構築されたWindows専用アプリケーションです。現在Linux/macOSはサポートされていません。
# 1. Go to the main directory
cd EUVA/EUVA.UI
# 2. Restore dependencies
dotnet restore
# 3. Build in Release mode
dotnet build -c Release
# 4. Run (optional, or launch the compiled binary)
dotnet run -c Release
Ctrl+Dで逆アセンブラ、Ctrl+Eで逆コンパイラを開きます。さらに詳しい理論と仕組みについては以下をご覧ください:
ホットキーは、(プログラムメニューの設定から).htkファイルを読み込んで編集することで再割り当てできます。
Q: IDAやGhidra用のAIプラグインではなく、EUVAに組み込まれたAIを使用する理由は?
A: レガシーツールでは、AIはスクリプトがテキストを行き来させる間UIをフリーズさせる「後付け」の補助具に過ぎません。EUVAではAIはコアの一部です。私たちのパイプラインはセマンティックレベルの変更を高速に注入します。それは「プラグイン」ではなく共生関係です。逆コンパイラが事実を提供し、AIが意味を提供します。カクつきはゼロです。
Q: 私のコードはクラウドに漏洩しますか?
A: あなたが望む場合のみです。EUVAはLocal Firstの哲学に従います。Ollamaまたは任意のローカルサーバーに接続し、完全にオフラインで作業できます。あなたのリバースはあなたの秘密です。
Q: AIがコードについて幻覚や嘘をつき始めたらどうしますか?
A: もちろん、その可能性は排除されません。私たちは「信用するが確認する」の原則に基づいて作業します。AIは論理を発明することはできず、コード内に実際に存在する変数の名前を提案するだけです。すべての変更は/* AI */コメントでマークされます。気に入らない場合は、1回のクリックまたはホットキーで全てを元の状態にロールバックできます。
Q: EUVAの柔軟性はどの程度ですか?自分用にカスタマイズできますか?
A: これが主な機能です。EUVAはプラットフォームです。
Q: IDA、Ghidra、Binary Ninjaを持っているのに、なぜEUVAを使うべきですか?
A: それらは重厚なモノリシックプログラムだからです。
ストリートスマートなネットランナーも、企業レベルの研究者も、どちらも歓迎します。
PR歓迎: バグを見つけましたか?パイプラインステージを最適化しましたか?PRを送ってください!🚀
スターもいただけるとありがたいです – スターはプロジェクトの未来です ⭐。
EUVAはGNU General Public License v3.0の下でリリースされたフリーソフトウェアです。
GNU GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
Copyright (C) 2026 EUVA Contributors
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
---
EngineUnpacker Visual Analyzer (EUVA)
Professional PE Static Analysis Tool
Educational tool for reverse engineering research.
Use responsibly and in accordance with applicable laws.
EUVA – 楽しみのために16進数を読む研究者のために作られました。
リバースエンジニアリングコミュニティに❤️を込めて | © 2026 EUVA Project
| コマンド | ショートカット | 説明 |
|---|
NavInspector | Alt+1 | インスペクタタブに切り替え |
NavSearch | Alt+2 | 検索タブに切り替え |
NavDetections | Alt+3 | 検出タブに切り替え |
NavProperties | Alt+4 | プロパティタブに切り替え |
CopyHex | Ctrl+C | 選択範囲を16進文字列としてコピー |
CopyCArray | Ctrl+Shift+C | 選択範囲をCバイト配列としてコピー |
CopyPlainText | Ctrl+Alt+C | 選択範囲をプレーンテキストとしてコピー |
Undo | Ctrl+Z | 最後のバイト書き込みを元に戻す |
FullUndo | Ctrl+Shift+Z | 最後のスクリプト実行全体を元に戻す |
View byte | F3 | 最新のバイト変更を表示 |
View Yara Matches | Shift+F3 | Yaraが見つけたマッチを表示 |
View Disassembler | Ctrl+D | 逆アセンブラを表示 |
View Decompiler | Ctrl+E | 逆コンパイラを表示。F5でグラフィックモードとテキストモードを切り替え |
Highlight code | Ctrl+A | 逆コンパイラでテキスト形式のコードを選択 |
Function table | Ctrl+R | 逆コンパイラに関数テーブルを表示 |
IAT Import | Ctrl+E | 逆コンパイラにすべてのIATインポートを表示 |
Xrefs To | X | 逆コンパイラコード内で呼び出されるすべての変数を表示 |
Xrefs From | X | 現在の命令が参照する場所を表示(逆アセンブラ) |
Parent navigation | P/Enter | 逆アセンブラ命令の親を表示(逆アセンブラ) |