EitanGuard

הגדרת CORS פרוצה באפליקציית v0

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

מה הבעיה

API שמחזיר Access-Control-Allow-Origin: * (או משקף כל Origin) יחד עם credentials - כך שכל אתר זר יכול לקרוא לו בשם המשתמש.

למה זה מסוכן

אתר זדוני שהמשתמש שלך גולש בו יכול לשלוח בקשות ל-API שלך עם ה-cookies שלו ולקרוא את התשובות - גניבת נתונים בלי לפרוץ כלום.

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

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

שלבי התיקון

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

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


Replace wildcard CORS with an explicit origin allowlist and never combine Access-Control-Allow-Credentials with a reflected origin.

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

סריקה חוזרת שולחת בקשה עם Origin זר ובודקת מה השרת מאשר.

עוד בנושא

בדיקה חינם

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

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