חוקי Firebase פתוחים באפליקציית Cursor
Cursor הוא עורך קוד עם AI - הסטאק כולו בבעלותך, והפריסה הנפוצה היא Vercel או Netlify.
מה הבעיה
Firestore או Realtime Database עם חוקים שמאפשרים קריאה/כתיבה לכולם (allow read, write: if true) - ברירת מחדל נפוצה של "נסדר אחר כך".
למה זה מסוכן
תצורת ה-Firebase של האפליקציה גלויה בקוד ה-client, אז כל אחד יכול להתחבר ישירות למסד ולקרוא או לדרוס הכל.
איפה זה מתוקן ב-Cursor
סודות יושבים ב-.env מקומי שלא נכנס ל-git, ובהגדרות הסביבה של פלטפורמת הפריסה. כל מפתח שמיובא לקוד client הופך ציבורי.
שלבי התיקון
- החלף כל
if trueבבדיקת אימות ובעלות:allow read, write: if request.auth.uid == resource.data.uid - פרסם את החוקים המעודכנים ובדוק אותם ב-Rules Playground
ההנחיה להדביק ב-Cursor
העתק את ההנחיה הבאה לכלי שבנה את האפליקציה (באנגלית - כך הכלים עובדים הכי טוב):
Rewrite the Firebase security rules to require authentication and ownership on every read and write - no if true rules anywhere.
איך מוודאים שהתיקון עבד
סריקה חוזרת מנסה גישה אנונימית למסד ומדווחת מה עדיין פתוח.
עוד בנושא
בדיקה חינם
רוצה לדעת אם האפליקציה שלך חשופה? סרוק בחינם ב-30 שניות וקבל ציון אבטחה + הוראות תיקון.