CDNs ปกป้องไซต์ failover จากการโจมตี DDoS อย่างไร


9

ฉันอยู่ในขั้นตอนการออกแบบสำหรับเว็บแอปพลิเคชัน Java ที่อาจจะนำไปใช้กับ Google App Engine (GAE) สิ่งที่ดีเกี่ยวกับ GAE คือฉันไม่ต้องกังวลเกี่ยวกับการเสริมแอปของฉันจากการโจมตี DDoS ที่น่ากลัวฉันเพียงแค่ระบุ "เพดานการเรียกเก็บเงิน" และถ้าปริมาณการใช้ของฉันสูงถึงเพดานนี้ (DDoS หรืออย่างอื่น) GAE จะเพิ่งปิดแอปของฉัน กล่าวอีกนัยหนึ่ง GAE จะปรับขนาดเป็นจำนวนเท่าใดก็ได้จนกว่าคุณจะไม่สามารถทำให้แอปทำงานต่อไปได้อีกต่อไป

ดังนั้นฉันจึงพยายามวางแผนฉุกเฉินหากฉันกดเพดานการเรียกเก็บเงินนี้และ GAE ปิดแอปของฉันการตั้งค่า DNS โดเมนเว็บแอปของฉัน "ล้มเหลว" เป็นที่อยู่ IP อื่นที่ไม่ใช่ GAE งานวิจัยเริ่มต้นบางงานแสดงให้เห็นว่า CDN บางตัวเช่น CloudFlare ให้บริการสำหรับสถานการณ์ที่แน่นอนนี้ โดยพื้นฐานแล้วฉันเพิ่งเก็บการตั้งค่า DNS ไว้กับพวกเขาและพวกเขายังมี API ที่ฉันสามารถใช้เพื่อทำให้กระบวนการล้มเหลวอัตโนมัติ ดังนั้นหากฉันตรวจพบว่าฉันอยู่ที่ 99% เพดานการเรียกเก็บเงินสำหรับแอป GAE ของฉันฉันสามารถกด CloudFlare API นี้ได้และ CloudFlare จะเปลี่ยนการตั้งค่า DNS ของฉันแบบไดนามิกเพื่อชี้ไปที่เซิร์ฟเวอร์ GAE เป็นที่อยู่ IP อื่น ๆ

ความบังเอิญเริ่มต้นของฉันคือการล้มเหลวในเวอร์ชัน "อ่านอย่างเดียว" (เนื้อหาคงที่เท่านั้น) ของเว็บแอปของฉันที่โฮสต์ที่อื่นโดย GoDaddy หรือ Rackspace

แต่ทันใดนั้นมันก็เริ่มกับฉัน: ถ้า DDoS โจมตีเป้าหมายชื่อโดเมนมันจะแตกต่างกันอย่างไรถ้าฉันวางข้ามจากที่อยู่ GAE ของฉันไปยังที่อยู่ GoDaddy ของฉัน (พูด) โดยพื้นฐานแล้วการล้มเหลวจะไม่ทำอะไรนอกจากอนุญาตให้ DDoS โจมตีไซต์สำรอง / GoDaddy ของฉัน!

กล่าวอีกนัยหนึ่งผู้โจมตี DDoS ประสานงานการโจมตีบนเว็บแอปของฉันซึ่งโฮสต์โดย GAE ที่www.blah-whatever.comซึ่งเป็นที่อยู่ IP 100.2.3.4จริง ๆ พวกเขาทำให้เกิดการจราจรของฉันที่จะขัดขวาง 98% เพดานการเรียกเก็บเงินของฉันและจอภาพของฉันเองเรียก failover CloudFlare จาก100.2.3.4เพื่อ105.2.3.4 ผู้โจมตี DDoS ไม่สนใจ! พวกเขายังคงทำการโจมตีwww.blah-whatever.com! การโจมตี DDoS ดำเนินต่อไป!

ดังนั้นฉันจึงถามว่า: CDNs มีการป้องกันอะไรบ้างเช่น CloudFlare ที่เสนอ - เมื่อคุณต้องล้มเหลวไปยัง DNS อื่น - คุณไม่มีความเสี่ยงจากการโจมตี DDoS ต่อเนื่อง หากมีการป้องกันดังกล่าวจะมีข้อ จำกัด ทางเทคนิคใด ๆ (เช่นอ่านอย่างเดียว ฯลฯ ) ที่วางอยู่บนไซต์ล้มเหลวหรือไม่? ถ้าไม่พวกเขาดีอะไร! ขอบคุณล่วงหน้า!


