מפתח API חשוף בקוד באפליקציית Windsurf
Windsurf הוא עורך קוד עם AI - כמו ב-Cursor, הסטאק והפריסה בבעלותך.
מה הבעיה
מפתחות סודיים - Stripe סודי, OpenAI/Anthropic, AWS/GCP - שהוטמעו בקוד הצד-לקוח. כל מבקר יכול לחלץ אותם מה-JavaScript של האתר.
למה זה מסוכן
מפתח LLM חשוף הופך לחשבונית של אלפי דולרים על שימוש של זרים. מפתח Stripe סודי מאפשר גישה לתשלומים. מפתח ענן יכול להשתלט על התשתית כולה.
איפה זה מתוקן ב-Windsurf
סודות יושבים ב-.env מקומי מחוץ ל-git ובהגדרות הסביבה של המארח. ייבוא מפתח לקוד client חושף אותו.
שלבי התיקון
- סובב כל מפתח שנחשף - מרגע שהיה בקוד ציבורי הוא שרוף, גם אם "אף אחד לא ראה"
- העבר כל קריאה שדורשת מפתח סודי לצד השרת (serverless function / Edge Function)
- בצד ה-client השאר רק מפתחות שנועדו להיות ציבוריים (Stripe publishable, Supabase anon)
ההנחיה להדביק ב-Windsurf
העתק את ההנחיה הבאה לכלי שבנה את האפליקציה (באנגלית - כך הכלים עובדים הכי טוב):
Search the client bundle for secret API keys (Stripe secret, OpenAI, Anthropic, AWS). Move every call that needs them to a server-side function reading the key from an environment variable. I will rotate the exposed keys myself.
איך מוודאים שהתיקון עבד
סריקה חוזרת עוברת על כל קובצי ה-JavaScript המוגשים ומאתרת תבניות של מפתחות סודיים.
עוד בנושא
בדיקה חינם
רוצה לדעת אם האפליקציה שלך חשופה? סרוק בחינם ב-30 שניות וקבל ציון אבטחה + הוראות תיקון.