איום ה-XSS ותפקיד ה-WAF

(של פרנצ'סקו רוגלו)
11/04/24

בין מתקפות הסייבר המנצלות שיטות של הזרקת תסריט il Scripting בין אתרים (XSS) זה ללא ספק אחד המפורסמים ביותר ובמאמר קצר זה אנסה להסביר את הסיכונים והתפקיד החשוב שמילא כלי בשם WAF (Web Application Firewall) כקו ההגנה הראשון נגד התקפות אלו.

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

קודם כל, ישנם שני סוגים עיקריים של XSS, מה שנקרא משתקף ו מאוחסן, נקרא גם האחרון מַתְמִיד.

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

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

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

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

Lo XSS מאוחסן אין ספק שמדובר בסוג מתקפה מורכב ומסוכן יותר שכן הוא משפיע על כל משתמש שניגש לאפליקציה הפגיעה, ההאקר נשאר מוסתר על ידי גניבת נתונים רגישים לפרקי זמן ממושכים, ומכאן השם "XSS מתמשך".

אז איך נוכל להגן על יישומי האינטרנט שלנו מפני סוג זה של התקפה?

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

WAFs הם עזרה חשובה בהגנה עלינו מפני איומים חיצוניים מסוגים שונים, מפני התקפות זדוניות ומפני תעבורה לא רצויה לשרתים שלנו, כמו הגנת בוטים, שלילת שירות התקפות מסוג (DOS). הזרקה, התקפות של התקפה XSS (XSS) ed הזרקת SQL אלטרו.

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

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

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

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

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

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

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

https://owasp.org/www-community/attacks/xss/ למידע מפורט יותר על xss

https://seerbox.it/ דוגמה ל-WAF שאינו מבוסס חתימות