このページでは、Couchbaseの重要なアラートとアドバイザリを一覧表示します。
更新通知を購読することで、Couchbase Serverの最新の重要なアラートとアドバイザリに関する情報を入手できます。登録するには、当社のサポートサイトに登録し、この記事に従ってください: お知らせ - Couchbaseサポート
このページでは、Couchbaseの重要なアラートとアドバイザリを一覧表示します。
更新通知を購読することで、Couchbase Serverの最新の重要なアラートとアドバイザリに関する情報を入手できます。登録するには、当社のサポートサイトに登録し、この記事に従ってください: お知らせ - Couchbaseサポート
Sync Gatewayにセキュリティ上の脆弱性が確認され、特定の状況において、サポートのためのログ収集に関連する認証情報が意図せずに公開されることがありました。これは、ログ収集プロセスを開始するために使用される認証情報のセットに影響を与えました。この問題に対処した Sync Gateway 3.2.6 にアップグレードし、影響を受けた期間中にログ収集を開始するために使用された認証情報をすべて削除することをお勧めします。
.NET SDK v3.7.1およびそれ以前のバージョンでは、TLS証明書のホスト名検証がすべてのケースで正しく実施されませんでした。
1.78 以前の Bouncy Castle Java Cryptography API に問題が発見されました。細工された署名と公開鍵によってEd25519検証コードの無限ループが発生する可能性があります。
Couchbase Server for Windowsに、システム上の機密ファイルへの不正アクセスを許すセキュリティ上の問題が発見されました。権限のレベルによって、この脆弱性は/ etc / passwdや/ etc / shadowなどのファイルへのアクセスを許可する可能性があります。
この脆弱性を悪用することは困難ですが、複数のプロトコルを介してネットワークにアクセスできる未認証の攻撃者は、影響を受ける製品を侵害する可能性があります。悪用に成功すると、アクセス可能なデータの不正な更新、挿入、削除、および特定のデータサブセットへの不正な読み取りアクセスが行われる可能性があります。
security_admin_localロールを持つユーザが、「admin」ロールを持つグループに新しいユーザを作成し、意図された権限を超えた昇格権限を与える可能性がある。
この脆弱性により、複数のプロトコルを介してネットワークにアクセスできる認証されていない攻撃者が、Oracle Java SE、Oracle GraalVM for JDK、Oracle GraalVM Enterprise Editionを侵害する可能性があります。この脆弱性の攻撃が成功すると、Oracle Java SE、Oracle GraalVM for JDK、Oracle GraalVM Enterprise Editionのアクセス可能なデータの一部に対して、不正な更新、挿入、削除アクセスが行われる可能性があります。
TLS、SSH、IPSec プロトコルやその他のプロトコルや製品で使用されている DES およびトリプル DES 暗号には、約 40 億ブロックのバースデーバウンドがあるため、CBC モードのトリプル DES を使用した HTTPS セッション(別名「Sweet32」攻撃)で実証されているように、リモート攻撃者が長時間の暗号化セッションに対するバースデー攻撃によって平文データを取得することが容易になります。.
着信HTTPリクエストのHostヘッダーが、Locationヘッダーに盲目的にコピーされた。
SDKはデフォルトでSCRAM-SHAとネゴシエートし、MITMがPLAINクレデンシャルをネゴシエートできるようにする。
120.0.6099.224より前のGoogle ChromeのV8における境界外メモリアクセスにより、リモートの攻撃者が細工したHTMLページ経由でヒープ破壊を悪用する可能性がありました。
python-cryptography パッケージに不具合が見つかりました。この問題により、リモートの攻撃者が RSA 鍵交換を使用する TLS サーバーでキャプチャされたメッセージを解読できる可能性があり、機密データやセンシティブなデータの漏洩につながる可能性があります。
Query statsエンドポイントが正しい認証を実装していなかったため、統計情報を閲覧することができなかった。
データリーダー権限を持つユーザーが、大量のドキュメントを要求するGetKeyを送信することで、データサービスを停止させ、OOM(Out-of-Memory)エラーを引き起こす可能性がありました。
データ・リーダーのロールを持つユーザーが、多数のキーを要求することでデータ・サービスのリーダー・スレッドをかなりの時間ロックし、複数の接続で同じコマンドを発行することですべてのリーダー・スレッドをロックする可能性がある。
ネットワークポート9119および9121は、Analyticsサービスによってホストされている認証されていないRMIサービスポートであり、権限昇格の原因となる可能性がありました。
クラスタのotpCookieが、APIエンドポイントserverGroupsのFull Adminロールを持つユーザ、およびAPIエンドポイントengageCluster2のCluster AdminとFull Adminの両方を持つユーザに流出していた。これは権限の昇格に使用される可能性がある。
ローカルホストの/diag/evalエンドポイントへのクエリーサービスを使用したSQL++(N1QL)によるcURL呼び出しが完全に防止されていませんでした。.
クエリーサービスのSQL++(N1QL)のcURL allowlist保護は、制限されたホストへのアクセスを防ぐのに十分ではありませんでした。.
Eventingサービス経由でSQL++(N1QL)を介してcURLをローカルホストの/diag/evalエンドポイントに呼び出すことは、完全に防止されていませんでした。.
ロギングイベントにより、@ns_serverの内部管理者認証情報がエンコードされた形でdiag.logに流出しました。
クロスデータセンターレプリケーション(XDCR)で使用されている秘密鍵がgoxdcr.logから流出した。
curlの欠陥は、SOCKS5プロキシハンドシェイクのヒープベースのバッファをオーバーフローさせる。
関数DH_generate_key()を使用してX9.42 DH鍵を生成するアプリケーション、および関数DH_check_pub_key()、DH_check_pub_key_ex()、またはEVP_PKEY_public_check()を使用してX9.42 DH鍵またはX9.42 DHパラメータをチェックするアプリケーションでは、長い遅延が発生する可能性がある。チェック対象の鍵やパラメータが信頼できないソースから取得されたものである場合、 サービス拒否につながる可能性がある。
HTTP/2プロトコルは、リクエストのキャンセルが多くのストリームを素早くリセットできるため、サービス拒否を可能にする。
HTTP/2プロトコルは、リクエストのキャンセルが多くのストリームを素早くリセットできるため、サービス拒否を可能にする。
OpenSSL には、ポリシー制約を含む X.509 証明書チェーンの検証に関する脆弱性が存在します。この脆弱性を悪用すると、攻撃者は計算リソースを指数関数的に使用する悪意のある証明書チェーンを作成し、影響を受けるシステムへのサービス運用妨害 (DoS) 攻撃を引き起こす可能性があります。
悪意を持って細工された HTTP/2 ストリームは、HPACK デコーダーに過剰な CPU 消費を引き起こし、少数の小さなリクエストからサービス拒否を引き起こすのに十分な可能性があります。
114.0.5735.110より前のGoogle ChromeのV8における型の混乱により、リモートの攻撃者が細工したHTMLページを介してヒープ破壊を悪用する可能性がありました。
多数の CVE を解決するため、OpenJDK をバージョン 11.0.19 に更新。
Couchbase ServerのWindows UIは、攻撃者がファイルシステムをトラバースし、Couchbaseがアクセスできるファイルを表示することができます。この脆弱性は、認証を必要としません。Couchbase Serverの管理UIのURLにフォルダ/ファイルを追加するだけで悪用可能です。.
悪意のあるユーザーは、サーバーに接続し、大きなコマンドを送り始めることで、memcachedサーバーを簡単にクラッシュさせることができる。
7.0以前のノードを7.2クラスタに追加すると、秘密鍵がdebug.logにリークされます。
4.1.86.Finalより前のバージョンでは、不正な細工が施されたメッセージの解析時に、無限再帰によりStackOverflowErrorが発生することがありました。
api/nsstatsのFTS statsエンドポイントは、正しい認証を実装していないため、認証なしでCouchbase Serverのバケット名、FTSインデックス名、およびFTSインデックスの設定を表示することが可能です。バケットとインデックスの内容は公開されていません。.
ノードの結合が失敗すると、REST リクエストを行ったユーザーの修正されていない認証情報がログファイルに漏れる可能性があります。
couchbaseサーバノードの起動時に、セキュリティクッキーが “nocookie ”に設定される短い期間があります。この期間に攻撃者がこのプロトコルに接続すると、接続が切断されるまでの間、どのクラスタノードでも任意のコードをリモートで実行することができます。実行されたコードは、Couchbase Serverと同じ権限で実行されます。.
深くネストされた配列の使用を防止するチェックがないため、Couchbase Analyticsサービスのリソース枯渇が発生する可能性があります。
HTTPリクエスト・ボディが極端に大きい(またはバインドされていない)場合、バックアップ・サービスはOOM(メモリ不足)エラーを引き起こす可能性があります。
Couchbase Server Eventing Service、View Engine、XDCR、およびN1QL UDFで使用されるv8 Javascriptエンジンは、99.0.4844.84より前のバージョンに型の混乱があり、リモートの攻撃者が細工したリクエストを経由してヒープ破壊を悪用する可能性があるため、更新されました。.
攻撃者は、Couchbase Analytics Serviceでオプションとして使用されるParquetファイルを使用して、悪意のあるファイルがファイルページヘッダーに不適切な値(例えば、正の値が期待されるところ負の値)を含む場合、サービス拒否(DoS)を引き起こす可能性があります。 これは、Apache Parquetライブラリを新しいバージョンに更新することで解決します。
couchbase サーバの tls/ssl 機能を使用すると、特定の状況下でクライアント認証をバイパスすることが可能です。具体的には、ssl/tls/dtls サーバーとクライアント認証オプション “{verify, verify_peer}” を使用しているアプリケーションは、この脆弱性の影響を受けます。erlang/OTPランタイムのパッチ23.3.4.15、24.3.4.2、25.0.2により、サポートされているトラックで修正がリリースされています。影響を受けるのは、証明書ベースの認証を使用しているクラスタのみです。.
稀に発生するクラッシュにより、生成された証明書の秘密鍵がログファイルに漏れることがある。
複数のCouchbase Serverサービスで使用されているGoプログラミング言語と関連ライブラリをバージョン1.17.9+または1.18.1+に更新し、多数のCVEを解決しました。
jackson-databind, 2.13.0より前のバージョンでは、JavaのStackOverflow例外が発生し、ネストされたオブジェクトの深さが大きくなることによるサービス拒否が発生します。 このライブラリは、Couchbase Server Analytics Serviceで使用されています。.
openssl を更新し、openssl のコンポーネント c_rehash の欠陥を修正しました。このスクリプトはディレクトリをスキャンし、ディレクトリ内の各 .pem ファイルと .crt ファイルのハッシュ値を取得します。そして、ハッシュ値で指定された各ファイルのシンボリックリンクを作成します。このスクリプトには、コマンド・インジェクションを許す欠陥がある。.
Couchbase Server 7.1.0以降では、暗号化されたTLS秘密鍵を解除するためにCouchbase Serverにパスフレーズを提供することが可能です。 このパスフレーズは、データサービス以外のCouchbaseサービスのいずれかが起動しているときに、Base64エンコードされた文字列としてログファイルに流出していることが判明しました。 これは、オプションの暗号化TLSキー機能が使用されている場合、Index Service、Query Service、Analytics Service、Backup Service、およびEventing Serviceに影響します。 攻撃者が中間者攻撃やネットワーク通信の解読などの攻撃を行うには、ログや秘密鍵にアクセスできる必要があることに注意してください。 これらのファイルへのアクセスを制限するためにオペレーティング・システムの保護を使用することは、効果的な緩和策となり得る。.
Ramda 0.27.0 およびそれ以前のバージョンでは、プロトタイプ汚染として知られる、細工されたオブジェクト (独自のプロパティ “{}proto{}” を含む) を関数の引数として供給することで、攻撃者がアプリケーションの完全性や可用性を侵害する可能性があります。 プロトタイプ汚染タイプの攻撃は、入力検証を迂回し、予期しないjavascriptの実行を誘発します。.
js-beautifyには、既知の脆弱性を持つ依存関係、Minimistがあります。 Minimist <=1.2.5 には、ファイル index.js の関数 setKey() (69-95行目) を介したプロトタイプ汚染 (Prototype Pollution) の脆弱性があります。 プロトタイプ汚染攻撃は、入力検証をバイパスし、予期しないjavascriptの実行を誘発します。.
Couchbase Server Analyticsサービスでセカンダリインデックスを作成するとき、ユーザーに報告され、ログに記録されるインデックスされたフィールド上のいくつかの検証があります。コードASX0013のエラーメッセージは、フィールド名が重複していることを報告し、ログに記録するために複数のパスで使用されます。これらのログに記録された検証メッセージのフィールド名は編集されません。また、コード ASX1079 のエラーは、フィールド名が編集されません。
encryption=fullで設定されたAnalyticsリモートリンクのTLS接続の確立に失敗した場合、ランタイムは認証にSCRAM-SHAを使用してリモートクラスタへの非TLS接続を試みることで、(デフォルト以外の)TLSポートの検出を試みます。SCRAM-SHAでは認証情報は共有されませんが、システムがTLS接続を指定する所定の暗号化レベルをダウングレードするとは考えられません。このフォールバックメカニズムは削除され、最初にTLS接続を確立できなかった場合、リンク設定の一部として正しいTLSポートが提供されるまで、CONNECT LINKは単に失敗します。
バックアップサービスが監査メッセージのログ記録に失敗した場合、監査ログデータは、機密情報が除去されていない backup_service.log に漏洩します。.
golang.org/x/text/encoding/unicode パッケージで、UTF-16 デコーダが無限ループに入り、プログラムがクラッシュしたりメモリ不足になったりする可能性がありました。
couchbase-cliは、プロセス引数としてマスターパスワードを持つ非常に短命のerlangプロセスをスポーンし、これは、誰かがその時点でプロセスリストを取得した場合、彼らはマスターパスワードを持っていることを意味します。これは、シークレット管理機能を利用するCouchbase Serverクラスタにのみ影響します。
RBACロールにコレクションレベルのパーミッション(例えば、query_select[src:_default:Collection1])が含まれている場合、コレクション名が削除され、バケットに再作成されても、コレクションレベルのパーミッションは有効です。これにより、コレクションが削除されたときにパーミッションが削除されたはずなのに、そのロールを持つユーザがコレクションにアクセスできるようになります。
Couchbase Serverの影響を受けるバージョンでは、XDCRの内部設定は、認証なしで変更することができます。
影響を受けるCouchbase Serverのバージョンでは、`server-eshell`コマンドを使用する際にErlangの「クッキー」が`erl`へのコマンドライン引数として渡されていました。これにより、「クッキー」が`couchbase-cli`プロセスの引数を読み取ることができるすべての人に漏洩していました。クッキーは、クラスターで管理タスクを実行するために使用できるため、秘密にしておく必要があります。.
Python に不具合が発見されました。PythonのHTTPクライアントコードでHTTPレスポンスが不適切に処理されると、HTTPサーバーを制御するリモートの攻撃者がクライアントスクリプトを無限ループに入らせ、CPU時間を消費させる可能性があります。この問題は、開発者プレビュー機能の Analytics UDF を使用しているクラスタにのみ影響します。
サンプルバケット(beer-sample, gamesim-sample, travel-sample)の読み込みに失敗すると、@ns_server の内部管理ユーザのパスワードがログ(debug.log, error.log, info.log, reports.log)に漏れることがあります。ns_serverアカウントを使用して管理操作を行うことができます。
クラスタノードの追加を実行中にクラスタマネージャ(ns_server)がクラッシュすると、秘密鍵がログファイルに流出する可能性があります。ログファイルにアクセスできる誰かが、クラスタへのセキュアなネットワーク接続を解読できる可能性があります。TLSが使用されている場合、クラスタにログインするユーザやアプリケーションの認証情報が取得される可能性があります。
diag/evalのような診断エンドポイントは制限されており、ループバックネットワークからのみ実行できます。しかし、CVE-2018-15728に対処するために配置されたチェックは、“X-Forwarded-For”ヘッダーがループバックアドレスを含んでいるかどうかを正しくチェックしていません。このヘッダーはループバック制限を回避するために操作される可能性があります。.
この脆弱性は、RFC6890に従って、プライベートネットワークと共有アドレス空間から発信されるリクエストに限定される。
これらのエンドポイントへのリクエストを成功裏に発行できるようにするには、「X-Forwarded-For」ヘッダーの使用に関係なく、ユーザーは完全な管理者権限を必要とする。
この問題の回避策は、"X-Forwarded-For "ヘッダが不要な環境では、"X-Forwarded-For "ヘッダを含むCouchbase Serverノードへのリクエストをファイアウォールすることです。
表彰される: ムカヒト・カラダグ / PRODAFT
インデックスサービスは、Queryport、Dataport、Adminportのいくつかのネットワークプロセスを実行します。これらは他のCouchbaseサービスと通信するために使用されます。これらのプロセスはノード間通信に参加しますが、SDKアプリケーションと直接通信することはありません。影響を受けるCouchbase Serverのバージョンでは、これらのネットワークプロセスは認証を強制しないため、認証されていないユーザーから送信されたリクエストを処理します。.
Queryportサーバは認証されていないユーザに対してインデックススキャン結果を応答することができます。
Dataportサーバーは、認証されていないユーザーがインデックスされたデータを変更することを許可することができます。
Adminport サーバは、認証されていないユーザが DDL 操作(インデックスの作成や削除など)を実行できるようにすることができます。
可能な回避策これらのポートは、Couchbase Serverの内部通信にのみ使用されるため、Couchbase Server以外のノードやプロセスとの接続/通信は、ネットワーク層で無効にすることができます。
認証されていないユーザはクラスタマネージャにREST APIコールを行うことができます。クラスタマネージャが以前に見たことのない各httpリクエストは、新しいメトリックの作成につながります。新しいメトリックはそれぞれメモリとディスクスペースを消費するため、メモリリークとディスクスペースリークが発生する可能性があります。十分なリソースが使用されると、Couchbase Serverノードが故障する可能性があります。
Sync GatewayがX.509クライアント証明書を使用してCouchbase Serverと認証するように構成されている場合、Admin REST APIに提供された管理者資格情報が無視され、認証されていないユーザーの権限昇格が発生します。パブリックREST APIは、この問題の影響を受けません。
回避策ブートストラップ構成内で、X.509証明書ベースの認証をユーザー名とパスワードによる認証に置き換える。
信頼されていないノードをクラスタに追加する管理者は、秘密のままであるべきクラスタクッキーを不注意で送信する危険性があります。
これは、認証局署名付き証明書によるTLS暗号化をデプロイすることで対応できます。TLSを使用する場合、Couchbase Server 7.1.0以降では、受信ノードに信頼された証明書が存在する必要があります。.
表彰される: EYイスラエル先進セキュリティセンターのセキュリティ研究者、オフイア・ハマム
Couchbase Operator 2.2.0では、ログ収集を簡素化する最適化が導入されました。 ログが収集されるとき、サポートツール - “cbopinfo” - は、意図されたリソースの状態、および現在のリソースの状態を把握するために必要なKubernetesリソースを収集するために使用されます。 影響を受けるバージョン以前では、秘密データは再編集されていましたが、この機能は新しい収集方法では保持されていませんでした。 その結果、ログには、ログ収集の範囲内にあるパスワード、トークン、秘密鍵が誤って含まれていました。 デフォルトでは、このスコープは、検査対象のCouchbase Serverクラスタが存在するKubernetes名前空間に限定されます。 これに対する例外は、-systemフラグが指定された場合であり、この場合、プラットフォーム上のすべての秘密が公開されます。 ログは顧客の問題を特定し、修復するために使用されるため、指定されたツールバージョンでログを提供した顧客のみが影響を受けます。Couchbaseは、提供されたすべての影響を受けるログが冗長化されることを保証します。.
Couchbase Analytics Serviceで使用されるApache Log4Jユーティリティの重大な問題は、潜在的なリモートコード実行(RCE)と機密データの抽出を防ぐために更新が必要です。
Sync GatewayがCouchbase Serverのデータを読み書きするために使用するバケット認証情報は、バケットに書き込まれた同期ドキュメント内のメタデータに安全に保存されていませんでした。読み取りアクセス権を持つユーザーは、書き込みアクセス権を取得するためにこれらの資格情報を使用することができました。この問題は、Sync Gatewayがx.509クライアント証明書で認証されているクラスタには影響しません。また、この問題は Sync Gateway で共有バケットアクセスが有効になっていないクラスタには影響しません。
リモートクラスタXDCRの認証情報がデバッグログに漏洩する可能性があります。設定キーのトゥームストーンパージはCouchbase Server 7.0.0で追加されました。この問題は、ログに記録されている設定キーにトゥームストーンのパージタイムスタンプが付与されている場合に発生します。.
cbcollect_info ログ収集の一環として、Couchbase Server は Erlang VM で実行されているすべてのプロセスのプロセス情報を収集します。この問題は、クラスタマネージャーがプラグ可能な UI (クエリワークベンチなど) からの HTTP リクエストを特定のサービスに転送する際に発生します。バックトレースでは、HTTP リクエストに含まれる Basic Auth Header に、UI リクエストを処理しているノードの “@” ユーザー資格情報が含まれています。この問題が発生するには、プロセス情報が、プラグ可能な UI リクエストがクラスタマネージャーによって処理されているまさにその瞬間にトリガーされる必要があります。.
Couchbase Serverのコマンドラインツールで使用される1.26.5以前のurllib3に問題が発見されました。これらのツールに、authorityコンポーネントに多くの@文字を含むURLが提供されると、authority正規表現が壊滅的なバックトラックを示し、URLがパラメータとして渡されるか、HTTPリダイレクトを介してリダイレクトされた場合、コマンドラインツールのサービス拒否を引き起こします。
Couchbase Serverコマンドラインツールで使用されるPython用3.3.2以前の暗号化パッケージでは、複数GBの値を対称的に暗号化するための更新呼び出しの特定のシーケンスにより、そのツールで整数オーバーフローとバッファオーバーフローが発生する可能性があります。
これは、データサービスが利用できなくなる可能性があります。ファイアウォールを使用して、アプリケーションからのネットワークトラフィックのみがCouchbase Serverクラスタと通信できるようにすることをお勧めします。
これは、データサービスが利用できなくなる可能性があります。ファイアウォールを使用して、アプリケーションからのネットワークトラフィックのみがCouchbase Serverクラスタと通信できるようにすることをお勧めします。
外部認証に使用されるLDAPまたはActive Directoryサーバーが安全でない未認証バインドを許可するように設定されている場合、Couchbase Server Cluster Managerは空のパスワードで外部ユーザーを認証することを許可します。
LDAPサーバーは、resultCodeが "unwillingToPerform "の認証なしバインド(Unauthenticated Bind)リクエストに失敗するように設定することで、この発生を防ぐことができる。
そのうちのひとつは、クライアントから悪意を持って細工された再ネゴシエーションの ClientHello メッセージが送信された場合、TLS サーバーがクラッシュする可能性がある。
Couchbase UIで使用されているAngularで、merge()関数を変更することでサービス拒否を引き起こす可能性がある問題。
Common Table Expression N1QLクエリがRBACセキュリティ制御に正しく対応しておらず、必要な権限を持たないユーザーに読み取りアクセス権を与えていました。
ビューエンジンで監査が有効になり、ノード間暗号化が有効になった場合にトリガーされるまれな状態です。Couchbase ServerがTLS経由で、ビューマージ要求のような内部コマンドのリモートホスト名とポートを確認できない場合、管理権限を持つ内部ユーザーの未編集のBase64エンコードされた認証情報を含むエラーがログに記録されます(@ns_server)。.
アップグレードが完了するまで、一時的な回避策としてビューエンジンの監査またはノード間暗号化を無効にすることができます。.
Couchbase Serverは、セッションIDを含む監査イベントが監査ログとdebug.logに記録された際に、ユーザーの一時セッションクッキーをログに記録していました。ログデータにアクセスできる攻撃者は、これを利用して認証済みのユーザーになりすますことができました。.
buger/jsonparser(Go言語用JSONパーサー)ライブラリのセキュリティ上の問題により、攻撃者はCouchbase Server Search Serviceでサービス拒否(DoS)を引き起こすことができます。.
Couchbase Server Analytics Serviceで使用されているApache HttpClientのバージョン4.5.13および5.0.3より前のバージョンでは、java.net.URIオブジェクトとしてライブラリに渡されたリクエストURIの権限コンポーネントが不正な形式の場合、誤って解釈し、リクエスト実行のためのターゲットホストを誤って選択する可能性があります。.
Pythonのrequestsライブラリ(Couchbase CLIが使用)が利用するPythonのurllib3ライブラリには、urllib3バージョン1.24.2より前のバージョンにセキュリティ上の問題があります。このライブラリは、必要とされるCA証明書のセットとOSのCA証明書ストアが異なる特定のケースを誤って処理し、検証に失敗すべき状況でSSL接続を成功させてしまいます。.
Couchbase Server RESTエンドポイントが不明なリクエストを受信すると、そのリクエストはdebug.logおよびinfo.logにエラーとして記録されます。ログには、レッドアクトされていないBase64エンコードされた認証情報が含まれます。エラーメッセージはUIのログタブにも表示されます。.
この問題の影響を受けるバージョンのクラスターからエクスポートされたログは、手動で編集して機密情報を削除してください。クラスターをアップグレードすると、将来のログエントリに@ns_server のパスワードが表示されるのを自動的に防止できます。.
内部REST呼び出し(/listCreateTokens、/listRebalanceTokens、/listMetadataTokens)が、管理者権限を持つ内部ユーザー(@cbq-engine-cbauthおよび@index-cbauth)の未編集のBase64エンコードされた認証情報とともに、indexer.logに記録されています。.
Erlangノード間の通信は、共有秘密(「マジッククッキー」とも呼ばれます)を交換することによって行われます。マジッククッキーがログの内容に含まれる場合があります。攻撃者はクッキーを使用してErlangノードに接続し、Erlangノードを実行しているシステム上でOSレベルのコマンドを実行できます。.
表彰される: EYイスラエル先進セキュリティセンターのセキュリティ研究者、オフイア・ハマム
スローロリスは、攻撃者がHTTPヘッダーを定期的に送信し、決して終了しないリクエストを送信することで、ターゲットのWebエンドポイントをダウンさせることができるサービス拒否攻撃の一種です。HTTPヘッダー受信時のタイムアウトを短縮することは、この攻撃に対する効果的な緩和策であり、クラスター管理およびビューRESTエンドポイントではこのアプローチが採用されています。.
Full Text Seachのユーザーインターフェースには、いくつかの既知の深刻度の高いセキュリティ脆弱性が存在するAngularJS 1.4.7が使用されています。これらのAngularJSライブラリは、これらの脆弱性に対処したより新しいバージョンのAngularに更新されています。
Java 6 (JDK 1.6 – 古いSDKのベースラインバージョン) は、ホスト名検証を標準でサポートしていませんでした。SDKがJava 7 (Java 1.7) をベースラインとして採用すると、サポートの追加が可能になりました。これはjvm-core 1.7.11(java-client 2.7.11に相当)で実現されました。以前のバージョンでは、カスタマイズするための機能が公開されていなかったため、回避策として手動で追加することはできません。古い動作に依存するアプリケーションを壊さないように、ホスト名検証はデフォルトで無効のままですが、SDK設定(CouchbaseEnvironmentクラス)で有効にできることに注意してください。.
プロジェクタープロセスで公開される /settings REST エンドポイントは、管理者が設定の更新やパフォーマンスプロファイルの収集など、さまざまなタスクに使用できるエンドポイントです。このエンドポイントは認証されていませんでしたが、認証されたユーザーのみがこれらの管理APIにアクセスできるように更新されました。
表彰される: アップル・セキュリティ・チーム
Server REST API は認証されていないリクエストに対して {{WWW-Authenticate}} ヘッダで応答する。問題は、これらの認証情報がブラウザによってキャッシュされることで、管理者がブラウザを使って REST API リクエストの結果をチェックした場合に、ハッカーが CSRF を使ってクラスタを攻撃できるようになることだ。.
この動作は couchbase-cli で無効にすることができます (couchbase-cli setting-security -set -disable-www-authenticate 1 -c localhost:8091 -u -p )。既存のツールやスクリプトが壊れる可能性があるため、デフォルトでは無効になっていません。.
表彰される: アップル・セキュリティ・チーム
企業によっては、REST API のエンドポイントが REST レスポンスにセキュリティ関連のヘッダを含めることを要求しています。X-Frame-OptionsやX-Content-Type-Optionsなどのヘッダは一般的に推奨されますが、一部の情報セキュリティ専門家は、さらに、HTMLエンドポイントに一般的に適用されるX-Permitted-Cross-Domain-PoliciesとX-XSS-Protectionも含めることを求めています。これらのヘッダは現在、Couchbase Server Views REST API(ポート8092)からの応答に含まれています。.
Sync Gateway のパブリック REST API にアクセスできる攻撃者は、“_all_docs” エンドポイント上のパラメータ “startkey” および “endkey” を通じて、追加の N1QL ステートメントを発行して機密データを抽出したり、任意の N1QL 関数を呼び出したりすることが可能でした。CPU に負荷のかかる操作でネストされたクエリーを発行することにより、リソースの使用量の増加やサービス拒否状態を引き起こすことができた可能性があります。all_docs」エンドポイントはCouchbase Mobileのレプリケーションには必要なく、この問題を軽減するためにこのRESTエンドポイントへの外部アクセスはブロックされています。.
表彰される: デニス・ヴェルナー/HiSolutions AG
バグレポートの一部としてCouchbaseに提出されたシステム情報には、プライバシーのためにログが編集されていたとしても、現在システムにログインしているすべてのユーザーのユーザー名が含まれていた。
これは、ログにユーザー名が適切にタグ付けされ、ログが再編集される際にハッシュアウトされるように修正された。
イベント発生サービスは、内部トラフィック専用に設定されたポートで、認証情報を必要としないHTTPエンドポイントを介してシステム診断プロファイルを公開します。これは改善され、アクセスするために有効な認証情報が必要になりました。
Couchbase Serverは、デフォルトでは、TCP/8091および/またはTCP/18091で利用可能な‘/diag/eval'エンドポイントを公開しました。. 認証済み を持っているユーザー‘フル管理者‘ロールが割り当てられると、APIの'diag/eval'エンドポイントに任意のErlangコードを送信することができ、そのコードはその後、Couchbaseの起動に使用されたユーザーの権限で、基礎となるオペレーティングシステムで実行される。.
表彰される: アップル・セキュリティ・チーム
ノード内通信に使用されるクッキーは安全に生成されませんでした。Couchbase Serverはerlang:now()を使用してPRNGをシードし、その結果、潜在的なランダムなシードのための小さな検索空間が発生します。
表彰される: アップル・セキュリティ・チーム
セカンダリインデックスは、collatejsonを使用してインデックスされるエントリをエンコードする。これは、バッファがどのような入力に対しても常に必要に応じて大きくなるように改善されました。.
表彰される: DトラストGmbH
無効なリモートクラスタ証明書が参照作成の一部として入力された場合、XDCRは証明書の署名を解析およびチェックしませんでした。そのため、XDCRは無効な証明書を受け入れ、その証明書を使用してリモートクラスタへの今後の接続を確立しようとしました。これは修正されました。XDCRは証明書の有効性を徹底的にチェックするようになり、無効な証明書でリモートクラスタ参照が作成されないようになりました。
Couchbase Serverの5.0以前のバージョンでは、「default」という名前のバケットは、認証なしで読み取りと書き込みアクセスを許可する特別なバケットでした。5.0の一部として、“default ”を含むすべてのバケットの動作は、十分な権限を持つ認証ユーザーのアクセスを許可するように変更されました。しかし、“default” バケツのプロパティが編集された場合、ユーザは認証されていない不正なアクセスを許可されていました。これは修正されました。.