שירותים / Testing
DAST
בדיקת אבטחת אפליקציה דינמית (Dynamic Application Security Testing): בחנו את האפליקציה הפועלת בכל שחרור, לא פעם בשנה.
הבעיה
אתם משחררים פעמיים בשבוע. בדיקת החדירה נעשית פעם בשנה. בין שתי העובדות האלה יושבים בערך מאה שחרורים שאף אחד לא בחן מבחינת אבטחה, והבדיקה הבאה תמצא משהו ששוחרר לפני שמונה חודשים.
השיטה.
בחנו את האפליקציה כפי שהיא רצה, עם Authentication
סריקה ללא Authentication בוחנת את דף הכניסה ותו לא. DAST מוגדר עם פרטי גישה תקפים לכל תפקיד ולכל Tenant, עם זרימת אימות וסשן פועלת, כך שהסריקה מגיעה לחלק האפליקציה שבו הסיכון באמת נמצא.
הנעת הכיסוי מחוזה ה-API
אפליקציות מודרניות הן API מאחורי לקוח. הכיסוי מונע מסכמת OpenAPI או GraphQL, בתוספת תעבורה מוקלטת ל-Endpoints שהסכמה משמיטה, כך שהסריקה מפעילה פרמטרים אמיתיים, צורות מטען אמיתיות וסוגי תוכן אמיתיים במקום לזחול על קישורים בדף.
בחנו את מה שתוקף בוחן
הזרקה, cross-site scripting, SSRF, deserialisation לא-מאובטח, mass assignment, path traversal, חולשות אימות וסשן, ועם פרטי גישה ל-Multi-tenant מוגדרים, הרשאה ברמת אובייקט בין Tenants. ממופה ל-OWASP Top 10 ול-OWASP API Security Top 10.
חיווט לתוך צינור השחרור
סריקה מאומתת מלאה מול staging בקצב מוגדר, עם סריקה ממוקדת מהירה יותר על הנתיבים ששחרור נוגע בהם. ממצאים מעל חומרה מוסכמת חוסמים את השחרור. בחינה שקורה לאחר פריסה היא בחינה שמדווחת על בעיות שהלקוחות שלכם כבר חווים.
סינון לפני שמשהו מגיע למהנדס
פלט DAST גולמי רועש, ותור רועש הוא תור שמתעלמים ממנו. כל ממצא מאומת ידנית ומשוחזר לפני שהוא מועלה. מהנדסים מקבלים בעיות מאושרות עם הבקשה המדויקת, לא ייצוא סורק.
מהו DAST?
DAST בוחן אפליקציה פועלת מבחוץ, שולח בקשות אמיתיות ל-Endpoints אמיתיים וצופה בתגובות, ללא גישה לקוד המקור. הוא מוצא חולשות שקיימות רק בזמן ריצה (הזרקה, cross-site scripting, SSRF, חולשות אימות וסשן, וכשלי הרשאה) במערכת הפרוסה כפי שהיא באמת מתנהגת, כולל התצורה שלה והתלויות שלה.
האם DAST מחליף בדיקת חדירה?
לא. DAST רץ ברציפות ותופס מחלקות חולשות ידועות בכל שחרור; בדיקת חדירה מבוצעת על ידי אדם שמבין את הלוגיקה העסקית שלכם ויכול לשרשר ממצאים להשפעה מודגמת. DAST מכסה את מאה השחרורים שבין הבדיקות השנתיות. בדיקת החדירה מוצאת את הדברים שמכונה אינה יכולה לחשוב עליהם. לקוחות אנטרפרייז ומבקרים מבקשים את שניהם, מסיבות שונות.
למה DAST חייב לרוץ עם Authentication?
כי סריקה ללא Authentication מגיעה רק לדף הכניסה. כמעט כל חולשה חמורה במוצר SaaS חיה מאחורי אימות: במודל ההרשאות, בבידוד ה-Tenants, בפונקציונליות האדמין וב-API. תצורת DAST ללא פרטי גישה תקפים לכל תפקיד ו-Tenant מייצרת דוח נקי על החלק של האפליקציה שאף אחד לא תוקף.