ยอดเยี่ยม Q! สามารถเรียนรู้มากมายได้จาก :-)
Martijn Verburg

คำตอบ:


6

พวกเขาไม่ได้ป้องกันการโจมตี DDoS เมื่ออยู่ในการกำหนดค่านี้ CDN ไม่ได้ "ป้องกัน" จากการโจมตี DDoS - พวกเขาลดผลกระทบโดยมีฮาร์ดแวร์และแบนด์วิดท์จำนวนมากเพื่อแก้ไขปัญหา เมื่อ CDN เปลี่ยนการตั้งค่า DNS ให้ชี้ไปที่เซิร์ฟเวอร์ของคุณโดยตรง CDN จะไม่จัดการคำขอสำหรับเว็บไซต์ของคุณอีกต่อไป - ไคลเอนต์จะไม่เห็น IP ของ CDN ดังนั้น CDN จึงไม่สามารถป้องกันคุณได้อีกต่อไป

เท่าที่ "สิ่งที่ดีคืออะไร" - การโจมตี DDoS ไม่ได้เป็นจุดที่ใช้ CDN จุดประสงค์ในการใช้ CDN คือการลดเวลาในการตอบสนองเมื่อมีคนร้องขอข้อมูลจำนวนมากจากเว็บเซิร์ฟเวอร์ของคุณและบุคคลนั้นได้รับข้อมูลโดยลดระยะทางภูมิศาสตร์ระหว่างเซิร์ฟเวอร์และไคลเอนต์ เป็นการเพิ่มประสิทธิภาพที่สมบูรณ์แบบที่คุณสามารถทำได้ แต่มันไม่ได้ออกแบบมาเพื่อให้ความปลอดภัยจาก DDoS


ขอบคุณ @Billy ONeal (+1) - ดังนั้นเพื่อสรุป: ฉันต้องการให้ "DDoS Failover" ของฉันเปลี่ยนเส้นทางการร้องขอไปยังเซิร์ฟเวอร์ CDN เพื่อให้พวกเขาสามารถโยนฮาร์ดแวร์ / แบนด์วิดท์ที่มีปัญหาเพียงพอเพื่อให้เว็บไซต์ทำงานได้ แม้ว่านี่จะไม่ใช่ฟังก์ชั่นหลักของ CDN สิ่งนี้มากหรือน้อยใช่ไหม? ถ้าเป็นเช่นนั้นคำถามติดตามด่วน: ถ้าฉันไปเส้นทางนี้และเปลี่ยนเส้นทางการเฟลโอเวอร์ไปที่ CDN เว็บแอปของฉันจะสามารถทำงานต่อไปได้เหมือนปกติหรือ CDN ให้บริการเนื้อหาคงที่เท่านั้น (เช่นเว็บแอปของฉันจะกลายเป็น " อ่านอย่างเดียว "ฯลฯ )? ขอบคุณอีกครั้ง!
herpylderp

@herpylderp: ขึ้นอยู่กับลักษณะของเว็บไซต์ CDNs จัดการเนื้อหาคงที่เท่านั้น หากเซิร์ฟเวอร์ของคุณทำสิ่งที่น่าสนใจ CDN จะไม่ช่วยคุณ คุณมักจะไม่ได้รับการเรียกใช้รหัสบนเซิร์ฟเวอร์ของ CDN ตัวอย่างเช่นบนไซต์แลกเปลี่ยนสแต็กรูปภาพสำหรับแต่ละไซต์นั้นโฮสต์บน sstatic.com, CDN แต่ไซต์หลักโฮสต์อยู่ในดาต้าเซ็นเตอร์ของ StackExchange
Billy ONeal

1
ตามปกติ CDN จะคิดค่าบริการตามปริมาณดังนั้นคุณเพียงแค่ย้ายต้นทุนการเรียกเก็บเงินจากผู้ขายรายหนึ่งไปยังอีกราย AFAIK การลด DDoS มักเกี่ยวข้องกับการปิดกั้นช่วง IP อัตโนมัติโดยอัตโนมัติ
Joeri Sebrechts

ขอบคุณ @Joeri Sebrechts (+1) - มีความแตกต่างระหว่าง "IP range" และ "IP subnet" หรือพวกมันเหมือนกันหรือไม่? ฉันถามเพราะ GAE อนุญาตให้คุณบล็อกเครือข่ายย่อย IP และหวังว่านี่คือสิ่งที่คุณกำลังพูดถึง
herpylderp

7

