หลายปีที่ผ่านมา การปฏิเสธบริการแบบกระจาย (DDoS) เป็นวิธีที่น่าเชื่อถือสูงในการทำให้แน่ใจว่าบริการที่เป็นโฮสต์ (เช่นเว็บไซต์หรือบริการบางอย่างเช่น PlayStation Network) จะไม่เห็นแสงสว่างของวันอย่างน้อยชั่วขณะหนึ่ง
พลังที่การโจมตีเหล่านี้ใช้ทำให้ผู้คนสงสัยเกี่ยวกับกลไกที่อยู่เบื้องหลังพวกเขา เราจึงได้ใช้เวลาในการอธิบายวิธีการทำงานของการโจมตีและได้แสดงให้ประจักษ์อย่างละเอียดถี่ถ้วนว่าการโจมตีบางส่วนสามารถเกิดขึ้นได้มากเพียงใด จนถึงจุดที่ หนึ่งในนั้นสามารถดึงเอาอินเทอร์เน็ตทั้งภาคสำหรับผู้คนนับล้านออกไป อย่างไรก็ตาม มีการอภิปรายสาธารณะเพียงเล็กน้อยเกี่ยวกับวิธีการทำงาน (เช่น การป้องกัน DDoS)
ปัญหาในการสนทนาเรื่องการป้องกัน DDoS
อินเทอร์เน็ตเป็นเครือข่ายขนาดมหึมาที่เชื่อมต่อผ่านความว่างเปล่าขนาดมหึมา มีแพ็กเก็ตเล็กๆ หลายล้านล้านตัวที่เดินทางด้วยความเร็วเกือบเท่าแสงทุกที่ทั่วโลก เพื่อให้เข้าใจถึงการทำงานภายในที่สับสนและลึกลับ อินเทอร์เน็ตจึงถูกแบ่งออกเป็นกลุ่ม กลุ่มเหล่านี้มักถูกแบ่งออกเป็นกลุ่มย่อย เป็นต้น
สิ่งนี้ทำให้การสนทนาเกี่ยวกับการป้องกัน DDoS ซับซ้อนขึ้นเล็กน้อย วิธีที่คอมพิวเตอร์ที่บ้านปกป้องตัวเองจาก DDoS นั้นทั้งคล้ายกันและแตกต่างเล็กน้อยจากวิธีที่ศูนย์ข้อมูลของบริษัทที่มีมูลค่าหลายล้านดอลลาร์ทำ และเรายังไม่ถึงผู้ให้บริการอินเทอร์เน็ต (ISP) มีหลายวิธีในการจำแนกประเภทการป้องกัน DDoS เช่นเดียวกับการจำแนกชิ้นส่วนต่างๆ ที่ประกอบเป็นอินเทอร์เน็ตด้วยการเชื่อมต่อนับพันล้านครั้ง คลัสเตอร์ การแลกเปลี่ยนในทวีป และเครือข่ายย่อย
จากทั้งหมดที่กล่าวมา เรามาลองใช้วิธีการผ่าตัดที่เกี่ยวกับรายละเอียดที่เกี่ยวข้องและสำคัญทั้งหมดของเรื่อง
หลักการเบื้องหลังการป้องกัน DDoS
หากคุณกำลังอ่านข้อความนี้โดยไม่ทราบว่า DDoS ทำงานอย่างไร เราขอแนะนำให้คุณอ่านคำอธิบายที่ฉันลิงก์ไปก่อนหน้านี้ มิฉะนั้น อาจดูล้นหลามเล็กน้อย มีสองสิ่งที่คุณทำได้กับแพ็กเก็ตขาเข้า:คุณสามารถ ละเว้น หรือ เปลี่ยนเส้นทาง . คุณไม่สามารถหยุดไม่ให้มันมาถึงได้เพราะคุณไม่สามารถควบคุมแหล่งที่มาของแพ็กเก็ตได้ มาแล้วและซอฟต์แวร์ของคุณอยากรู้ว่าควรทำอย่างไร
นี่เป็นความจริงสากลที่เราทุกคนปฏิบัติตาม และรวมถึง ISP ที่เชื่อมต่อเรากับอินเทอร์เน็ต นั่นเป็นสาเหตุที่การโจมตีจำนวนมากประสบความสำเร็จ เนื่องจากคุณไม่สามารถควบคุมพฤติกรรมของแหล่งที่มาได้ แหล่งที่มาจึงสามารถส่งแพ็กเก็ตให้คุณมากพอที่จะครอบงำการเชื่อมต่อของคุณ
ซอฟต์แวร์และเราเตอร์ (Home Systems) ทำอย่างไร
หากคุณใช้ไฟร์วอลล์ในคอมพิวเตอร์หรือเราเตอร์ของคุณมีไฟร์วอลล์ คุณมักจะปฏิบัติตามหลักการพื้นฐานข้อหนึ่ง นั่นคือ หากการรับส่งข้อมูล DDoS เข้ามา ซอฟต์แวร์จะสร้างรายการ IP ที่มากับการรับส่งข้อมูลที่ผิดกฎหมาย
โดยจะสังเกตได้เมื่อมีบางสิ่งส่งข้อมูลขยะจำนวนมากหรือคำขอเชื่อมต่อถึงคุณด้วยความถี่ที่ผิดธรรมชาติ เช่น มากกว่าห้าสิบครั้งต่อวินาที จากนั้นจะบล็อกธุรกรรมทั้งหมดที่มาจากแหล่งนั้น การบล็อกพวกเขา คอมพิวเตอร์ของคุณจะไม่ต้องใช้ทรัพยากรเพิ่มเติมในการตีความข้อมูลที่อยู่ในนั้น ข้อความเพียงไม่ถึงปลายทาง หากคุณถูกบล็อกโดยไฟร์วอลล์ของคอมพิวเตอร์และพยายามเชื่อมต่อ คุณจะได้รับการเชื่อมต่อหมดเวลา เพราะสิ่งที่คุณส่งไปจะถูกเพิกเฉย
นี่เป็นวิธีที่ยอดเยี่ยมวิธีหนึ่งในการป้องกันการโจมตีแบบ single-IP denial of service (DoS) เนื่องจากผู้โจมตีจะเห็นการเชื่อมต่อหมดเวลาทุกครั้งที่เช็คอินเพื่อดูว่าฝีมือของพวกเขามีความคืบหน้าหรือไม่ ด้วยการปฏิเสธบริการแบบกระจาย สิ่งนี้ได้ผลเพราะข้อมูลทั้งหมดที่มาจาก IP ที่โจมตีจะถูกละเว้น
มีปัญหากับรูปแบบนี้
ในโลกของอินเทอร์เน็ตไม่มีคำว่า "การบล็อกแบบพาสซีฟ" คุณต้องการทรัพยากรแม้ว่าคุณจะเพิกเฉยต่อแพ็กเก็ตที่เข้ามาหาคุณ หากคุณใช้ซอฟต์แวร์ จุดโจมตีจะหยุดที่คอมพิวเตอร์แต่ยังคงทะลุผ่านเราเตอร์เหมือนกระสุนทะลุกระดาษ ซึ่งหมายความว่าเราเตอร์ของคุณกำลังทำงานอย่างไม่รู้จักเหน็ดเหนื่อยเพื่อกำหนดเส้นทางแพ็กเก็ตที่ผิดกฎหมายทั้งหมดไปในทิศทางของคุณ
หากคุณกำลังใช้ไฟร์วอลล์ของเราเตอร์ ทุกอย่างจะหยุดอยู่ตรงนั้น แต่นั่นก็หมายความว่าเราเตอร์ของคุณกำลังสแกนแหล่งที่มาของแต่ละแพ็กเก็ตแล้ววนซ้ำรายการ IP ที่ถูกบล็อกเพื่อดูว่าควรละเว้นหรืออนุญาตผ่านหรือไม่
ลองนึกภาพว่าเราเตอร์ของคุณต้องทำในสิ่งที่ฉันเพิ่งพูดถึงเป็นล้านครั้งต่อวินาที เราเตอร์ของคุณมีพลังในการประมวลผลที่จำกัด เมื่อถึงขีดจำกัดนั้นจะมีปัญหาในการจัดลำดับความสำคัญของการรับส่งข้อมูลที่ถูกต้อง ไม่ว่าจะใช้วิธีการขั้นสูงแบบใดก็ตาม
มาทิ้งเรื่องทั้งหมดนี้ไว้เพื่อหารือเกี่ยวกับประเด็นอื่น สมมติว่าคุณมีเราเตอร์วิเศษที่มีพลังการประมวลผลที่ไม่จำกัด ISP ของคุณยังคงให้แบนด์วิดท์ในปริมาณที่จำกัด เมื่อถึงขีดจำกัดแบนด์วิดท์แล้ว คุณจะลำบากในการทำภารกิจง่ายๆ บนเว็บให้สำเร็จ
ดังนั้นทางออกที่ดีที่สุดสำหรับ DDoS คือการมีพลังการประมวลผลที่ไม่จำกัดและแบนด์วิดท์จำนวนไม่สิ้นสุด หากมีใครรู้วิธีที่จะทำให้สำเร็จ เราก็ดีใจ!
บริษัทขนาดใหญ่จัดการกับภาระงานได้อย่างไร
ความงดงามของวิธีที่บริษัทต่างๆ จัดการกับ DDoS นั้นอยู่ในความสง่างาม:พวกเขาใช้โครงสร้างพื้นฐานที่มีอยู่เพื่อตอบโต้ภัยคุกคามใดๆ ที่เข้ามา โดยปกติจะทำผ่านตัวโหลดบาลานซ์ เครือข่ายการกระจายเนื้อหา (CDN) หรือทั้งสองอย่างรวมกัน เว็บไซต์และบริการที่มีขนาดเล็กกว่าอาจจ้างบุคคลภายนอกนี้หากพวกเขาไม่มีเงินทุนในการดูแลเซิร์ฟเวอร์ที่กว้างขวางดังกล่าว
ด้วย CDN เนื้อหาของเว็บไซต์จะถูกคัดลอกไปยังเครือข่ายเซิร์ฟเวอร์ขนาดใหญ่ที่กระจายไปตามพื้นที่ทางภูมิศาสตร์ต่างๆ สิ่งนี้ทำให้เว็บไซต์โหลดได้อย่างรวดเร็วไม่ว่าคุณจะอยู่ที่ไหนในโลกเมื่อคุณเชื่อมต่อกับมัน
ตัวโหลดบาลานซ์ช่วยเสริมสิ่งนี้โดยแจกจ่ายข้อมูลซ้ำและจัดหมวดหมู่ข้อมูลในเซิร์ฟเวอร์ต่างๆ โดยจัดลำดับความสำคัญของการรับส่งข้อมูลตามประเภทของเซิร์ฟเวอร์ที่เหมาะสมกับงานมากที่สุด เซิร์ฟเวอร์แบนด์วิดท์ต่ำกว่าพร้อมฮาร์ดไดรฟ์ขนาดใหญ่สามารถจัดการไฟล์ขนาดเล็กจำนวนมากได้ เซิร์ฟเวอร์ที่มีการเชื่อมต่อแบนด์วิธมหาศาลสามารถจัดการกับการสตรีมไฟล์ขนาดใหญ่ได้ (นึกถึง “YouTube”)
และนี่คือวิธีการทำงาน
ดูว่าฉันจะไปกับสิ่งนี้ได้ที่ไหน หากการโจมตีเกิดขึ้นบนเซิร์ฟเวอร์หนึ่ง ตัวโหลดบาลานซ์สามารถติดตาม DDoS และปล่อยให้มันโจมตีเซิร์ฟเวอร์นั้นต่อไปในขณะที่เปลี่ยนเส้นทางการรับส่งข้อมูลที่ถูกต้องทั้งหมดไปที่อื่นบนเครือข่าย แนวคิดในที่นี้คือการใช้เครือข่ายกระจายอำนาจเพื่อประโยชน์ของคุณ โดยจัดสรรทรัพยากรที่จำเป็นเพื่อให้เว็บไซต์หรือบริการสามารถทำงานต่อไปได้ในขณะที่การโจมตีมุ่งเป้าไปที่ "ล่อ" ฉลาดมากใช่มั้ย
เนื่องจากเครือข่ายมีการกระจายอำนาจ มันจึงได้เปรียบเหนือไฟร์วอลล์ทั่วไปและการป้องกันใดๆ ก็ตามที่เราเตอร์ส่วนใหญ่สามารถให้ได้ ปัญหาคือคุณต้องมีเงินสดจำนวนมากเพื่อเริ่มดำเนินการของคุณเอง ในขณะที่พวกเขากำลังเติบโต บริษัทต่างๆ สามารถพึ่งพาผู้ให้บริการเฉพาะทางรายใหญ่เพื่อให้การป้องกันที่พวกเขาต้องการ
เบเฮมอธทำได้อย่างไร
เราได้สำรวจเครือข่ายในบ้านขนาดเล็กและแม้แต่เสี่ยงภัยในขอบเขตของบริษัทขนาดใหญ่ ถึงเวลาแล้วที่จะก้าวเข้าสู่ขั้นตอนสุดท้ายของภารกิจนี้:เราจะมาดูกันว่าบริษัทต่างๆ ที่ให้การเชื่อมต่ออินเทอร์เน็ตแก่คุณป้องกันตัวเองจากการตกลงไปในเหวมืดได้อย่างไร สิ่งนี้จะซับซ้อนเล็กน้อย แต่ฉันจะพยายามทำให้รัดกุมที่สุดเท่าที่จะทำได้โดยไม่ต้องทำวิทยานิพนธ์ที่ทำให้เกิดน้ำลายไหลเกี่ยวกับวิธีการป้องกัน DDoS ต่างๆ
ISP มีวิธีจัดการความผันผวนของการรับส่งข้อมูลที่เป็นเอกลักษณ์ของตนเอง การโจมตี DDoS ส่วนใหญ่แทบไม่ลงทะเบียนในเรดาร์ เนื่องจากสามารถเข้าถึงแบนด์วิดท์ได้เกือบไม่จำกัด ปริมาณการใช้ข้อมูลรายวันของพวกเขาในเวลา 19.00 น. - 23.00 น. (หรือที่เรียกว่า “Internet Rush Hour”) ถึงระดับที่เกินแบนด์วิดท์ที่คุณจะได้รับจากสตรีม DDoS โดยเฉลี่ย
แน่นอน เนื่องจากนี่คืออินเทอร์เน็ตที่เรากำลังพูดถึง จึงมีโอกาส (และบ่อยครั้ง) ที่การจราจรกลายเป็นอะไรที่มากกว่าแค่การปะทุของเรดาร์
การโจมตีเหล่านี้มาพร้อมกับลมพายุและพยายามที่จะครอบงำโครงสร้างพื้นฐานของ ISP ขนาดเล็ก เมื่อผู้ให้บริการของคุณเลิกคิ้ว ผู้ให้บริการจะเข้าถึงคลังเครื่องมืออย่างรวดเร็วเพื่อต่อสู้กับภัยคุกคามนี้ โปรดจำไว้ว่า คนเหล่านี้มีโครงสร้างพื้นฐานขนาดใหญ่ที่มีอยู่ ดังนั้นจึงมีหลายวิธีที่สามารถลดลงได้ ต่อไปนี้คือรายการที่พบบ่อยที่สุด:
- หลุมดำที่ทริกเกอร์จากระยะไกล – ฟังดูคล้ายกับในภาพยนตร์ไซไฟ แต่ RTBH เป็นเรื่องจริงที่ Cisco บันทึกไว้ มีหลายวิธีในการทำเช่นนี้ แต่ฉันจะให้เวอร์ชันที่ "รวดเร็วและสกปรก" แก่คุณ:ISP จะสื่อสารกับเครือข่ายที่มีการโจมตีและบอกให้บล็อกการรับส่งข้อมูลขาออกทั้งหมดที่พุ่งไปในทิศทางนั้น การปิดกั้นการรับส่งข้อมูลที่ออกไปนั้นง่ายกว่าการบล็อกแพ็กเก็ตขาเข้า แน่นอนว่าตอนนี้ทุกอย่างจาก ISP เป้าหมายดูเหมือนจะออฟไลน์ต่อผู้คนที่เชื่อมต่อจากแหล่งที่มาของการโจมตี แต่ทำงานได้สำเร็จและไม่ต้องการความยุ่งยากมากมาย การจราจรส่วนที่เหลือของโลกยังคงไม่ได้รับผลกระทบ
- เครื่องขัด – ISP ขนาดใหญ่บางแห่งมีศูนย์ข้อมูลที่เต็มไปด้วยอุปกรณ์ประมวลผลที่สามารถวิเคราะห์รูปแบบการรับส่งข้อมูลเพื่อแยกการรับส่งข้อมูลที่ถูกต้องจากการรับส่งข้อมูล DDoS เนื่องจากต้องใช้พลังประมวลผลจำนวนมากและโครงสร้างพื้นฐานที่จัดตั้งขึ้น ISP ขนาดเล็กจึงมักจะหันไปจ้างงานนี้ให้กับบริษัทอื่น ทราฟฟิกบนเซกเตอร์ที่ได้รับผลกระทบจะผ่านตัวกรอง และแพ็กเก็ต DDoS ส่วนใหญ่จะถูกบล็อกในขณะที่ทราฟฟิกที่ถูกกฎหมายอนุญาต สิ่งนี้ทำให้มั่นใจได้ถึงการทำงานปกติของ ISP โดยต้องใช้พลังประมวลผลจำนวนมหาศาล
- วูดูการจราจรบางส่วน – การใช้วิธีการที่เรียกว่า "การกำหนดรูปแบบการรับส่งข้อมูล" ISP จะโจมตีทุกอย่างที่การโจมตี DDoS นำมาไว้ใน IP ปลายทางในขณะที่ปล่อยให้โหนดอื่น ๆ ทั้งหมดอยู่คนเดียว โดยพื้นฐานแล้วจะโยนเหยื่อไว้ใต้รถบัสเพื่อช่วยเครือข่ายที่เหลือ เป็นวิธีแก้ปัญหาที่น่าเกลียดมากและมักจะเป็นวิธีสุดท้ายที่ ISP จะใช้หากเครือข่ายอยู่ในภาวะวิกฤตร้ายแรง และจำเป็นต้องดำเนินการอย่างรวดเร็วและเด็ดขาดเพื่อให้แน่ใจว่าทั้งระบบจะอยู่รอด คิดว่าเป็นสถานการณ์ "ความต้องการของคนจำนวนมากมีค่ามากกว่าความต้องการของคนเพียงไม่กี่คน"
ปัญหาของ DDoS คือประสิทธิภาพของมันควบคู่ไปกับความก้าวหน้าในด้านพลังงานของคอมพิวเตอร์และความพร้อมของแบนด์วิดท์ เพื่อต่อสู้กับภัยคุกคามนี้อย่างแท้จริง เราต้องใช้วิธีการแก้ไขเครือข่ายขั้นสูงที่เกินความสามารถของผู้ใช้ตามบ้านทั่วไป อาจเป็นเรื่องดีที่ครัวเรือนมักไม่ใช่เป้าหมายโดยตรงของ DDoS!
อย่างไรก็ตาม หากคุณต้องการดูว่าการโจมตีเหล่านี้เกิดขึ้นที่จุดใดในแบบเรียลไทม์ โปรดดูที่แผนที่ Digital Attack
คุณเคยตกเป็นเหยื่อการโจมตีแบบนี้ที่บ้านหรือที่ทำงานของคุณหรือไม่? บอกเล่าเรื่องราวของคุณในความคิดเห็น!