I have a small web-based Flutter application that uses Firebase/Firestore. The security rules are allow read, write;
I got an anonymous email from a (friendly) hacker stating that
- "Our Firebase database credentials are leaked in response to a request" (??)
- "He was able to modify the database" (which he did indeed)
I understand that I have virtually no security with the given rules but can somebody explain how a hacker can get access to the database and modify it? I guess the starting point is the network requests that can be seen in the browsers developer console but I have no clue what's next. Can somebody outline how one can modify the Firestore database?
In an attempt to improve this, I have added anonymous authentication to my project and modified the security rules to allow read, write: if request.auth != null;
Does this make hacking attempts (a bit) less easy?