FreePBX の脆弱性 CVE-2025-61675/61678/66039 が FIX:RCE を可能にする SQLi や認証バイパス

FreePBX Patches Critical SQLi, File-Upload, and AUTHTYPE Bypass Flaws Enabling RCE

2025/12/15 TheHackerNews —オープンソースの PBX プラットフォームである FreePBX に、セキュリティ脆弱性 CVE-2025-61675/CVE-2025-61678/CVE-2025-66039 が発見された。それらの脆弱性は、特定のコンフィグレーションに起因するものであり、認証バイパスにつながる可能性が生じる。2025年9月15日の時点で、このプロジェクトのメンテナーに報告された深刻な欠陥が、その後に Horizon3.ai により公表された。

CVE-2025-61675 (CVSS:8.6):認証を必要とする SQL インジェクションの脆弱性であり、11個のパラメータに影響する。その影響が及ぶ範囲は、ベースステーション/モデル/ファームウェア/カスタム・エクステンションの4つのエンドポイントと、基盤となる SQL データベースにおける Read/Write アクセスとなる。

CVE-2025-61678 (CVSS:8.6):認証を必要とする、任意のファイル・アップロードの脆弱性。ファームウェア・アップロード・エンドポイントを悪用する攻撃者は、有効な PHPSESSID を取得した後に PHP Web シェルをアップロードし、任意コマンドを実行できる。その結果として、機密ファイル (例: /etc/passwd) の内容が漏洩する可能性がある。

CVE-2025-66039 (CVSS:9.3):認証バイパスの脆弱性。”webserver” に設定されている Authorization Type (別名 AUTHTYPE) を悪用する攻撃者は、偽造した認証ヘッダーを介して管理者用コントロール・パネルにログインできる。

ここで言及すべき点は、FreePBX のデフォルト・コンフィグレーションでは、認証バイパスの脆弱性が存在しないことである。 Advanced Settings Details において、以下の3の値が Yes に設定されている場合にのみ、Authorization Type オプションが表示される。

  • Display Friendly Name
  • Display Readonly Settings, and
  • Override Readonly Settings

しかし、これらの前提条件が満たされる場合において、攻撃者は細工した HTTP リクエストを送信して認証を回避し、”ampusers” データベース・テーブルに悪意ユーザーを挿入できる。この挙動は、2025年9月に悪用が公表された、FreePBX の別の脆弱性 CVE-2025-57819 の状況を再現する。

Horizon3.ai のセキュリティ研究者である Noah King は、「これらの脆弱性は容易な悪用が可能であり、脆弱な FreePBX インスタンス上でのリモート・コード実行を、未認証のリモート攻撃者に許すものだ」と、先週に公開されたレポートで述べている。

これらの問題は、以下のバージョンで修正されている。

  • CVE-2025-61675/CVE-2025-61678 – 16.0.92/17.0.6 (2025年10月14日)
  • CVE-2025-66039 – 16.0.44/17.0.23 (2025年12月9日)

ただし、認証プロバイダーを選択するオプションが詳細設定から削除されているため、ユーザーはコマンドラインから “fwconsole” を使用して手動設定する必要がある。

一時的な緩和策として FreePBX が推奨するのは、”Authorization Type” を “usermanager” に設定し、”Override Readonly Settings” を “No” に設定した上で、新しい設定を適用してシステムを再起動し、不正なセッションを遮断することである。

Noah King は、「Web サーバにおける AUTHTYPE の誤った有効化に気付いた場合には、システムを完全に分析し、潜在的な侵害の兆候がないことを確認する必要がある」と述べている。

ダッシュボードには、”webserver” は “usermanager” に比べて、セキュリティが低下する可能性があると警告されている。最適な保護のためには、この認証タイプの使用を避けることが推奨される。

Noah King は、「基盤となる脆弱なコードは依然として存在し、FreePBX インスタンスへのセキュリティとアクセスを提供するために、認証レイヤーに依存している点に留意することが重要だ。基本的な Base64 エンコードされた、ユーザー名とパスワードを含む Authorization ヘッダーを渡す必要がある」と付け加えている。

エンドポイントによっては、有効なユーザー名が必要な場合がある。ファイル・アップロードのようなケースでは有効なユーザー名は不要であるため、数ステップでリモート・コード実行が可能になる。Web サーバの認証タイプは、レガシー・コードである可能性があるため、使用しないことが推奨される。