getkirbyのkirbyにおける不正な認証に関する脆弱性
タイトル getkirbyのkirbyにおける不正な認証に関する脆弱性
概要

Kirbyはオープンソースのコンテンツ管理システムです。Kirbyのユーザー権限は、どのユーザーロールがCMS内のコンテンツモデルに対して特定のアクションを実行できるかを制御します。これらの権限はユーザーブループリント(`site/blueprints/users/...`)内の各ロールごとに定義されています。また、モデルブループリント(例:`site/blueprints/pages/...`)の`options`機能を使って、各対象モデルの権限をカスタマイズすることも可能です。権限とオプションは合わせてユーザーアクションの認可を管理します。ページに関しては、Kirbyは`pages.create`と`pages.changeStatus`(その他を含む)という権限を提供しています。4.9.0および5.4.0以前のバージョンでは、Kirbyはこれらの権限を独立してかつそれぞれのアクションに対してのみチェックしていました。しかし、`changeStatus`権限はページ作成時には適用されていませんでした。新規ページはデフォルトでドラフトとして作成され、既存のページドラフトのステータスを変更して公開しなければなりません。これはKirby Panel経由でページが作成される場合に保証されます。しかしREST APIでは、新規ページ作成時に`isDraft`フラグをオーバーライドすることが可能でした。これにより、`pages.create`権限を持つ認証済み攻撃者は、通常の編集ワークフローをバイパスして即座に公開ページを作成できてしまいました。この問題はKirby 4.9.0および5.4.0で修正されました。Kirbyは権限チェックをページ作成ルールに追加し、`pages.changeStatus`権限を持たないユーザーは公開ページではなくページドラフトのみを作成できるようにしました。

想定される影響 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 
対策

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

公表日 2026年4月24日0:00
登録日 2026年4月30日12:29
最終更新日 2026年4月30日12:29
CVSS3.0 : 警告
スコア 6.5
ベクター CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
影響を受けるシステム
getkirby
kirby 4.9.0 未満
kirby 5.0.0 以上 5.4.0 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
変更履歴
No 変更内容 変更日
1 [2026年04月30日]
  掲載
2026年4月30日12:29

NVD脆弱性情報
CVE-2026-40099
概要

Kirby is an open-source content management system. Kirby's user permissions control which user role is allowed to perform specific actions to content models in the CMS. These permissions are defined for each role in the user blueprint (`site/blueprints/users/...`). It is also possible to customize the permissions for each target model in the model blueprints (such as in `site/blueprints/pages/...`) using the `options` feature. The permissions and options together control the authorization of user actions. For pages, Kirby provides the `pages.create` and `pages.changeStatus` permissions (among others). Prior to versions 4.9.0 and 5.4.0, Kirby checked these permissions independently and only for the respective action. However the `changeStatus` permission didn't take effect on page creation. New pages are created as drafts by default and need to be published by changing the page status of an existing page draft. This is ensured when the page is created via the Kirby Panel. However the REST API allows to override the `isDraft` flag when creating a new page. This allowed authenticated attackers with the `pages.create` permission to immediately create published pages, bypassing the normal editorial workflow. The problem has been patched in Kirby 4.9.0 and Kirby 5.4.0. Kirby has added a check to the page creation rules that ensures that users without the `pages.changeStatus` permission cannot create published pages, only page drafts.

公表日 2026年4月24日10:16
登録日 2026年4月25日4:07
最終更新日 2026年4月28日4:12
影響を受けるソフトウェアの構成
構成1 以上 以下 より上 未満
cpe:2.3:a:getkirby:kirby:*:*:*:*:*:*:*:* 4.9.0
cpe:2.3:a:getkirby:kirby:*:*:*:*:*:*:*:* 5.0.0 5.4.0
関連情報、対策とツール
共通脆弱性一覧