GHSA-wpfr-6297-9v57 User object created with invalid provider data in GoTrue
GoTrue creates user objects with invalid provider metadata, potentially allowing security bypasses if that metadata is used for authorization decisions.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is GHSA-wpfr-6297-9v57?
GHSA-wpfr-6297-9v57 is a vulnerability in github.com/netlify/gotrue, published on 9 Feb 2022. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Impact
What kind of vulnerability is it? Who is impacted?
Under certain circumstances a valid user object would have been created with invalid provider metadata.
This vulnerability affects everyone running an instance of GoTrue as a service. We advise you to update especially if you are using the provider metadata from the user object to secure other resources.
Patches
Has the problem been patched? What versions should users upgrade to?
A patch is available with the release of version 1.0.1 on Github.
Workarounds
Is there a way for users to fix or remediate the vulnerability without upgrading?
If you don't rely on the provider metadata in the user object, you might not be affected. We still strongly recommend upgrading.
References
Are there any links users can visit to find out more?
This problem was initially found and reported by the team at Supabase: https://github.com/supabase/gotrue/security/advisories/GHSA-5hvv-9cqv-894r. We want to thank them for the cooperation around this report.
In contrast to their advisory, we decided to set the severity to "Moderate" since the provider metadata is not an inherent security feature of this GoTrue codebase or the Netlify ecosystem.
For more information
If you have any questions or comments about this advisory:
- Email us at [email protected]
Which versions are affected by GHSA-wpfr-6297-9v57?
3 open source packages ship an affected version, including github.com/netlify/gotrue.
| Package | Affected | Fixed in |
|---|---|---|
github.com/netlify/gotrue Go | All versions | 1.0.1 |
github.com/netlify/gotrue Go | All versions | 1.0.1 |
github.com/netlify/gotrue Go | All versions | 1.0.1 |
How do I fix GHSA-wpfr-6297-9v57?
Upgrade github.com/netlify/gotrue to 1.0.1 or later.
Is GHSA-wpfr-6297-9v57 being exploited?
There is no known exploitation of GHSA-wpfr-6297-9v57 in the wild and no public exploit code.
Sources
Also known as GO-2022-0365.