NextAuth.js is a complete open source authentication solution for Next.js applications. An information disclosure vulnerability in next-auth
before v4.10.2
and v3.29.9
allows an attacker with log access privilege to obtain excessive information such as an identity providers secret in the log (which is thrown during OAuth error handling) and use it to leverage further attacks on the system, like impersonating the client to ask for extensive permissions. This issue has been patched in v4.10.2
and v3.29.9
by moving the log for provider
information to the debug level. In addition, we added a warning for having the debug: true
option turned on in production. If for some reason you cannot upgrade, you can user the logger
configuration option by sanitizing the logs.
Information written to log files can be of a sensitive nature and give valuable guidance to an attacker or expose sensitive user information.
Name | Vendor | Start Version | End Version |
---|---|---|---|
Nextauth.js | Next-auth | * | 3.29.9 (excluding) |
Nextauth.js | Next-auth | 4.0.0 (including) | 4.10.2 (excluding) |
While logging all information may be helpful during development stages, it is important that logging levels be set appropriately before a product ships so that sensitive user data and system information are not accidentally exposed to potential attackers. Different log files may be produced and stored for: