脆弱性・CVE速報深刻度: 高

SonicJS 3.0.0 までのコンテンツ書き込み API で、作成者・編集者が他人の文書を変更・公開・削除できる欠陥(CVE-2026-119707): 修正は未マージのドラフト PR、リリースなし

目次(6)

CVE-2026-119707

NVD は 2026-10-30 に、オープンソースのヘッドレス CMS「SonicJS」の CVE-2026-119707 を登録しました。3.0.0 まで(npm パッケージ @sonicjs-cms/core)の版では、/api/:collection と /api/content の書き込み系ルートが大まかな役割名だけを確認します。認証済みの作成者(author)や編集者(editor)が、ベアラー JWT または API キーを使って、他の利用者の文書を作成・変更・公開・論理削除できます。文書ごとのアクセス制御(ACL)や、管理者が設定した拒否の上書きも回避されます。登録元(CNA)は VulnCheck です。

何が起きるか

  • 対象は、CMS にログインできる低権限の利用者です。書き込み時に確認されるのは役割名だけで、文書の ACL や公開権限は見られていません。
  • 本来は拒否されるはずの他人の文書に対して、変更・公開・削除ができます。公開済みサイトの内容を書き換えられるため、改ざんや誤情報の掲載につながると考えられます(推定)。
  • 機密情報の読み取りは含まれません(CVSS の機密性影響は「なし」)。影響は主に完全性で、可用性は低い扱いです。
  • 実際の悪用は確認していません。具体的なリクエストの内容は載せません。

修正の状況

  • 修正は、公式リポジトリの PR #1147 として 2026-10-29 に起票されています。2026-11-01 時点でドラフトのまま未マージで、課題 #1125 も開いたままです。
  • PR の説明では、書き込み前に文書の ACL・公開権限を確認する処理を追加し、拒否は RBAC(ロールによる許可)より優先するとしています。同じ確認を管理画面の経路にも入れる内容です。一方、GraphQL・MCP・/admin/documents を同じ扱いにするかは PR 内で未決の質問として残っています。
  • 最新のリリースは v3.0.0(2026-10-26)で、npm の最新タグも 3.0.0 です。修正を含む版は 2026-11-01 時点で確認できません。
  • 回避策は確認できていません。

数値と出典(2026-11-01 時点)

項目内容
CVECVE-2026-119707(CWE-862)
影響版SonicJS 3.0.0 まで(@sonicjs-cms/core)
修正PR #1147(ドラフト・未マージ)。修正版リリースは未確認
CVSS v3.17.1(High、AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L)。VulnCheck(CNA)の値
CVSS v4.07.1(High)。VulnCheck(CNA)の値
NVD の状態Deferred(NVD 自身の評価は未実施)
EPSS0.31%(パーセンタイル 23.5%、2026-10-31、FIRST)
KEV掲載なし(CISA の JSON、カタログ版 2026.10.30 で確認)

severity を high とした理由

CVSS は 7.1 で、ネットワーク経由・低難度で、他人の文書を変更・公開・削除できます。一方で、ログイン済みの低権限アカウントが前提で、機密性への影響はなく、EPSS は低く、KEV にも載っていません。medium との境界で、公開コンテンツの改ざんに使える点を重く見て high としました。

対応として考えられること

  1. 利用中の SonicJS の版を確認します。3.0.0 以前の場合は、修正を含むリリースの公開を確認し、公開され次第更新します。
  2. 当面は、作成者・編集者の権限を持つアカウントを必要な人に絞り、不要な API キーを失効させることが考えられます(推定。効果は確認していません)。
  3. 公開済み文書の変更履歴や、作成者・編集者アカウントによる書き込みの記録を確認します。想定外の更新・公開・削除があれば調べます。
  4. 管理者だけが書き込める運用にできる場合は、役割の割り当てを見直します(推定)。

未確認の点

  • 実際の悪用は確認していません。
  • 修正の内容が最終的にどうなるか(PR は未マージのドラフトで、GraphQL・MCP などの扱いが未決)と、リリース時期は確認できていません。
  • 3.0.0 より前の版の影響範囲は、CVE の記載(3.0.0 まで)以上には確認できていません。
  • NVD 自身の評価は未実施(Deferred)です。CVSS は VulnCheck(CNA)の値です。
  • 第三者の調査記事が公開されていますが、本記事では内容を引用していません。

この記事について

出典

この記事を共有