מפתחים ישראליים בונים אפליקציות ווב ללא כלים ייעודיים לסריקת אבטחה שמתחשבים בהקשר הישראלי: קלט בעברית שדורש סניטציה מיוחדת, תקיפות Unicode דו-כיווניות, דרישות חוק הגנת הפרטיות, ודליפת מפתחות API של שירותים ישראליים. בלי סריקה מותאמת, פגיעויות ספציפיות לאפליקציות ישראליות נשארות בלתי מזוהות.
יוצר: @skills-il
סריקת אבטחה לאפליקציות ישראליות. בדיקות OWASP Top 10, עמידה בדרישות רשות הגנת הפרטיות, סריקת תלויות, זיהוי סודות, ודפוסי קוד מאובטח לאפליקציות בעברית/RTL.
npx skills-il add skills-il/security-compliance --skill israeli-appsec-scannerכלי סריקה ובדיקות אבטחה שמותאם לאפליקציות ווב ישראליות. הסקיל מכסה את כל הספקטרום, מבדיקות OWASP Top 10 ועד עמידה בדרישות רשות הגנת הפרטיות, עם דגש מיוחד על וקטורי תקיפה שקשורים לעברית ו-RTL.
עברו על כל קטגוריה בשיטתיות. לכל ממצא, סמנו רמת חומרה (קריטי/גבוה/בינוני/נמוך) ותנו המלצת תיקון.
'; DROP TABLE -- עם תווים בעברית).env עם credentials של שירותים ישראליים נמצאים ב-.gitignorenpm audit או pnpm audit וטפלו בממצאים קריטיים/גבוהיםtrivy image)חוק הגנת הפרטיות (1981) והתקנות שלו מטילים דרישות ספציפיות על אפליקציות שמטפלות במידע אישי של תושבי ישראל.
על פי החוק הישראלי, מאגרי מידע מסוימים שמכילים מידע אישי חייבים להירשם ברשות:
רשימת בדיקות: עמידה בחוק הגנת הפרטיות
[ ] הסכמה: קבלו הסכמה מדעת לפני איסוף מידע אישי
- ההסכמה חייבת להיות ספציפית, מושכלת וחופשית
- טקסט ההסכמה בעברית חייב להיות ברור ומובן
- הסכמה נפרדת למטרות עיבוד שונות
[ ] הגבלת מטרה: שימוש במידע רק למטרה המוצהרת
- תעדו את המטרה במדיניות הפרטיות (עברית + אנגלית)
- אל תשנו ייעוד מידע ללא הסכמה מחודשת
[ ] מזעור מידע: אספו רק מידע הכרחי
- בדקו כל שדה בטופס מבחינת הכרחיות
- מספרי תעודת זהות יש לאסוף רק כשיש חובה חוקית
[ ] אמצעי אבטחה: יישמו אמצעים טכניים מתאימים
- עקבו אחרי "תקנות אבטחת מידע" (2017) של הרשות
- בצעו הערכות אבטחה שנתיות
- שמרו לוגים של גישות למשך 24 חודשים לפחות
[ ] זכויות נושאי מידע: תמכו בבקשות גישה, תיקון ומחיקה
- הגיבו תוך 30 יום לבקשות גישה למידע
- ספקו מידע בפורמט מובנה וקריא מכונה
- תמיכה בעברית לכל התקשורת עם נושאי מידע
[ ] הודעה על אירוע אבטחה: הודיעו לרשות ולנפגעים
- "אירוע אבטחה חמור" חייב דיווח לרשות
- ההודעה צריכה להיות בעברית לתושבי ישראל
- תעדו את כל האירועים ושלבי התיקוןהחוק הישראלי מגביל העברת מידע אישי מחוץ לישראל. ההעברה מותרת כאשר:
תרחישים נפוצים באפליקציות ישראליות:
# הרצת סריקת פגיעויות
pnpm audit
# תיקון אוטומטי היכן שאפשר
pnpm audit --fix
# יצירת דוח JSON מפורט
pnpm audit --json > audit-report.json
# בדיקה לפי רמת חומרה
pnpm audit --audit-level=high# סריקת תמונת Docker
trivy image your-app:latest
# סריקה עם סינון חומרה
trivy image --severity HIGH,CRITICAL your-app:latest
# סריקת מערכת קבצים (לפרויקטים מקומיים)
trivy fs --security-checks vuln,secret,config .# שימוש ב-pip-audit
pip-audit
# עם הצעות תיקון
pip-audit --fix --dry-run
# סריקת קובץ requirements
pip-audit -r requirements.txtאפליקציות ישראליות משתמשות בדרך כלל ב-credentials של שירותים שלעולם לא צריכים להיכנס ל-version control:
שערי תשלום ישראליים:
שירותים ישראליים:
# סריקת היסטוריית git
trufflehog git file://. --only-verified
# סריקת ענף ספציפי
trufflehog git file://. --branch main --only-verified
# סריקה עם פלט JSON
trufflehog git file://. --json > secrets-report.json# סריקת מאגר
gitleaks detect --source . --verbose
# סריקה עם קונפיגורציה מותאמת לשירותים ישראליים
gitleaks detect --source . --config .gitleaks.toml
# יצירת דוח
gitleaks detect --source . --report-format json --report-path gitleaks-report.jsonתווי בקרה דו-כיווניים יכולים לגרום לקוד להיראות שונה ממה שהוא באמת עושה. זה רלוונטי במיוחד בבסיסי קוד מעורבים עברית/אנגלית.
תווים מסוכנים לזהות:
מניעה: הריצו את סקריפט הזיהוי שנמצא ב-scripts/security-audit-checklist.py כדי לסרוק קבצי קוד לתווים דו-כיווניים חבויים.
תווים עבריים מסוימים דומים ויזואלית לתווים לטיניים, מה שמאפשר פישינג וזיוף:
| עברית | דומה ללטינית | Unicode |
|---|---|---|
| ס (סמך) | o | U+05E1 |
| ו (וו) | l, 1 | U+05D5 |
| ח (חת) | n | U+05D7 |
| ן (נון סופית) | l | U+05DF |
מניעה: נרמלו ובדקו תקינות של כל ה-URL-ים והמזהים שגלויים למשתמשים. דחו מחרוזות מעורבות כתב בהקשרים רגישים מבחינת אבטחה.
// ולידציה לקלט בעברית בלבד
const HEBREW_PATTERN = /^[\u0590-\u05FF\s\-'".,:;!?()]+$/;
// ולידציה לקלט מעורב עברית/אנגלית
const MIXED_PATTERN = /^[\u0590-\u05FFa-zA-Z0-9\s\-'".,:;!?()@#$%&*]+$/;
// ולידציית מספר טלפון ישראלי
const IL_PHONE_PATTERN = /^(\+972|0)(5[0-9]|7[2-9])\d{7}$/;
// ולידציית מספר תעודת זהות עם ספרת ביקורת
function validateIsraeliId(id) {
if (!/^\d{9}$/.test(id)) return false;
let sum = 0;
for (let i = 0; i < 9; i++) {
let digit = parseInt(id[i]) * ((i % 2) + 1);
if (digit > 9) digit -= 9;
sum += digit;
}
return sum % 10 === 0;
}// נכון: שאילתה עם פרמטרים (מאובטח)
const { data, error } = await supabase
.from('skills')
.select('*')
.ilike('name_he', `%${searchTerm}%`);
// לא נכון: שרשור מחרוזות (פגיע ל-SQL injection)
// const query = `SELECT * FROM skills WHERE name_he LIKE '%${searchTerm}%'`;import { randomBytes } from 'crypto';
function generateCsrfToken(): string {
return randomBytes(32).toString('hex');
}
function validateCsrfToken(session: string, submitted: string): boolean {
return session === submitted && session.length === 64;
}// הגבלת בקשות OTP למניעת ניצול לרעה
// SMS ישראלי עולה בערך 0.05-0.15 שקלים להודעה
const OTP_LIMITS = {
perPhone: { max: 3, windowMs: 15 * 60 * 1000 }, // 3 ב-15 דקות לטלפון
perIp: { max: 10, windowMs: 60 * 60 * 1000 }, // 10 בשעה ל-IP
global: { max: 1000, windowMs: 60 * 60 * 1000 }, // 1000 בשעה גלובלי
};| דרישה | חוק ישראלי | מקבילה ב-GDPR | סטטוס |
|---|---|---|---|
| בסיס חוקי לעיבוד | סעיף 1, חה"פ | סעיף 6 GDPR | [ ] |
| דרישות הסכמה | סעיף 11, חה"פ | סעיף 7 GDPR | [ ] |
| זכות גישה | סעיף 13, חה"פ | סעיף 15 GDPR | [ ] |
| זכות תיקון | סעיף 14, חה"פ | סעיף 16 GDPR | [ ] |
| זכות מחיקה | סעיף 14א, חה"פ | סעיף 17 GDPR | [ ] |
| אמצעי אבטחה | תקנות 2017 | סעיף 32 GDPR | [ ] |
| הודעה על אירוע | תקנה 11א | סעיפים 33-34 GDPR | [ ] |
| העברה חוצת גבולות | סעיף 36, חה"פ | סעיפים 44-49 GDPR | [ ] |
| רישום מאגר | סעיף 8, חה"פ | סעיף 30 GDPR (ROPA) | [ ] |
אם האפליקציה שלכם מעבדת כרטיסי אשראי ישראליים (ישראכרט, לאומי קארד, כאל):
השתמשו בסקריפטים המצורפים לבדיקות אוטומטיות:
# הרצת רשימת בדיקות אבטחה מלאה
python scripts/security-audit-checklist.py --project-dir /path/to/project
# סריקה לאיתור credentials של שירותים ישראליים
bash scripts/secrets-scanner.sh /path/to/project
# יצירת דוח ציות
python scripts/security-audit-checklist.py --project-dir /path/to/project --format json > report.jsonעיינו בתיקיית references/ למידע מפורט על חוק הגנת הפרטיות ושיקולי OWASP לאפליקציות עברית/RTL.
סוכנים נתמכים
בצע סריקת אבטחה מלאה של האפליקציה שלי לפי OWASP Top 10 עם דגש על קלט בעברית ותקיפות RTL
סרוק את הפרויקט שלי לדליפת מפתחות API של שירותים ישראליים כמו Cardcom, Tranzila, ו-Supabase
בדוק האם האפליקציה שלי עומדת בדרישות חוק הגנת הפרטיות הישראלי ותקנות אבטחת מידע 2017
סרוק את הקוד שלי לתווי Unicode דו-כיווניים מוסתרים שעלולים לשנות את לוגיקת הקוד
ציון אמון
הסקיל יכול להריץ סקריפטים ופקודות על המערכת שלך.
נמצאו 1 התאמות בקוד
הסקיל יכול לגשת למשתני סביבה שעלולים להכיל סודות.
נמצאו 10 התאמות בקוד
ביקורת תאימות חוקית לחנויות מקוונות ישראליות — חוק הגנת הצרכן, מדיניות החזרות, נגישות ועוגיות
מסגרת רגולציית סייבר ישראלית — הנחיות מערך הסייבר הלאומי, הוראות בנק ישראל 361 ו-357, דרישות רשות ניירות ערך, וכללים מגזריים לפינטק ובריאות
בדיקת תאימות לחוק הגנת הפרטיות ולתקנות GDPR
רוצים לבנות סקיל משלכם? נסו את יוצר הסקילס · הגשת סקיל