In authkit-nextjs version 2.11.0 and below, authenticated responses do not defensively apply anti-caching headers. In environments where CDN caching is enabled, this can result in session tokens being included in cached responses and subsequently served to multiple users.
Next.js applications deployed on Vercel are unaffected unless they manually enable CDN caching by setting cache headers on authenticated paths.
This vulnerability may lead to session caching, potentially allowing unauthorized users to obtain another user’s session token. The severity depends on deployment configuration, caching policy, and whether authenticated routes are inadvertently cached.
Patched in authkit-nextjs 2.11.1, which applies anti-caching headers to all responses behind authentication.
Authentication middleware should set anti-caching headers for authenticated routes as a defense in depth measure, but cannot guarantee these headers will not be overwritten elsewhere in the application. We recommend the following:
{
"cwe_ids": [
"CWE-524"
],
"github_reviewed": true,
"github_reviewed_at": "2025-11-20T21:29:16Z",
"nvd_published_at": "2025-11-21T02:15:44Z",
"severity": "HIGH"
}