NextAuth.js обеспечивает аутентификацию для Next.js. Начиная с next-auth 5.0.0-beta.0 до 5.0.0-beta.32, приложения, которые ограничивают доступ, проверяя только наличие объекта аутентификации, возвращаемого оболочкой auth(), могут не открыться, если в Auth.js возникает ошибка конфигурации сервера. В промежуточном программном обеспечении, обработчиках маршрутов, компонентах сервера React и других точках входа auth() ответ сеанса, отличный от OK, анализируется в объект истинной ошибки вместо нуля, поэтому такие проверки, как !!auth и if (req.auth), оцениваются как true для неаутентифицированных запросов.
Поставщик, у которого отсутствует как эмитент, так и конечная точка авторизации, запускает InvalidEndpoints, а неустановленный AUTH_SECRET или другая ошибка конфигурации сервера может привести к такому же поведению. Никакого влияния нет, пока конфигурация действительна, но после того, как развертывание становится неправильно настроенным, маршруты, защищенные только существованием сеанса, автоматически предоставляют доступ каждому посетителю. Эта проблема исправлена в следующей аутентификации 5.0.0-beta.32.
Показать оригинальное описание (EN)
NextAuth.js provides authentication for Next.js. From next-auth 5.0.0-beta.0 until 5.0.0-beta.32, applications that gate access by checking only for the existence of the auth object returned by the auth() wrapper can fail open when Auth.js has a server configuration error. In middleware, Route Handlers, React Server Components, and other auth() entry points, a non-OK session response is parsed into a truthy error object instead of null, so checks such as !!auth and if (req.auth) evaluate to true for unauthenticated requests. A provider missing both the issuer and authorization endpoint triggers InvalidEndpoints, and an unset AUTH_SECRET or another server configuration error can produce the same behavior. There is no impact while configuration is valid, but after a deployment becomes misconfigured, routes protected only by session existence silently grant access to every visitor. This issue is fixed in next-auth 5.0.0-beta.32.
Характеристики атаки
Последствия
Строка CVSS v4.0