כותרות אבטחה חסרות באפליקציית v0
v0 של Vercel מייצר קומפוננטות ואפליקציות Next.js שנפרסות ל-Vercel.
מה הבעיה
כותרות HTTP שהדפדפן משתמש בהן כדי לחסום מתקפות: Content-Security-Policy, Strict-Transport-Security, X-Frame-Options, X-Content-Type-Options ועוד. אפליקציות שנבנו מהר מגיעות לרוב בלעדיהן.
למה זה מסוכן
בלי CSP, סקריפט מוזרק רץ חופשי (XSS). בלי X-Frame-Options אפשר לעטוף את האתר ב-iframe ולגנוב קליקים. בלי HSTS אפשר להוריד משתמשים ל-HTTP.
איפה זה מתוקן ב-v0
כותרות מגדירים ב-headers() של next.config.js או ב-vercel.json.
שלבי התיקון
- הגדר את הכותרות בשכבת ההגשה - כותרות הן תכונה של תגובת ה-HTTP, ותגי meta לא מחליפים אותן
- התחל מ-CSP בסיסית, HSTS, X-Frame-Options: DENY ו-X-Content-Type-Options: nosniff
- ודא שהן חלות על כל הנתיבים, לא רק על דף הבית
ההנחיה להדביק ב-v0
העתק את ההנחיה הבאה לכלי שבנה את האפליקציה (באנגלית - כך הכלים עובדים הכי טוב):
Add real HTTP response headers (not meta tags) for Content-Security-Policy, Strict-Transport-Security, X-Frame-Options: DENY and X-Content-Type-Options: nosniff, applied to every route at the hosting layer.
איך מוודאים שהתיקון עבד
הרץ curl -sSI https://your-domain.com וודא שהכותרות מופיעות בפלט, ואז סריקה חוזרת.
עוד בנושא
בדיקה חינם
רוצה לדעת אם האפליקציה שלך חשופה? סרוק בחינם ב-30 שניות וקבל ציון אבטחה + הוראות תיקון.