Gunraランサムウェア、WindowsとLinuxを二重暗号化で標的

はじめに

サイバーセキュリティの状況は、新たなランサムウェアグループからの継続的な脅威に直面しており、Gunraは2025年4月の出現以来、重大な懸念となっています。この脅威アクターは、韓国での事例を含む複数の業界および地域で組織的な攻撃を開始しています。Gunraが特に注目されるのは、そのデュアルプラットフォーム対応能力です。このグループは、WindowsとLinuxの両システムを標的とする個別のマルウェア亜種を配布しており、それぞれ異なる暗号化手法を採用しています。これらの技術的な違いを理解することは、組織が効果的なインシデント対応および脅威軽減戦略を策定する上で不可欠です。

技術インフラと設定

Gunraのどちらの亜種も、特定の引数を必要とするコマンドラインインターフェースを介して動作します。このマルウェアは、並列暗号化のためのスレッド数、ターゲットパス、暗号化するファイル拡張子、暗号化比率、およびRSA公開鍵ファイルのパスという5つの必須パラメータを要求します。Linux版ではChaCha20暗号化アルゴリズムが使用されています。このモジュール設計は、運用上の柔軟性を意図したものであり、攻撃者がターゲット環境の特性と目的に基づいて攻撃をカスタマイズできるようにしています。暗号化準備フェーズでは、体系的なファイルシステム走査機能が示されています。マルウェアは、個々のファイル、サブディレクトリの再帰を含むディレクトリ全体、または適切に設定された場合はフルディスク暗号化を標的にすることができます。ファイル選択ロジックには、最大32のカスタム拡張子をサポートする拡張子フィルタリングが組み込まれていますが、READMEファイルや.encrt拡張子を持つファイルなど、特定のシステムファイルはシステム機能を維持するために暗号化から除外されます。

Linux版の脆弱性

ELF形式の分析により、暗号化されたファイルのセキュリティを根本的に損なう壊滅的な暗号学的欠陥が明らかになりました。Gunraの開発者は、実行速度を考慮せずにtime()関数に依存するシードメカニズムを実装しました。このプロセスは非常に迅速に完了するため、複数のイテレーションが同一のシード値を受け取ってしまいます。暗号学的に弱い関数が暗号化キーとノンス値の生成に使用されています。この実装の失敗により、rand()関数は繰り返されるバイトシーケンスを生成し、結果として同一のバイトパターンを含む32バイトのキーと12バイトのノンス配列が生成されます。その結果は壊滅的です。暗号化されたファイルは、0x00から0xFFまでの256通りのバイト値をテストするブルートフォース攻撃によって回復可能です。セキュリティ研究者は、この手法を使用してGunraによって暗号化されたファイルの復号に成功しており、この攻撃は弱い暗号化マテリアルに対して有効であることが証明されています。

Windows版:より強力なセキュリティ体制

Windows EXE版は、著しく異なる脅威プロファイルを示しています。time()関数に依存する代わりに、Windows版の実装はWindows暗号化サービスプロバイダ(CSP)を介してCryptGenRandom() APIを利用しています。このエンタープライズグレードの乱数生成は、暗号学的に安全な値を生成し、ブルートフォース復号攻撃を非現実的なものにしています。Windows版はまた、ChaCha20ではなくChaCha8を採用しており、Linux版との実装の違いをさらに際立たせています。この相違は、開発者がWindowsプラットフォーム上で優れた暗号ライブラリとセキュリティプラクティスにアクセスできたことを反映していると考えられます。

非対称な脅威ランドスケープと軽減策

Gunraの2つの亜種間の異なるセキュリティ実装は、非対称な脅威ランドスケープを生み出しています。主にLinuxインフラストラクチャを運用する組織は、Windowsが優勢な環境と比較して、著しく高い復号リスクに直面しています。この脆弱性のギャップは、プラットフォーム固有の脅威インテリジェンスとインシデント対応計画の重要性を強調しています。防御側は、Gunraの兆候を示すシステムの即時隔離を優先し、特定されたブルートフォース手法を使用してLinuxが侵害されたシステムに対する復号回復操作が実行可能であると考慮すべきです。


元記事: https://gbhackers.com/gunra-ransomware/