LibreNMS の脆弱性 CVE-2024-51092 が FIX:PoC エクスプロイトも提供

LibreNMS Vulnerability (CVE-2024-51092): Mitigating the Risk of Server Compromise

2024/11/18 SecurityOnline — 先日の LibreNMS プロジェクトのセキュリティ・アドバイザリで明らかになったのは、バージョン 24.9.1 以下に影響を及ぼす、深刻な脆弱性 CVE-2024-51092 (CVSS:9.1) の存在である。この、広く使用されるネットワーク監視プラットフォームの脆弱性が、認証された攻撃者により悪用されると、任意の OS コマンドの実行により、サーバの完全に乗っ取りにいたる可能性がある。

LibreNMS は、各種のネットワーク・ハードウェアとオペレーティング・システムをサポートする、PHP/MySQL/SNMP ベースのネットワーク監視システムである。このアドバイザリには、「認証された攻撃者は、システム上に危険なディレクトリ名を作成し、また、Web ポータルを介して機密のコンフィグ・パラメータを変更できる。これら2つの欠陥が組み合わされると、shell_exec() 呼び出し内で、任意の OS コマンドが許可され、任意のコード実行が可能になる」と記されている。

この脆弱性は、設計上の欠陥の組み合わせに起因している。

  • OS Command Injection:AboutController.php スクリプトは、サニタイズされていない入力を処理し、シェル・コマンド・インジェクションを可能にする。
  • Configuration Parameter Poisoning:攻撃者は SettingsController.php スクリプトを使用してコンフィグ値を操作し、悪意のバイナリを指定できる。
  • Arbitrary Directory Creation:サニタイズされていないホスト名を使用すると、攻撃者は悪意のディレクトリ構造を作成できる。

このアドバイザリ示すのは、これらの問題を連鎖させる攻撃者が、コード実行を実現する方法である。このプロセスには、悪意のホスト名を持つデバイスの作成/コンフィグ・パラメータの変更/about ページからのシェル・コマンド実行が含まれる。

このレポートでは、「要約すると、攻撃者がシステム・バイナリへ向けた有効なフル・パスを見つけ、そのフル・パスにシェル・メタ文字が含まれている場合には、それらの文字は上記で定義された shell_exec() 呼び出しにより解釈され、任意のコマンド実行が可能になる」と説明されている。

すでに PoC エクスプロイトが提供され、base64 エンコードされたコマンドが、この脆弱性を悪用してサーバ上にファイルを作成する方法が示されている。

すでに LibreNMS チームは、バージョン 24.10.0 をリリースし、この問題に対処している。ユーザーに対して強く推奨されるのは、上記のバージョンへと速やかに更新に、この脆弱性の悪用を防ぐことだ。

完全な技術的詳細については、オリジナルのアドバイザリを参照してほしい。システムのセキュリティを確保するために、ユーザーは速やかに行動すべきだ。