אבטחת Python

אבטחת Python ב-Django, FastAPI ו-Flask משלבת הרשאות למשאב, שאילתות בטוחות והגנת בקשות עם עוגיות. כבו DEBUG ואל תטענו נתונים לא מהימנים בעזרת pickle או eval.

עודכן תוכן העמוד: · מערכת VibeSec · מדיניות המקורות

סיכונים ובדיקות ראשונות

  • אין pickle או yaml.load לא בטוח על נתונים לא אמינים; אין eval של קלט
  • ORM/raw SQL משתמשים בפרמטרים, וכל route/dependency בודק בעלות והרשאות
  • Django CSRF לא מושבת; Flask/FastAPI עם session cookies כוללים הגנת CSRF מפורשת

צ'קליסט אבטחה

  1. אין pickle או yaml.load לא בטוח על נתונים לא אמינים; אין eval של קלט
  2. ORM/raw SQL משתמשים בפרמטרים, וכל route/dependency בודק בעלות והרשאות
  3. Django CSRF לא מושבת; Flask/FastAPI עם session cookies כוללים הגנת CSRF מפורשת
  4. DEBUG כבוי, ALLOWED_HOSTS מוגבל, וסודות לא מופיעים בשגיאות ובתיעוד ציבורי
  5. הרצתי Bandit ו-pip-audit; סיסמאות מגובבות ב-Argon2 עם ספרייה מתוחזקת
לבדיקות המלאות ולסימון התקדמות

כלים מתאימים

  • Bandit

    סריקה סטטית לקוד Python לאיתור בעיות אבטחה נפוצות.

  • Bearer

    SAST עם התמקדות בפרטיות ו-PII

  • CodeQL

    מנוע ניתוח סטטי של GitHub

  • Dependabot

    עדכונים אוטומטיים לתלויות פגיעות

  • GitGuardian

    זיהוי סודות ומפתחות שדלפו לקוד

  • GitHub Advanced Security

    סריקת קוד וסודות ישירות ב-GitHub

  • Gitleaks

    סריקת סודות ומפתחות ב-Git

  • OSV-Scanner

    איתור חולשות בתלויות עם OSV

  • pip-audit

    בדיקת תלויות Python מול מאגרי חולשות ידועות.

  • Safety

    סריקת תלויות Python מול מאגר חולשות; תכונות וגישה למאגר תלויות במסלול השירות.

  • Semgrep

    ניתוח סטטי מהיר עם כללים גמישים

  • Snyk

    סריקת אבטחה מקצה לקצה לקוד ותלויות

  • SonarQube

    איכות קוד ואבטחה בכלי אחד

  • Trivy

    סורק אוניברסלי לקונטיינרים ו-IaC

  • TruffleHog

    איתור סודות ומפתחות שנחשפו

כלי אבטחה נוספים

ספריות ותיעוד

  • argon2-cffi

    גיבוב סיסמאות באמצעות Argon2 ב-Python עם ממשק ברמה גבוהה.

  • bandit

    סורק סטטי לאיתור פגיעויות בקוד Python.

  • cryptography

    ספריית הצפנה הסטנדרטית של Python.

  • Django Authentication

    מנגנון האימות הרשמי של Django לניהול משתמשים, sessions והרשאות.

  • django-ratelimit

    הגבלת קצב ל-Django עם cache מתאים; אינה מחליפה הגנת תשתית.

  • OWASP SQL Injection Prevention Cheat Sheet

    מניעת SQLi באמצעות שאילתות פרמטריות, הפרדת נתונים מתחביר והרשאות מינימליות.

  • pydantic

    ולידציה של נתונים ב-Python מבוססת type hints.

