製品・ソフトウェアに関する情報
getkirbyのkirbyにおける不正な認証に関する脆弱性
Title getkirbyのkirbyにおける不正な認証に関する脆弱性
Summary

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`権限を持たないユーザーは公開ページではなくページドラフトのみを作成できるようにしました。

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

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

Publication Date April 24, 2026, midnight
Registration Date April 30, 2026, 12:29 p.m.
Last Update April 30, 2026, 12:29 p.m.
CVSS3.0 : 警告
Score 6.5
Vector CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N
Affected System
getkirby
kirby 4.9.0 未満
kirby 5.0.0 以上 5.4.0 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年04月30日]
  掲載
April 30, 2026, 12:29 p.m.

NVD Vulnerability Information
CVE-2026-40099
Summary

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.

Publication Date April 24, 2026, 10:16 a.m.
Registration Date April 25, 2026, 4:07 a.m.
Last Update April 28, 2026, 4:12 a.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:getkirby:kirby:*:*:*:*:*:*:*:* 4.9.0
cpe:2.3:a:getkirby:kirby:*:*:*:*:*:*:*:* 5.0.0 5.4.0
Related information, measures and tools
Common Vulnerabilities List