研究者らがElastic Security EDRを回避するLinuxルートキットを公開

セキュリティ研究者らが、Elastic Securityのエンドポイント検出および応答メカニズムを回避する洗練されたLinuxルートキット「Singularity」を開発した。このツールは、高度な難読化技術を通じて静的および行動検出システムの脆弱性を示している。研究者の0xMatheuZ氏によってGitHubで公開され、カーネルレベルの脅威識別における継続的な課題を強調している。

セキュリティ研究者らで、偽名0xMatheuZ氏が主導するチームは、GitHub上でLinuxカーネルルートキット「Singularity」を公開した。これは、Elastic SecurityのEDRソリューションであるElastic Defendによる検出を回避するよう設計されている。通常、Elastic Securityは標準的なルートキット実装に対して26件以上のアラートを発し、ファイルの隔離やプロセスの終了を含むが、Singularityは4つの主要な回避戦略を通じてこれらを回避する。

最初の手法は、コンパイル時文字列難読化で、敏感な文字列(例: 「GPL」や「kallsyms_lookup_name」)を別々の定数に分割し、MODULE_LICENSE(「G」 「P」 「L」)のようにCコンパイラが連結する。これにより、YARAシグネチャスキャナーがバイナリ内の連続した悪意ある文字列を識別できなくなる一方で、機能性を維持する。

第二に、シンボル名のランダム化により、「hook_getdents」「fake_tcp4_seq_show」「hide_module」などの予測可能なパターンを、「sys」「kern」「dev」などで始まるカーネル風の一般的な名前に置き換える。ホワイトリストが必須のカーネルAPIを保護し、regexパターンがエラーなく一貫した名前の変更を保証する。

第三に、モジュール断片化により、コンパイルされた.koファイルをランダムな16バイトキーでXORエンコードされた64KBセグメントに分割する。これらはカスタムローダーとmemfd_createによりメモリ上で再構築され、静的解析のためのディスクアーティファクトを回避する。ロードはインラインアセンブリを使用した直接syscallで行われ、監視されるlibcラッパーを回避し、64ビットおよび32ビットシステムをint $0x80でサポートする。

第四に、ftraceヘルパー関数(例: 「fh_install_hook」「fh_remove_hook」)をランダム識別子に名前変更し、複数の発生をフラグ付けするルールを回避する。

Singularityには、/procファイルシステムからプロセスを隠す機能、「singularity」や「matheuz」に一致するファイルやディレクトリを隠す機能、ポート8081上のTCP接続をマスクする機能、カスタムシグナルや環境変数による特権昇格機能も含まれる。ICMPベースのバックドアにより、特定のペケットシーケンスでリバースシェルがトリガーされ、トレースを妨害しログをサニタイズするアンチアナリシス対策を備える。

行動回避のため、/singularityに段階的なbashスクリプトを展開し、リバースシェル検出を避けるためにクリーンなコマンドラインで実行する。スクリプトはPID隠蔽と昇格にkill -59を使用し、監視ディレクトリではなく/tmpでローダーをコンパイルする。テストでは、Singularityはアラートなしでロードされ、プロセスを隠し、rootシェルを確立した。

この研究は、カーネル脅威に対するシグネチャベースおよび行動検出の弱点を明らかにし、継続的な更新、カーネル完全性監視、メモリフォレンジック、多層防御戦略の必要性を強調する。

このウェブサイトはクッキーを使用しています

サイトを改善するための分析にクッキーを使用しています。当社の プライバシーポリシー をお読みください 詳細については。
拒否