
Yet Another Memory Analyzer for malware detection

YAMAは、インシデント対応時に特定のマルウェアを検査できるスキャナを生成するシステムです。YAMAが生成するスキャナは、Windows OSのメモリを探索し、マルウェアを検出するように設計されています。メモリ内にのみ展開するファイルレスマルウェアの増加に伴い、YAMAはそのようなマルウェアを検出することでインシデント対応の迅速化を図ります。
YAMAスキャナはWindowsユーザーモードアプリケーションとして動作し、ユーザーモードで実行中のプロセスのメモリ空間を分析し、YARAを使用して不審な属性を持つメモリ空間をスキャンし、マルウェアを特定します。
まず、YAMAは各プロセスを分析し、以下の情報を抽出します:
次に、YAMAは分析された情報に基づいて検査対象のメモリ空間を決定します。これは、必要なメモリ空間のみを選択し、メモリ空間全体を検索することによるパフォーマンスへの影響を回避するためです。
最後に、YAMAはバイナリのリソースセクションに埋め込まれたYARAルールを使用して、対象のメモリ空間を検査します。
GitHubなどのプラットフォームで利用可能なYARAルールを組み合わせることで、特定の標的型攻撃キャンペーンの痕跡を調査できるメモリスキャナを作成することが可能です。
例えば、JPCERTCC/jpcert-yaraのAPT10ルールを使用してYAMAスキャナを構築すると、APT10マルウェアの脅威ハンティングに適したツールが作成されます。
JPCERTCC/jpcert-yaraは、APT10、APT29、BlackTech、Lazarusなどの様々なAPTキャンペーンに対応する多数のYARAルールや、さまざまな種類のマルウェア向けのルールを提供しています。参考として強くお勧めします。
Wikiを参照してください。
このプロジェクトは、正常に機能するために以下のオープンソースソフトウェアに依存しています:
このプロジェクトにインスピレーションと影響を与えた以下のGitHubリポジトリに感謝します: