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