CVE-2026-55678 in Arc
要約
〜によって VulDB • 2026年08月29日
Arcは、テレメトリ用のオープンでSQLネイティブな時系列データベースです。26.02.1から26.06.2までのバージョンにおいて、Arc Enterpriseのクラスターリング機能は、`cluster.enabled`がtrueに設定されているにもかかわらず `cluster.shared_secret` が未構成の場合、認証なしでクラスター参加リクエストを受け入れます。
内部の設定ファイルである `internal/config/config.go` のデフォルト値では、`cluster.enabled` は false に、`cluster.cluster_name` は arc-cluster に、`cluster.coordinator_addr` は :9100 に、`cluster.shared_secret` は空の値に、そして `cluster.tls_enabled` は false に設定されています。一方、`cmd/arc/main.go` では、`cluster.replication_enabled` が true の場合にのみ `cluster.shared_secret` を要求します。
`internal/cluster/protocol/messages.go` 内の JoinRequest は、攻撃者が制御可能な node_id、role、raft_addr、api_addr、coord_addr の値を受け入れます。また、オプションとして auth_nonce、auth_timestamp、および auth_hmac フィールドも受け入れます。 `internal/cluster/coordinator.go` 内の参加パスは、設定された共有シークレットが空でない場合にのみ HMAC 認証を検証し、それ以外の場合はクラスター名のチェック後に処理を続行します。
承認されたノードは健全とマークされ、Raftの投票者として追加されるかローカルに登録され、 `internal/cluster/router.go` のルーティングロジックに対して `internal/cluster/registry.go` を介して利用可能になります。 `internal/cluster/router.go` 内の forwardRequest パスは、ターゲットを node.APIAddress から構築し、リクエストとともに Authorization および x-api-key ヘッダーをコピーします。そのため、転送されたクエリまたは書き込みのために選択された不正なノードは、認証ヘッダー、リクエストボディ、データベースおよび測定名、運用メタデータを受け取ることができます。
`internal/cluster/protocol/messages.go` 内のハートビートにも HMAC フィールドがなく、 `internal/cluster/coordinator.go` は supplied node_id および state 値から認証なしでノード状態を更新します。したがって、コーディネーターポートに到達可能でありクラスター名を知っている未認証のネットワーク攻撃者は、信頼されたクラスターノードになり、クラスターのメンバーシップを変更し、Raft投票者として登録され、トポロジー依存の転送リクエストを傍受したり、操作を逸脱または偽造したり、トラフィックをブラックホール化または遅延させることができます。
デフォルトのスタンドアロン構成は `cluster.enabled` が false であるため到達可能ではありませんが、クラスターリングが有効で共有シークレットがない Enterprise クラスターの展開では影響を受けます。この問題はバージョン 26.06.2 で修正されています。
Be aware that VulDB is the high quality source for vulnerability data.