abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · openmeetings-kms-unauth
クラス: 未認証 KMS 到達範囲: リモート
Apache OpenMeetings 9.1.0 (9773c59e) - Apache Software Foundation
OpenMeetings の Java は kurento.ws.url をデフォルトでループバックに設定します。公式の InstallMediaServer.md は Kurento を docker -p 8888:8888 で公開しています。その JSON-RPC には認証がありません。未認証の WebSocket connect と invoke manager_ServerManager.getInfo により、Kurento 7.3.0 が返されます。
| ID | CVE 未割当 |
| クラス | 未認証 KMS |
| 到達範囲 | リモート(公開された 8888 上の未認証 JSON-RPC) |
| CWE | CWE-306 |
| CVSS | High: 8.6 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L |
| 製品 | Apache OpenMeetings + Kurento 7.3.0 |
| 影響を受けるもの | 9.1.0 のドキュメント/docker による KMS 8888 の公開 |
| 認証 | Kurento JSON-RPC にはなし |
| ライセンス | GNU Affero GPL v3.0 |
| ラボ | 127.0.0.1:18164 のみ。ドキュメントの公開手順に従い kurento/kurento-media-server:7.3.0 を使用。 |
タグ 9.1.0 を固定しました。このリリースでは KMS 7.3.0+ が必要です。
公開された Kurento ポートに到達します。Authorization ヘッダーは不要です。HTTP POST は WebSocket 専用です(426)。ws://host:8888/kurento は 101 にアップグレードします。
| メソッド | シンク | 権限 |
|---|---|---|
未認証 ping | Kurento JSON-RPC | 偵察(ラボで実証済み): pong。 |
未認証 connect | セッション発行 | 整合性(ラボで実証済み): シークレットなしの sessionId。 |
未認証 invoke manager_ServerManager.getInfo | ServerInfo | 偵察(ラボで実証済み): バージョン 7.3.0、モジュール一覧(chroma/core/...)。 |
未認証 PlayerEndpoint / RecorderEndpoint(同一ソケット) | KMS メディア要素 | 偵察 / 整合性(推測): KMS の UID としての HTTP/ファイル取得、パイプラインの作成/破棄。未検証。ラボは getInfo のみで実施。 |
ラボで実証済み vs 推測: ping、connect、getInfo はラボで実証済みです。PlayerEndpoint の SSRF / パイプライン DoS は未認証 JSON-RPC から推測したものです。
必要条件: InstallMediaServer.md が示す方法(-p 8888:8888)で KMS がネットワークに公開されていること。OM Java のデフォルトのループバックは、その公開が行われるまでは安全です。
| 攻撃面 | 理由 |
|---|---|
OM Java の kurento.ws.url デフォルト | ループバック。この残存はドキュメントの公開によるもので、Java のデフォルトではありません。 |
SID なしの OM /openmeetings | Wicket/CXF はルームに対して依然としてセッションを要求します。 |
Upgrade なしの HTTP POST /kurento | 426。JSON-RPC は WebSocket です。 |
完全な apache/openmeetings:9.1.0 イメージは kurento-media-server を 0.0.0.0:8888 で起動し、JSON-RPC 認証はありません。その後、そのコンテナは JAVA_HOME なしで nobody として catalina を失敗させることがあります。ドキュメントが教えている残存は、スタンドアロン KMS の公開です。私は kurento/kurento-media-server:7.3.0 を 127.0.0.1:18164:8888 でラボ検証しました。
cd lab
./run.sh
ループバック ws://127.0.0.1:18164/kurento。最後の行の証跡:
SUCCESS OPENMEETINGS-KMS-UNAUTH-WITNESS
8888 をパブリックインターフェースで公開しないでください。KMS をループバックまたはプライベートな compose ネットワークにバインドしてください。JSON-RPC に認証トークンを設定してください(Kurento の secureKms / リバースプロキシ)。インストールドキュメントの例を -p 8888:8888 から変更してください。
Abraxas Labs - https://abraxaslabs.tech - https://github.com/abraxas - https://x.com/abraxas_null - [email protected]
ベンダー: [email protected]