בתקשורת נתונים, התקפת מניעת שירות (באנגלית: Denial-of-service attack - DoS) או התקפת מניעת שירות מבוזרת (distributed denial-of-service attack - DDoS) היא משפחת תקיפות שנועדה להשבית מערכת מחשב על ידי יצירת עומס חריג על משאביה. מתקפה כזו יכולה למנוע מקבוצת משתמשים גישה למשאב מחשב מסוים על ידי העמסת אותו המשאב כך שלמשתמשים הלגיטימיים לא יישארו משאבים. DoS מתאר התקפה שמקורה הוא מחשב יחיד ו-DDoS מתאר התקפה שמקורה במספר מחשבים מסונכרנים. כדי ליצור את "צבא הבוטים" שמציף את המטרה בתנועה ממקורות שונים, האקרים לעיתים מדביקים מכשירים בתוכנה זדונית (malware), ומשתמשים במכשיר ללא ידיעת בעליו.
אף על פי שקיים מגוון רחב מאוד של מטרות ואמצעים למניעת המשאבים, במרבית המקרים מדובר בניסיון של אדם או קבוצת אנשים למנוע מאתרי אינטרנט או שירותי אינטרנט אחרים מלפעול בצורה תקינה או מלפעול בכלל. יעדים נפוצים הם אתרים בעלי פרופיל גבוה, כגון אתרי בנקים, אתרים פוליטיים, ממשלתיים ואף שרתי השורש של DNS.
שיטה אחת להתקפת מניעת שירות היא סינכרון מספר רב של מחשבים (לעיתים באמצעות סוס טרויאני) השולחים לשרת היעד בו-זמנית בקשה לשירות כלשהו וכך בעצם מונעים מבקשות לגיטימיות אחרות לקבל את אותו השירות אם בשל עומס משאבי מחשב על השרת עצמו ואם בשל חוסר נגישות רשתית לאותו השרת.
התקפות מניעת שירות נועדו למטרות שונות, החל משעשוע, דרך פשיעה, עבור בטרור וכלה בלוחמת סייבר.
סוגי התקפות
התקפות מניעת שירות הן מסוגים שונים, שכל אחד מהם מנצל פרצת אבטחה אחרת במערכת המותקפת כדי להשיג את האפקט המבוקש.
התקפה על משאבי השרתים עצמם
שימוש בכונן קשיח, ברוחב פס, בזיכרון ובמעבד וכדומה. פרצת האבטחה המנוצלת בסוג זה היא הגבלת המשאבים של המחשב המותקף, וכך באמצעות ניצול חלקו העיקרי של אחד מאותם משאבים ניתן לנטרל את פעולתו. סוג זה הוא הנפוץ ביותר מבין התקפות מניעת השירות שכן הוא הפשוט מכולם וכל שהוא דורש הוא היכולת לנצל חלק משמעותי ממשאב הרשת של המחשב הנתקף. התקפות בסיסיות לדוגמה הן:
התקפת פינג: שולחים בקשות פינג רבות על מנת להעמיס על השרת ולגרום לסירובו לבקשות משמעותיות יותר. כיום התקפות כאלו נדירות יחסית מכיוון שמרבית השרתים שהותקפו חוסמים את אפשרות הפינג.
הצפת SYN: במסגרת ההתקפה התוקף שולח רצף של חבילות SYN למחשב המותקף ובכך מאלץ אותו לפתוח במקביל חיבורים רבים עד שלא נותרים לו משאבים לקבלת חיבורים חדשים. בכך התוקף מונע מהמחשב המותקף להעניק שירות למשתמשים אחרים ומשיג את מבוקשו. הצפת SYN היא התקפה מוכרת ביותר ולרוב אינה אפקטיבית כנגד שרתים ורכיבי רשת מודרניים שכן אמצעי התמודדות רבים כבר שולבו באלו על מנת שיוכלו להתמודד איתה.
התקפת שיבוש: ברשתות אלחוטיות אפשרית חסימה אלקטרונית של הרמה הפיזית במטרה למנוע מעבר מידע תקין על גבי אותו התווך בין הצמתים ברשת. בניגוד להתקפות מניעת שירות אחרות, התקפת שיבוש אינה מכוונת לצמתים ברשת, אלא לתווך הפיזי המקשר ביניהם שהוא גם משותף במרבית המקרים לכל מי שנמצא במרחק פיזי מסוים מהרשת.
התקפה על תצורת הרשת
פרצות האבטחה המנוצלות בסוג זה הן בדרך כלל חולשות לוגיות בפרוטוקולים המשמשים לניתוב הרשת, שניצולם מאפשר לתוקף ליצור אפקטים ברשת המונעים מהמחשב המותקף להעניק שירות. התקפות לדוגמה הן:
חולשות במנגנון ה-DNS: מנגנון ה-DNS מתרגם שמות תחום (Domain name), הנוחים יותר לשימוש אנושי טבעי (ה-URL), לכתובות הנומריות האמיתיות (כתובות IP) אליהם יש לפנות בזמן ההתקשרות. שיבוש מנגנון זה יוביל את הפניות לכתובת אחרת מזו שלה נועדו.
שמיטת חבילות מידע: התקפה זו מתאפשרת ברשת שבה לתוקף יש שליטה על אחד מהנתבים, ובמסגרתה הצומת המנתב הנשלט משמיט חבילות מידע המנותבות דרכו באופן מלא ("התקפת חור שחור") או באופן חלקי על ידי בחירה אקראית של חבילות מידע או השמטה כל n חבילות או כל t שניות ("התקפת חור אפור").
התקפות מסוג זה מנצלות באג במימוש התוכנה המורצת על גבי המחשב הנתקף ובאמצעותו מביאות לקריסת התוכנה. לאחר הקריסה לרוב השירות אינו יכול להמשיך ולכן נוצרת התקפת מניעת שירות. גלישת חוצץ למשל יכולה להביא לקריסת התוכנה המורצת על ידי השרתים. עוד דוגמה היא התקפת ReDOS (אנ'), שמנצלת את כך שיש ביטויים רגולריים שבמימושים מסוימים יכולים לקחת זמן אקספוננציאלי ביחס לאורך הקלט, כך שמשתמש שיכול לשלוט על הביטוי ועל הקלט יכול להביא לעומס על השרת שמחשב אותם.[1]