CVE-2017-12635
ErlangベースのJSONパーサーとJavaScriptベースのJSONパーサーの違いにより、Apache CouchDB 1.7.0より前および2.x系の2.1.1より前のバージョンでは、データベース内のアクセス制御に使用される'roles'の重複キーを持つ_usersドキュメントを送信することが可能です。こ...
- 公開済み
- 2017/11/14
- 更新済み
- 2024/09/17
- CNA の割り当て
- apache
- 観察された証拠
- 2018/04/23
プライマリ CVSS
nvd · CVSS 2.0
AV:N/AC:L/Au:N/C:C/I:C/A:C高 · 今後 30 日間
- パーセンタイル
- 100.0%
- モデルの日付
- 2026/09/21
EPSS は統計的な推定値であり、確実性や影響の尺度ではありません。 CVSS、KEV ステータス、暴露、環境と組み合わせます。
概要
ErlangベースのJSONパーサーとJavaScriptベースのJSONパーサーの違いにより、Apache CouchDB 1.7.0より前および2.x系の2.1.1より前のバージョンでは、データベース内のアクセス制御に使用される'roles'の重複キーを持つ_usersドキュメントを送信することが可能です。これには、管理者ユーザーを示す特別なケースである'_admin'ロールも含まれます。CVE-2017-12636(リモートコード実行)と組み合わせることで、非管理者ユーザーにデータベースシステムユーザーとしてサーバー上の任意のシェルコマンドへのアクセスを許可するために使用できます。JSONパーサーの違いにより、JSON内に2つの'roles'キーが存在する場合、2番目のキーがドキュメント書き込みの認可に使用されますが、最初の'roles'キーが新しく作成されたユーザーのその後の認可に使用されるという動作が発生します。設計上、ユーザーは自分自身にロールを割り当てることはできません。この脆弱性により、非管理者ユーザーが自分自身に管理者権限を付与することが可能になります。
ソース
6Dockerベースの再現環境で、Apache CouchDB CVE-2017-12635のJSONパーサーの不整合による垂直権限昇格を再現し、認証なしでの管理者作成を可能にします。
Apache CouchDB 1.6.0 に対する CVE-2017-12635(権限昇格)と CVE-2017-12636(リモートコード実行)の悪用を実証するステップバイステップのラボ。リスク評価と修復ガイダンス付き。
- couchdb-exploitエクスプロイト
責任ある使用
脆弱性情報は、自分が所有しているシステム、またはテストを許可されているシステムでのみ使用してください。 Kitploit は公開研究メタデータにリンクしており、エクスプロイト コードや悪意のあるペイロードは保存しません。