| Title | strapiにおけるセッション期限に関する脆弱性 |
|---|---|
| Summary | Strapiはオープンソースのヘッドレスコンテンツ管理システムです。Strapiのバージョン5.33.3以前では、ユーザーのパスワードを変更またはリセットしても、既存のリフレッシュトークンセッションはデフォルトで無効化されませんでした。ユーザー権限および管理者認証コントローラーにおけるリフレッシュトークン無効化処理は、呼び出し元が提供する`deviceId`に依存していました。パスワード変更またはリセットのリクエストに`deviceId`が含まれていない場合、リフレッシュトークンは一切取り消されず、すべての既存セッションが有効なままでした。以前にリフレッシュトークンを取得していた攻撃者は、正当なユーザーがパスワードをリセットした後も新しいアクセストークンを発行し続けることができ、最大30日間(デフォルト)にわたり不正アクセスを継続しました。認証情報を更新してもアクティブな攻撃者セッションを終了できず、パスワードリセットは侵害抑止の手段として無効でした。バージョン5.33.3の修正では、`deviceId`の有無にかかわらず、パスワード変更およびリセットのたびにそのユーザーに関連付けられたすべてのリフレッシュトークンを無効化します。その後、新しいデバイススコープのセッションがレスポンスの一部として呼び出し元に発行されます。 |
| Possible impacts | 当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 また、当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃の影響は、他のソフトウェアには及びません。 |
| Solution | 正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。 |
| Publication Date | May 14, 2026, midnight |
| Registration Date | May 18, 2026, 12:07 p.m. |
| Last Update | May 18, 2026, 12:07 p.m. |
| CVSS3.0 : 警告 | |
| Score | 6.5 |
|---|---|
| Vector | CVSS:3.0/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N |
| strapi |
| strapi 5.33.3 未満 |
| No | Changed Details | Date of change |
|---|---|---|
| 1 | [2026年05月18日] 掲載 |
May 18, 2026, 12:07 p.m. |
| Summary | Strapi is an open source headless content management system. In Strapi versions prior to 5.33.3, changing or resetting a user's password did not invalidate the user's existing refresh-token sessions by default. The refresh-token invalidation step in the users-permissions and admin authentication controllers was conditional on a caller-supplied `deviceId`. When a password change or reset request did not include a `deviceId`, no refresh tokens were revoked, leaving every prior session active. An attacker who had previously obtained a refresh token could continue minting new access tokens after the legitimate user reset their password, allowing persistent unauthorized access for the lifetime of the refresh token (up to 30 days by default). Rotating credentials no longer terminated an active attacker session, defeating password reset as a containment measure. The patch in version 5.33.3 invalidates all refresh tokens associated with the user on every password change and password reset, regardless of whether a `deviceId` is supplied. A new device-scoped session is then issued to the caller as part of the response. |
|---|---|
| Publication Date | May 15, 2026, 4:16 a.m. |
| Registration Date | May 17, 2026, 4:09 a.m. |
| Last Update | May 16, 2026, 12:23 p.m. |
| Configuration1 | or higher | or less | more than | less than | |
| cpe:2.3:a:strapi:strapi:*:*:*:*:*:node.js:*:* | 5.33.3 | ||||