מידע מורחב

  • תאריך
  • שעה 12:03
  • ע"י
  • צפיות 1664
  • תגובות 0
  • דירוג 5 /5

פאזינג אג'ילי - Agile Fuzzing

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

פיתוח אג'ילי נמצא בכל מקום
אין אדם אחד המעורב בפיתוח התוכנה שלא שמע על ה- "מנשר הזריז" (Agile Manifesto). בעוד שנעשה שימוש בשיטות כאלו בצורה כזו או אחרת מאז שנות ה-50 מאוחרות, רק לאחרונה פיתוח תוכנה זריז הפך למרכזי ואף מוביל.
למרות שזה אולי לא מתאים לכל פרויקט, השיטה בהחלט הוכיחה את ערכה בהבאת פתרונות חדשים ותכונות המתאימות ללקוחות - בזמן הנכון. מטרה העיקרית של פרויקטיAgile היא לחסוך זמן באמצעות פיתוח תכונות המוסיפות ערך ורלוונטיות ללקוחות, ודברים נעשים במחזורי שחרור/דילוור מהירים יותר.

תהליכי בדיקה המתאימים לדרישות האג'ייל
למרות המניפסט מדגיש ארבעה אינדיקאטורים שצריכים להנחות את צוותי הפיתוח, יש ללכת לפי רוח הדברים ולא מילולית. המניפסטו נכתב באופן מדגיש נקודות מסוימות על חשבון הקצנה בניסוח וזאת (לדעתי) כתגובת נגד לאופי העבודה בפועל שנצפה בשטח. כאשר מציינים כי אנשים ואינטראקציות "יעמדו" מעל תהליכים וכלים – אין הדבר אומר שאין צורך בתהליכים וכלים או שהשימוש אסור כלל (הרי גם Agile הוא תהליך). זה רק אומר שתהליכים, כגון תהליכי הבדיקה צריכים להיות מותאמים כדי לענות על הדרישות הזריזות. הפוקוס צריך להיות על האנשים ולא על כלים, על אינטראקציות בצוותים ולא על דוחות/דיווחים ותהליכים. יש להתאים את הכלים לדרכי העבידה ולא לכופף את דרכי העבודה למוגבלויות הנגזרות מהכלים.

הוספת ניתוח-איומים ופאזינג למודל פיתוח אג'ייל
"ניתוח איומים" (threat analysis) ופאזינג (fuzzing) כלולים במודלים המסורתיים של פיתוח מוכוון אבטחה (SDL – Secure Development Lifecycle) אבל חסרים בהגדרות ה- Agile. צריך להוסיף את "ניתוח איומים" כפריט ל- scrum backlog או הגדרה שוות ערך בשיטות זריזות אחרות. ב-"ניתוח איומים", ממשקים שניתן פוטנציאלית להתעלל בהם (קרא, לתקוף אותם) עם נתונים פגומים - מזוהים ומסומנים כמטרות לפאזינג. פעולה זו מביאה לחיסכון במשאבי זמן ובדיקות כאשר מספר מטרות בדיקה מופחת. כאשר פעולה זו מבוצעת כראוי (פעם אחת) בצוות זריז (Agile), המפתחים בדרך כלל מתחילים באופן אוטומטי, להעריך (assess) איומים אפשריים נגד פיצ'רים חדשים שפותחו.
שימוש בפאזינג באופן "נכון" משמעותו מיקוד בממשקים מסוכנים, אוטומציה מלאה ועזרה לצוותי הפיתוח ללא הכבדה מיותרת. פאזינג חכם יעזור לשפר את איכות התוכנה ויחסוך זמן במציאת באגים וכשלי אבטחה בצורה מהירה ויעילה וכן יעזור באימות התיקונים בשלב בדיקות הרגרסיה. ניתן להביא לקיצוץ עלויות ולחסכון גדול ע"י מציאת ותיקון כשלים באופן יזום/פרואקטיבי ובכך לחסוך את מספר הפאצ'ים (security & stability patches) המשוחררים ללקוחות.
עדיין לא נרשמת לאתר ? לחץ כאן להרשמה מהירה
נא המתן...
דירוג


עליך להתחבר כדי להגיב. לחץ כאן להתחברות.