Open CritiqalPete opened 10 months ago
note that we have a dependent task to enable enumeration protection once this has been addressed.
need to determine the actual risk level as well as the effort to update our methods.
Some resources on Firebase enumeration attacks:
StackOverflow: Shows a recent (~3 month) post from user inquiring about deprecated Firebase fetchSignInMethodsForEmail. The following essentially describes:
enable/disable the protection against email enumeration attacks
Analysis: I am unsure of how practical the non-trivial solution is for a user base as large as SCORES.
Google Cloud Services, Enable or disable email enumeration protection:
Additional information of note:
Conclusive Recommendations from Google Cloud:
If your apps rely on any of the behaviors described earlier, we recommend that you begin migrating away from doing so, and enable email enumeration protection as soon as you can.
https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection
Notes from Triage (4/5)
@CritiqalPete
@CritiqalPete tried to find "fetchSignInMethodsForEmail" but it seems like recent updates have fixed this so its not looking as an issue for us. Thanks
Google Firebase support calls out this method as vulnerable to an email "enumeration attack"
Is this being used for the Authenticate by Apple or Google feature? If so, we need to replace/update.
A search shows this method in two pods: RNFBAuthModule FirAuth
and two node modules: auth-public auth-credential
if it is unused, we can ignore.
We highly recommend enabling email enumeration protection on all your projects after testing with your app.
If you currently utilize fetchSignInMethodsForEmail (doc examples: Java, JS, Swift), your projects will be affected. When email enumeration is enabled, the fetchSignInForEmail API will fail. Linking anonymous authenticated users with an email address will also not work prior to SDK version 22.3.0 for Android, 10.18.0 for iOS, and 10.6.0 for Web.
A full list of affected flows is also available for review.
Additionally, FirebaseUI libraries first run fetchSignInMethodsForEmail before allowing a user to sign in with their preferred method. If you have a dependency on the library, you should evaluate impact before enabling email enumeration detection. Once FirebaseUI libraries are updated (issue 1, issue 2, issue 3, issue 4), you should enable email enumeration protection.
One or more of your projects have Firebase Auth or Google Cloud Identity Platform enabled.
We’re here to help If you have any additional questions, please look through our documentation center.