Veeamには取得したバックアップがマルウェアに感染していないかをリストアする前にチェックするセキュアリストアという機能があります。
このセキュアリストアによってマルウェアの検出を行う方法としてYARAルールをサポートしています。
この記事では、YARAの概要、ルールの作成、Veeamとの統合について説明します。
YARA (Yet Another Recursive Acronym)は、ランサムウェアなどのマルウェアを識別して分類する方法の 1 つで、マルウェアが被害を与える前にその存在を検索、検出し、警告できるようにするオープンソースリソースです。
YARAルールは、ファイルやネットワークをチェックして、悪意のあるソフトウェアの存在を示すパターン、スクリプト、シグネチャを探します。これらのソフトウェアは、多くの場合、独自の形式で記述されているため、ルールがマルウェアを示す特性やパターンを見つけると、警告が発生し、担当者はマルウェアを隔離または削除できます。
YARAの使用例
マルウェア検出のためのYARAルール
YARA ルールを作成する最初のステップは、検出するマルウェアまたはマルウェアファミリを特定することです。ファイル名、レジストリキー、ハッシュタグなどの侵害の兆候を使用して、それらに基づいてYARAルールを作成し、悪意のあるソフトウェアを識別できます。YARAルールを使用する前にテストして正確性を確認し、他のセキュリティ製品とともにネットワーク上で実行してください。
YARA ルールは柔軟性も高く、少量のファイルをテストしたり、スケールアップしてネットワーク全体で悪意のあるソフトウェアを探したりすることも可能です。
YARAルールと脅威インテリジェンス
脅威インテリジェンスプラットフォームを使用している場合は、YARA ルールで動作するかどうかを確認してください。動作する場合は、TIP が収集した、会社がこれまでに直面したさまざまな種類のサイバーセキュリティの脅威に関する情報に基づいてルールを構築できます。
YARA ルールは、経験の浅いハッカーによる単純な攻撃の日常的な検出や、マルウェア、トロイの木馬、ランサムウェアを使用する企業スパイ、サイバー犯罪者、不満を持つ従業員によるより危険な攻撃の検出に使用できます。
YARA ルールによるランサムウェア検出
Veeamの2023年ランサムウェア動向レポートによると、調査対象の組織の 85% が 2022 年に少なくとも 1 回のランサムウェア攻撃を受けました。Veeam などのデータ保護企業は、YARA またはシグネチャベースのマルウェア検出ツールを統合して、バックアップの健全性と復旧可能性をスキャンします。
YARAルールの作成
まず、検出するマルウェアを特定します。たとえば、WannaCry などのランサムウェアを探している場合、このランサムウェアファミリが使用する特定の文字列、シグネチャ、パターンを探す必要があります。
あらゆる種類のマルウェアに対して 1 つのルールを使用するのではなく、ファイルの種類ごとに複数のルールを作成します。
YARA構文
Rule:ファイルを識別する名前です。単語「rule」の後の識別子は、数字やアンダースコアにすることはできません。識別子の唯一の目的はルールに関する情報を提供することであるため、Conditionsセクションにも識別子を含めることはできません。
Metadata:メタデータは、作成者、作成日、更新や修正を追跡するためのYARAルールのバージョン、説明など、ルール自体に関する情報を提供します。
Strings:このセクションでは、YARA ルールがファイルやネットワーク内で検索するパターン、シグネチャ、または文字列を定義します。YARA ルールは、 ジャンプ、代替、ワイルドカードと組み合わせて 16 進数を使用する文字列など、さまざまな種類の文字列を検索できます。テキスト文字列では、nocase、full word、wide などの修飾子や、テキスト文字列に同様の修飾子を使用する正規表現も使用できます。YARAドキュメントでも、高度な条件について詳しく知ることができます。
Conditions:これは唯一の必須セクションで、スキャンするファイルに対して YARA ルールが有効な場合を指定します。ブール式 (and、or、all、any、not) を使用して結果を決定し、条件としてファイルサイズをチェックすることもできます。
YARAルールの例①
rule Detect_Malicious_String {
strings:
$malicious_string = “悪意のある文字列”
condition:
$malicious_string
}
YARAルールの例②
rule Detect_Complex_Executable {
meta:
description = “特定の特性を持つ複雑な Windows 実行可能ファイルを検出します”
author = “名前”
date = “2023-09-20”
strings:
$magic_bytes = { 4D 5A } // “MZ” DOSヘッダーを確認
$has_pe_signature = “PE\0\0” wide // PE署名を確認
$specific_section = /ThisIsMySection/ // カスタムセクション名を検索
condition:
$magic_bytes at 0 and
$has_pe_signature at $magic_bytes + 0x3C and
$specific_section
}
Veeamとの統合
Veeamはリストア実行時にバックアップファイルを一時的にマウントし、指定したYARAルールに基づいてバックアップ内のVMをスキャンします。
マルウェアが検出されなければ、そのままリストアが実行されますが、検出された場合にはネットワークに接続しない状態でリストアしたり、リストアを中止して警告を発生したりできます。
Veeamのインストールフォルダ(C:\Program Files\Veeam\Backup and Replication\Backup\YaraRules)に作成したYARAルールを配置することで、リストア時に選択が可能になります。
関連トピックス
- Veeam 9.5u4新機能:セキュアリストアで安全性を向上
- Veeamで行うマルウェア検出 – インラインスキャン
- システム時刻変更を検出し、不変属性の変更をロック、バックアップデータの変更、削除が実施できない状態を維持[Veeam Backup & Replication]
- バックアップの復旧検証機能によるランサムウェア対策 [Veeam SureBackup]
- Veeam 12.1 を検証!第一弾: ランサムウェア対策追加情報
- ランサムウェアに対抗するためのZertoの7つの主要機能
- ランサムウェアの検知 :データ保護がレジリエンス(耐久性)を高めるその仕組み [Zerto]
- ランサムウェアの検知もVeeamで対応!! Veeam ONE新アラート「Possible ransomware activity」
- Oracle Linux KVMでVeeamができること、できないこと(2024/6/12現在):Veeam Backup for Oracle Linux Virtualization Manager and Red Hat Virtualization
- なぜリアルタイム暗号化検知が重要なのか!