EitanGuard

כתיבה פתוחה למסד הנתונים באפליקציית v0

v0 של Vercel מייצר קומפוננטות ואפליקציות Next.js שנפרסות ל-Vercel.

מה הבעיה

גם כש-RLS דולק, policy רחבה מדי (או policy של INSERT/UPDATE בלי בדיקת בעלות) מאפשרת לכל מבקר לכתוב למסד הנתונים עם המפתח הציבורי.

למה זה מסוכן

תוקף יכול לזייף רשומות, לדרוס נתונים של משתמשים אחרים או למלא את המסד בזבל עד שהאפליקציה קורסת - הכל בלי להתחבר.

איפה זה מתוקן ב-v0

משתני סביבה מוגדרים ב-Vercel (Project Settings > Environment Variables). כל משתנה עם קידומת NEXT_PUBLIC_ נשלח לדפדפן - סודות בלי הקידומת הזו בלבד.

שלבי התיקון

ההנחיה להדביק ב-v0

העתק את ההנחיה הבאה לכלי שבנה את האפליקציה (באנגלית - כך הכלים עובדים הכי טוב):


Audit every Supabase RLS policy for INSERT/UPDATE/DELETE: remove USING(true) policies and add WITH CHECK (auth.uid() = user_id) so anonymous visitors cannot write.

איך מוודאים שהתיקון עבד

סריקה חוזרת מנסה כתיבת בדיקה לא-הרסנית ומדווחת אם היא עדיין מתקבלת.

עוד בנושא

בדיקה חינם

רוצה לדעת אם האפליקציה שלך חשופה? סרוק בחינם ב-30 שניות וקבל ציון אבטחה + הוראות תיקון.

סרוק את האפליקציה שלך בחינם