עדכונים אחרונים

  • עדכון אבטחה קריטי ב-Django: חובה לעדכן גרסה

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

  • הכירו את HTTP2Shell: סיכון אבטחה בטכנולוגיית הדחיסה Brotli

    חולשת אבטחה בטכנולוגיית הדחיסה Brotli עלולה להשפיע על אפליקציות Node.js ו-Python, וגם על אתרי WordPress. מדובר בסיכון פוטנציאלי להרצת פקודות מרחוק על השרת שלכם. חשוב לבדוק אם סביבת הפיתוח שלכם מעודכנת לגרסאות שמתקנות את הפגיעות.

  • שדרוג קבוצת חבילות pip כולל עדכון certifi

    עדכון גרסאות אוטומטי למספר ספריות Python, כולל ספריית certifi האחראית על אימות תעודות SSL/TLS. שמירה על תעודות שורש מעודכנות חיונית למניעת מתקפות אדם בתווך ותקשורת מוצפנת תקינה. השינוי מחזק את שרשרת האספקה של סביבת הריצה.

  • לא צריך להיות גאון במתמטיקה כדי ללמוד פייתון – צריך לדעת איך לחשוב

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

  • פיתוח מטבח צעצוע אינטראקטיבי בפייתון בעזרת Vibe Coding

    מפתח מדגים כיצד השתמש בגישת Vibe Coding כדי לשלוט ברכיבי חומרה, משאבה וחיישני מצוף באמצעות קובץ פייתון יחיד. הפרויקט מדגים שילוב קוד שנוצר על ידי AI עם רכיבי IoT פיזיים. עם זאת, הוא מעלה סוגיות של בטיחות קוד כאשר תוכנה מתממשקת ישירות עם חומרה ומשאבות.

  • פגיעות בפענוח Brotli מאפשרת RCE: משפיעה על Node.js, Bun ו-Python

    חולשת השחתת זיכרון במפענח ה-Brotli של גוגל מאפשרת ביצוע קוד מרחוק (RCE) במגוון רחב של פלטפורמות, בהן Node.js, Bun, ספריות Python ושרתי Envoy. הפגיעות נובעת מכתיבה מעבר לגבולות החוצץ בעת פריסת מידע דחוס שעבר מניפולציה זדונית. מפתחים נדרשים לשדרג באופן מיידי את סביבות הריצה וספריות התלויות המושפעות.

  • חולשת RCE קריטית בספריית Pillow בפייתון מאפשרת הרצת פקודות באמצעות תמונה

    חולשת אבטחה חמורה התגלתה בספריית Pillow הפופולרית לעיבוד תמונות בפייתון, המאפשרת הרצת פקודות מערכת בשרת. הפגיעות נובעת מאופן הטיפול בקובצי EPS, שבו שם הקובץ מועבר לתוכנת Ghostscript החיצונית ללא אימות או סינון מקדים. מפתחים המשתמשים בספרייה בצינורות עיבוד נתונים או שרתי ווב נדרשים לעדכן גרסה בהקדם.

  • כיצד השתמשתי ב-VibeCodeArena לבניית והערכת יומן טיפים ב-Angular ו-Flask

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

קריאה נוספת

בדיקת חדירות (PT): מתי נכון לעשות, ולמה

אמ;לק: בדיקת חדירות (Penetration Test, PT) היא ניסיון פריצה מבוקר שעושה אדם מקצועי לאתר או לאפליקציה שלכם, כדי למצוא חולשות לפני שתוקף אמיתי ימצא אותן. היא שווה את הכסף כשיש לכם משתמשים אמיתיים, מידע רגיש או כסף שעובר במערכת, ואחרי שכבר עשיתם את הבדיקות הבסיסיות בעצמכם. לפני זה, רוב הממצאים יהיו דברים שסורק חינמי היה מוצא.

גיא אקרמן · 4 דקות קריאה

ליווי של איש אבטחת מידע תוך כדי פיתוח: כן, לא, ומתי

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

גיא אקרמן · 3 דקות קריאה

שאלות נפוצות

איך מתחילים לאבטח Python?

אבטחת Python ב-Django, FastAPI ו-Flask משלבת הרשאות למשאב, שאילתות בטוחות והגנת בקשות עם עוגיות. כבו DEBUG ואל תטענו נתונים לא מהימנים בעזרת pickle או eval.

מה לבדוק קודם ב-Python?

התחילו בבדיקות הבאות והתאימו אותן למערכת שלכם: אין pickle או yaml.load לא בטוח על נתונים לא אמינים; אין eval של קלט. ORM/raw SQL משתמשים בפרמטרים, וכל route/dependency בודק בעלות והרשאות.

האם קוד AI ב-Python בטוח כברירת מחדל?

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

אילו כלי אבטחה מתאימים ל-Python?

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

איפה שומרים מפתחות וסיסמאות ב-Python?

מפתחות סודיים נשמרים בשרת או במנהל סודות, לא בקוד שמגיע לדפדפן ולא ביומני פעילות. תנו לחשבון היישום רק הרשאות נחוצות והחליפו מפתח שנחשף.

איך יודעים שהעדכונים ל-Python רלוונטיים?

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

VibeSec — מרכז האבטחה ל-Vibe Coding