CVE-2024-12084の検知と緩和:rsyncリモートコード実行

By 清水 孝郎 - JANUARY 19, 2025

SHARE:

本文の内容は、2025年1月17日に Sysdig Threat Research Team が投稿したブログ(https://sysdig.com/blog/detecting-and-mitigating-cve-2024-12084-rsync-remote-code-execution/)を元に日本語に翻訳・再構成した内容となっております。

2025年1月14日(火)、“rsync” ユーティリティに影響を与える一連の脆弱性が発表されました。rsyncはファイルやディレクトリを柔軟にローカルおよびリモートで転送することを可能にし、デプロイメントやバックアップ目的で頻繁に使用されています。合計6件の脆弱性がOSS Securityメーリングリストで発表され、その中で最も深刻な脆弱性であるCVE-2024-12084は、リモートコード実行を引き起こす可能性があります。本記事では、CVE-2024-12084を検知し、緩和する方法について説明します。

執筆時点では、証明概念(PoC)は公開されておらず、またアクティブな悪用の兆候も報告されていません。 

脆弱性

CVE-2024-12084 (CVSS 9.8) – リモートコード実行につながる可能性のあるヒープオーバーフロー

CVE-2024-12085 (CVSS 7.5) – 情報漏洩

CVE-2024-12086 (CVSS 6.1) – 情報漏洩

CVE-2024-12087 (CVSS 6.5) – パストラバーサル

CVE-2024-12088 (CVSS 6.5) – パストラバーサル

CVE-2024-12747 (CVSS 5.6) – シンボリックリンクの競合状態

RSyncの仕組み

rsync は、長い間使用されているファイル転送ツールです。rsync の主な機能の 1 つは、変更されたファイルや不足しているファイルのみを転送することです。これにより、ユーザーはローカルとリモートの両方で、異なるディレクトリ間でファイルを同期させることができます。リモートで使用できるため、デーモンプロセスとしてポート 873 (TCP) をリッスンできます。デーモンとして実行されている場合は、“rsyncd.” と呼ばれています。 

rsync は、オンデマンドでリモートで実行することもできます。このシナリオでは、ユーザーは“rsync” を設定してリモートサーバーをリッスンし、ローカルで rsync を使用して転送を開始します。“rsync” とその機能について詳しくは、こちらに便利なガイドがあります。  

CVE-2024-12084の検知

2025年1月14日、対象プロセスでリモートコード実行を引き起こす可能性のあるヒープオーバーフロー脆弱性が報告されました。この種類の脆弱性は、攻撃者がプロセスの実行を自身が制御するメモリ領域にリダイレクトし、その領域に配置した悪意のあるコードを実行させることを可能にします。この脆弱性を検知する一つの方法として、コマンド実行などの異常な挙動をプロセスで監視することが挙げられます

Falcoはこのタスクに非常に適しており、“rsync”によって実行されるシステムコールを完全に可視化することができます。検知においては、疑わしいコマンド実行をプロセスで監視します。例えば、rsyncは通常、多くのコマンド(iptables、mongodump、curlなど)やその他のシステムコマンドを実行するべきではありません。ただし、rsyncが-eオプションを使用してシェルを実行するユースケースがあります。この場合、バイナリがSETUIDであると、権限昇格が発生する可能性があります。 

# このマクロは、シェル以外のコマンド用に変更できます。

- macro: shell_binaries_arg_filename

condition: ( evt.arg.filename endswith "/ash" or evt.arg.filename endswith "/bash" or evt.arg.filename endswith "/csh" or evt.arg.filename endswith "/ksh" or evt.arg.filename endswith "/sh" or evt.arg.filename endswith "/tcsh" or evt.arg.filename endswith "/zsh" or evt.arg.filename endswith "/dash" )

- rule: Possible Remote Code Execution using rsync

desc: This rule detects rsync and rsyncd processes executing unexpected binaries, which may indicate arbitrary command execution through CVE-2024-12084.

condition: evt.type in ( execve, execveat ) and evt.dir=> and proc.name in ( rsync, rsyncd ) and shell_binaries_arg_filename

output: The %proc.name process was seen executing unexpected binary %evt.arg.filename which may indicate arbitrary command execution through the rsync or potential vulnerability exploitation (proc.exepath=%proc.exepath evt.arg.filename=%evt.arg.filename fd.name=%fd.name user.name=%user.name proc.name=%proc.name proc.pname=%proc.pname image=%container.image.repository:%container.image.tag proc.cmdline=%proc.cmdline evt.res=%evt.res proc.pcmdline=%proc.pcmdline user.uid=%user.uid user.loginuid=%user.loginuid user.loginname=%user.loginname container.name=%container.name)

priority: CRITICAL

tags: [host, container, MITRE, MITRE_TA0002_execution, MITRE_T1203_exploitation_for_client_execution]

Sysdig Secure のお客様は、 Sysdig Runtime Notable Eventsポリシーにこのルールが自動的に適用されます。 

CVE-2024-12084の緩和

このヒープオーバーフローの影響を受けるバージョンは以下の通りです:Rsync 3.2.7以上3.4.0未満

組織は、この脆弱性の修正を優先し、影響を受けるすべてのシステムに対して直ちにパッチを適用する必要があります。修正措置としては、環境内のすべてのrsyncインスタンスをバージョン3.4.0にアップグレードすることが求められます。このバージョンは発表されたすべてのCVEに対応しています。

Sysdig SecureのInventory機能を使用することで、CVE-2024-12084の影響を受けるすべてのワークロードをクエリで検索することが可能です。これは柔軟なクエリ言語によって実現されており、ユーザーがインベントリを検索する複数の方法の1つとして提供されています。

すぐにパッチを適用できない場合は、rsync のインスタンスがインターネットに公開されていないことを確認することも、リスクを軽減できるもう 1 つの方法です。デフォルトでは、rsync は TCP ポート 873 をリッスンします。このポートは、ファイアウォールまたはセキュリティ グループでブロックまたは制限する必要があります。ただし、この方法では、内部攻撃に対して依然として露出する可能性があります。

Sysdig Secure のお客様の場合、上記のルールがトリガーされた場合、プラットフォームはいくつかの対応オプションを提供します。“Kill Process” を使用すると、攻撃者が起動したシェルを終了できます。または、コンテナ化された環境でより完全な対応を行うには、“Kill Container”  を使用してワークロード全体を排除できます。詳細なフォレンジックレビューを行うために、syscall キャプチャを自動的に取得できます。

まとめ

Rsyncは一般的なファイル同期ユーティリティであり、Bleeping Computerによれば、インターネットに公開されている60万以上のシステムに存在するとされています。今回の6つの新しい脆弱性の中で、CVE-2024-12084はリモートコード実行を可能にする可能性があります。オープンソースのFalcoを基盤とするSysdig Secureを使用すれば、この種の攻撃を即座に検出し、迅速に対応を開始することができます。