ฉันทำงานกับIncapsulaบริษัท Cloud Security ที่ให้บริการเร่งความเร็วตาม CDN (เช่น CF)

ฉันต้องการจะบอกว่าในขณะที่ (ตามที่ระบุไว้อย่างถูกต้องโดย @Billy ONeal) CDN ด้วยตัวเองไม่ได้ให้การป้องกัน DDoS, เครือข่ายพร็อกซีบนคลาวด์เป็นเครื่องมือในการบรรเทา DDoS ที่มีประสิทธิภาพมาก

ดังนั้นในกรณีของ DDoS บน Cloud CDN ไม่ใช่ "CDN" แต่ "Cloud" ที่ปกป้องคุณโดยการรับส่งข้อมูลเพิ่มเติมทั้งหมดที่ DDoS สร้างขึ้นในขณะที่ยังอนุญาตให้เข้าถึงไซต์ของคุณจาก POPs ต่างๆทั่วโลก

นอกจากนี้เนื่องจากเป็นโซลูชันพร็อกซีประตูหน้าเทคโนโลยีนี้สามารถใช้เพื่อลดการโจมตี DDoS ระดับเครือข่าย 3-4 ระดับ (เช่น SYN Floods) ซึ่งใช้ IP ปลอมแปลงเพื่อส่งการร้องขอ SYN จำนวนมากไปยังเซิร์ฟเวอร์ของคุณ

ในกรณีนี้พร็อกซีจะไม่สร้างการเชื่อมต่อจนกว่าจะได้รับการตอบสนอง ACK ดังนั้นการป้องกัน SYN ท่วมเกิดขึ้น

นอกจากนี้ยังมีวิธีอื่น ๆ ที่คุณสามารถใช้ Cloud สำหรับการรักษาความปลอดภัยเว็บไซต์ (เช่น Bad Bot Blocking, WAF บนคลาวด์) และบางวิธีสามารถใช้สำหรับ DDoS บรรเทาหรือป้องกัน (หยุดบอทสแกนเนอร์เป็นตัวอย่างที่ดีสำหรับภายหลัง) สิ่งสำคัญที่ต้องเข้าใจที่นี่คือทั้งหมดนี้ไม่ได้ขึ้นอยู่กับ CDN แต่เกี่ยวกับเทคโนโลยีคลาวด์


1
ว้าว - ขอบคุณ @Igal Zeifman (+1) - คำตอบยอดเยี่ยม! คำถามติดตามสองสามข้อสำหรับคุณ: (1) เมื่อคุณพูดว่า " proxy network " หรือ " front gate proxy " ฉันถือว่าคุณหมายความว่า cloud กำลังให้บริการเซิร์ฟเวอร์ที่ทำหน้าที่เป็นคนกลางระหว่างไคลเอนต์และเซิร์ฟเวอร์แอปของฉันใช่ไหม? ถ้าไม่ได้โปรดอธิบาย และ (2) CloudFlare และ / หรือ Incapsula จัดหาฟังก์ชั่นการทำงานสำหรับบริการอื่น ๆ เหล่านี้ (หยุด / ปิดกั้นบอท, WAF, ฯลฯ ) หรือไม่ ขอบคุณอีกครั้ง!
herpylderp

นอกจากนี้โดย " POP " ฉันถือว่าคุณหมายถึง "จุดแสดงตน" ใช่ไหม
herpylderp

สวัสดีขอบคุณ. ชื่นชมมาก เพื่อตอบคำถามคุณ: Front Gate Proxy: คำว่า "proxy" หมายถึงความสัมพันธ์ระหว่างคนกลางระหว่างเครือข่ายดังกล่าวกับเว็บไซต์ของคุณ หมายความว่าเครือข่ายจะ "นั่ง" หน้าเว็บไซต์ของคุณ (ดังนั้น "ประตูหน้า") เป็นแนวป้องกันแรกโดยทั่วไปจะได้รับการจราจรทั้งหมดที่ 1 และกรองสิ่งที่ไม่ดีออกทั้งหมดในกรณีของเราโดยใช้ Bad Bot การปิดกั้นกฎและเวกเตอร์ WAF และอื่น ๆ ในกรณีของ DDoS เครือข่ายนี้จะช่วยให้เกิดความสมดุลในการรับส่งข้อมูลเพิ่มเติมดังนั้นจึงป้องกันปัญหา DDoS ที่เกี่ยวข้อง (เช่นล่ม) POP = คะแนนของการแสดงตน คุณถูกต้อง 100%
Igal Zeifman
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.