ביקורת אבטחה עם ציון

מי שבנה מערכת ב-Lovable, ב-Bolt או עם Supabase צריך תשובה פשוטה: כמה זה מאובטח, ומה לתקן קודם. ה-Skill מריץ ביקורת לפי סדר קבוע, נותן ציון לכל אחד מששת התחומים ולכולם יחד, כותב דוח עם ראיה לכל ממצא, ומסיים בפרומפט אחד לכלי הפיתוח. בדיקות מול מערכת חיה הן קריאה בלבד, ורק על מערכת שלכם. זהו Skill ל-Claude: תיקייה עם קובץ SKILL.md, שנטענת אוטומטית כשהמשימה מתאימה לתיאור שבראש הקובץ. בניגוד לפרומפט שמדביקים בכל פעם מחדש, Skill מותקן פעם אחת וממשיך לעבוד לבד.

קוד ואיכות · אבטחה · ביקורת · ציון · דוח · Supabase

מתי הוא נכנס לפעולה

---
name: security-audit
description: "Security audit with a score for apps built with AI on Supabase, Vercel, Lovable or Bolt: six scored areas, an overall grade with caps, a Hebrew report with evidence for every finding, and one fix prompt. Use when the user asks for a security audit, a security score or a fix prompt, only on systems the user owns or may test."
---

# ביקורת אבטחה עם ציון

## שפה

כל הפלט בעברית: שאלות, עדכונים, הדוח והפרומפט. באנגלית נשארים רק קוד, שמות
קבצים, טבלאות, פקודות ומונחים מקצועיים (בפעם הראשונה עם הסבר קצר בעברית).

## שלב 0: של מי המערכת

בודקים רק מערכת של המשתמש, או מערכת שבעליה נתנו לו רשות לבדוק.
אם זה לא ברור (דומיין זר, קוד בלי מקור), שואלים פעם אחת. אם זו מערכת של מישהו
אחר בלי רשות, לא בודקים ואומרים את זה. ניסיון חדירה לאתר של אחר בלי רשות הוא
עבירה.

## שלב 1: לאסוף חומר

לקרוא בעצמך כשיש תיקייה מקומית, ולא לבקש הדבקות:
1. הסטאק: `package.json`, הגדרות Vite/Next/Vercel, Supabase או מסד אחר.
2. מיגרציות, מדיניות RLS, פונקציות SQL, באקטים.
3. פונקציות שרת ו-webhooks.
4. קוד לקוח שקורא למסד, משתני `VITE_` / `NEXT_PUBLIC_`.
5. פיצ'רי AI: איפה נקרא המודל, איפה הפלט מוצג.

לרשום מה **לא** התקבל. זה קובע את רמת הביטחון.

## שלב 2: לבדוק

להריץ את תהליך הבדיקה של ה-Skill `input-output-security`, עם הכלים שבתיקיית
`scripts/` שלו. גבולות שלא משתנים:
- בדיקות מול מערכת חיה הן **קריאה בלבד**.
- בדיקת התחזות ב-SQL רק בתוך transaction שמתגלגל לאחור, ועדיף בסביבת פיתוח.
- לא כותבים, לא מעדכנים ולא מוחקים נתונים בפרודקשן.

לתחום **פיצ'רי AI** בודקים מצד המגן:
- מפתח המודל נמצא רק בשרת.
- פלט המודל עובר escape לפני שהוא מוצג כ-HTML.
- פעולות שהמודל מפעיל נבדקות בשרת מול הרשאות המשתמש.
- יש הגבלת קצב ותקרת עלות לנקודה שקוראת למודל.
- שגיאת הספק לא מגיעה ללקוח.

## שלב 3: לאמת

ממצא נכנס לדוח רק עם ראיה: `קובץ:שורה`, שם מדיניות, או תוצאת בדיקה.
חשד בלי ראיה נכנס ל"לבדוק" ולא מוריד ציון. אותו שורש בעיה בכמה מקומות הוא ממצא אחד.

## שלב 4: ציון

לפי `reference/scoring.md`: ציון לכל אחד מששת התחומים, ציון כולל משוקלל עם
תקרות, דרגה ורמת ביטחון. לחשב בסקריפט קצר ולא בראש, ולהציג את החישוב בשורה
אחת בדוח.

## שלב 5: דוח

לפי `reference/report-template.md`. לשמור כ-`security-report.md` בתיקיית
הפרויקט, ולהציג למשתמש את השורה התחתונה ואת טבלת הציונים.

הפרומפט לתיקון: פרומפט אחד מרוכז לכלי הפיתוח, עם כל הממצאים לפי סדר חומרה.
לא שולחים אותו בלי אישור.

## מצב לימוד

כשבודקים פרויקט של תלמיד או של צוות: לכל ממצא שורת "מה ללמוד מזה" (המושג בשפה
פשוטה, ולמה כלי AI נוטה ליצור את הטעות הזו), ובסוף שלושה הרגלים לפרויקט הבא.
טון ענייני ומעודד. ביקורת על הקוד, לא על האדם.

## מה לא עושים

- לא מנפחים: חוסר בכותרת אבטחה לא נחשב קריטי כשהמסד פתוח.
- לא מתקנים קוד בלי שביקשו. ה-Skill מאבחן, מדרג ומייצר פרומפט.

איך מתקינים

  1. צרו תיקייה בשם security-audit בתוך ‎.claude/skills/‎ בפרויקט, או בתיקיית הבית לשימוש בכל הפרויקטים.
  2. שמרו בתוכה את הקובץ בשם SKILL.md.
  3. זהו. אין צורך להפעיל כלום, והוא ייטען לבד כשהמשימה תתאים לתיאור.