
FLARE teamによる、リバースエンジニアリングとマルウェア解析に関する無料の教育コンテンツ

FLARE Learning Hub は、FLARE チーム による高品質なリバースエンジニアリングおよびマルウェア解析の教育コンテンツを無償で提供します。
FLARE Learning Hub のモジュールは、Google ドキュメントとしてウェブ公開されており、各モジュールの説明に対応するリンクが記載されています。このリポジトリには、各モジュールのラボ演習やデモ用のバイナリ、逆アセンブラデータベース、スクリプトなど、すべての関連アーティファクトが含まれています。
既存モジュールの改良と新規モジュールの公開は随時行われます。
モジュールに取り組む際は、強く推奨される方法として、FLARE-VM を使用して安全に分離された仮想マシン(VM)環境を構築してください。これにより、ラボ演習やデモを完了するために必要なツールが提供されます。また、スナップショット機能をサポートする仮想化製品の使用をお勧めします。これにより、VM をクリーンな状態で記録し、新しい解析を開始するときにその状態に戻すことができます。現在、すべてのモジュールは Intel x86-64 環境のみをサポートしています。
配布されるすべてのバイナリとスクリプトは、実践的な演習とデモのみを目的として作成されていますが、マルウェアに似た動作を示すものがあり、自動化システムによって悪意があるとフラグ付けされる可能性があります。本プロジェクトは、安全で隔離された仮想マシン環境の外部でこれらのバイナリやスクリプトを実行した結果生じるいかなる損害や損失についても責任を負いません。
このリポジトリ内のパスワード保護 ZIP ファイルのパスワードは flare です。
著者: Jae Young Kim、Nick Harbour
モジュールリンク: マルウェア解析入門講座
モジュールディレクトリ: /macc
静的解析ツールやサンドボックス製品が進歩を続けるにつれ、マルウェアバイナリに関する有益な情報が提供されるようになっています。しかし、信頼性と正確性が重要な場合、マルウェアサンプルについて確定的な判断を下すには、手動によるリバースエンジニアリングを通じたプログラムの包括的な理解が依然として必要です。
本講座は、リバースエンジニアのスキルセットの基盤であるアセンブリコードを読み解き、解釈し、操作するための入門コースです。このトレーニングを修了すると、典型的な Windows マルウェアサンプルの解析を始めるために必要な実践的なスキルが身につきます。
コースは x86 アセンブリの基礎から始まり、徐々に高水準のプログラミング構造を紹介します。また、Windows ベースのマルウェアのリバースを開始するために必要な Windows の基礎知識も含まれています。
実践重視のアプローチを採用し、コースの進行に沿って多数のアセンブリハッキング演習が組み込まれています。アセンブリの記述と結果のデバッグを繰り返すことが、大規模で複雑なプログラムをリバースするために必要な基礎を迅速に習得する最も効果的な方法であると私たちは考えています。また、フラッシュクイズや、詳細な解答付きの複数のラボも用意されています。
著者: Jae Young Kim
モジュールリンク: Go リバースエンジニアリング リファレンス
Go リバースエンジニアリング リファレンスは、Go 実行可能ファイルをリバースエンジニアリングするための包括的なリファレンスです。リファレンスは次の 3 つのセクションで構成されています。
このリファレンスのすべての内容は、現在 Go バージョン 1.24.0 でコンパイルされた Windows AMD64 実行可能ファイルに限定されています。
著者: Josh Stroschein、Jae Young Kim
モジュールリンク: タイムトラベルデバッグ入門
モジュールディレクトリ: /ttd
タイムトラベルデバッグ (TTD) は、Microsoft が WinDbg の一部として提供する技術であり、プロセスの実行を記録して、前方および後方に再生できるトレースファイルを作成します。従来のデバッグが前方実行トレースのみを許可するのに対し、TTD の「巻き戻し」機能はマルウェア解析やリバースエンジニアリングにおいて特に強力です。この機能により、アナリストはプログラムの動作を経時的に検査でき、悪意のあるイベントを迅速に特定することでトリアージを大幅に高速化できます。また、実行を前方および後方にステップ実行できる機能は、アンチ解析や難読化技術の理解と回避にも役立ちます。
TTD はプログラムの実行パスと状態をキャプチャし、オペレーティングシステムとの完全な対話を可能にする透過的なレイヤを通じてトレース出力を生成します。トレースファイルは実行記録を保持し、同僚と共有してコラボレーションを促進できます。これにより、ライブデバッグの結果に影響を与える環境の違いを回避できます。また、実行中の特定のポイントをブックマークして共有し、共同作業者の分析を誘導することも可能です。さらに、デバッガデータモデルオブジェクトが含まれており、ユーザーは LINQ を使用してトレースをクエリし、モジュールのロード、シェルコードの実行、プロセスインジェクションイベントなどの特定のイベントを検索できます。
このモジュールは、TTD とその Windows マルウェア解析への応用を紹介する入門編です。詳細なデモとラボが組み込まれており、ガイド付きの実践演習を提供します。また、JavaScript を使用して TTD タスクを自動化するためのリファレンスと、いくつかのサンプルスクリプトも含まれています。モジュールを終了する頃には、この強力なツールをマルウェアのトリアージワークフローに組み込み、複雑なデバッグシナリオでの分析を迅速化する準備が整うはずです。
現在、このリポジトリへのコントリビューションは受け付けていませんが、正誤表、提案、フィードバックは [email protected] までお寄せください。
コミュニティのお知らせを受け取るには、件名を「subscribe」として [email protected] にメールを送信してください。