הגדרת CORS פרוצה באפליקציית Cursor
Cursor הוא עורך קוד עם AI - הסטאק כולו בבעלותך, והפריסה הנפוצה היא Vercel או Netlify.
מה הבעיה
API שמחזיר Access-Control-Allow-Origin: * (או משקף כל Origin) יחד עם credentials - כך שכל אתר זר יכול לקרוא לו בשם המשתמש.
למה זה מסוכן
אתר זדוני שהמשתמש שלך גולש בו יכול לשלוח בקשות ל-API שלך עם ה-cookies שלו ולקרוא את התשובות - גניבת נתונים בלי לפרוץ כלום.
איפה זה מתוקן ב-Cursor
סודות יושבים ב-.env מקומי שלא נכנס ל-git, ובהגדרות הסביבה של פלטפורמת הפריסה. כל מפתח שמיובא לקוד client הופך ציבורי.
שלבי התיקון
- הגדר רשימת Origins מפורשת במקום
* - אל תשלב
Allow-Credentials: trueעם Origin משוקף
ההנחיה להדביק ב-Cursor
העתק את ההנחיה הבאה לכלי שבנה את האפליקציה (באנגלית - כך הכלים עובדים הכי טוב):
Replace wildcard CORS with an explicit origin allowlist and never combine Access-Control-Allow-Credentials with a reflected origin.
איך מוודאים שהתיקון עבד
סריקה חוזרת שולחת בקשה עם Origin זר ובודקת מה השרת מאשר.
עוד בנושא
בדיקה חינם
רוצה לדעת אם האפליקציה שלך חשופה? סרוק בחינם ב-30 שניות וקבל ציון אבטחה + הוראות תיקון.