Bagaimana CDN melindungi situs failover dari serangan DDoS?


9

Saya sedang dalam proses desain untuk aplikasi web Java yang mungkin akan saya gunakan pada Google App Engine (GAE). Yang menyenangkan tentang GAE adalah saya benar-benar tidak perlu khawatir tentang memperkuat aplikasi saya dari serangan DDoS yang ditakuti - saya hanya menentukan "plafon penagihan", dan jika lalu lintas saya mencapai langit-langit ini (DDoS atau yang lain), GAE hanya akan menutup aplikasi saya. Dengan kata lain, GAE pada dasarnya akan menskalakan jumlah berapapun hingga Anda tidak mampu lagi menjalankan aplikasi.

Jadi saya mencoba merencanakan kontingensi di mana, jika saya mencapai batas penagihan ini dan GAE menutup aplikasi saya, pengaturan DNS domain aplikasi web saya "gagal" ke alamat IP non-GAE yang lain. Beberapa penelitian awal menunjukkan bahwa CDN tertentu seperti CloudFlare menawarkan layanan untuk situasi yang tepat ini. Pada dasarnya, saya hanya menyimpan pengaturan DNS saya dengan mereka, dan mereka menyediakan API yang dapat saya tekan untuk mengotomatiskan prosedur failover. Jadi, jika saya mendeteksi bahwa saya berada pada 99% plafon tagihan saya untuk aplikasi GAE saya, saya dapat menekan API CloudFlare ini, dan CloudFlare akan secara dinamis mengubah pengaturan DNS saya untuk menjauh dari server GAE ke beberapa alamat IP lainnya.

Kontingensi awal saya adalah failover ke versi "read-only" (hanya konten statis) dari aplikasi web saya yang dihosting di tempat lain, mungkin oleh GoDaddy atau Rackspace.

Tapi kemudian tiba-tiba saya sadar: jika serangan DDoS menargetkan nama domain, apa bedanya jika saya beralih dari alamat IP GAE saya ke (katakanlah) alamat IP GoDaddy saya? Intinya, failover tidak akan melakukan apa pun selain memungkinkan penyerang DDoS untuk menjatuhkan situs backup / GoDaddy saya!

Dengan kata lain, penyerang DDoS mengoordinasikan serangan di aplikasi web saya, yang dihosting oleh GAE, di www.blah-whatever.com, yang sebenarnya merupakan alamat IP 100.2.3.4 . Mereka menyebabkan lalu lintas saya melonjak hingga 98% langit-langit penagihan saya, dan monitor khusus saya memicu kegagalan CloudFlare dari 100.2.3.4 hingga 105.2.3.4 . Penyerang DDoS tidak peduli! Mereka masih meluncurkan serangan terhadap www.blah-whatever.com! Serangan DDoS berlanjut!

Jadi saya bertanya: perlindungan apa yang ditawarkan CDN seperti CloudFlare sehingga - ketika Anda perlu gagal ke DNS lain - Anda tidak berisiko untuk hal yang sama, melanjutkan serangan DDoS? Jika perlindungan tersebut ada, apakah ada batasan teknis (misalnya hanya baca, dll.) Yang ditempatkan di situs failover? Jika tidak, apa gunanya mereka ?! Terima kasih sebelumnya!


Q hebat! Banyak yang bisa dipelajari dari ini :-)
Martijn Verburg

Jawaban:


6

Mereka tidak melindungi terhadap serangan DDoS ketika dalam konfigurasi ini. CDN tidak "melindungi" terhadap serangan DDoS - mereka hanya mengurangi dampaknya dengan memiliki banyak perangkat keras dan bandwidth untuk mengatasi masalahnya. Ketika CDN mengubah pengaturan DNS untuk menunjuk langsung ke server Anda, CDN tidak lagi menangani permintaan untuk situs web Anda - klien tidak pernah melihat IP dari CDN, sehingga CDN tidak lagi dapat menawarkan perlindungan kepada Anda.

Sejauh "apa gunanya mereka" - serangan DDoS bukan gunanya menggunakan CDN. Tujuan menggunakan CDN adalah untuk mengurangi latensi antara ketika seseorang meminta sepotong besar data dari salah satu server web Anda dan orang itu mendapatkan data, dengan memperpendek jarak geografis antara server dan klien. Ini adalah optimasi perf yang dapat Anda lakukan; tapi itu benar-benar tidak dirancang untuk memberikan keamanan dari DDoS.


Terima kasih @Billy ONeal (+1) - jadi untuk meringkas: Saya ingin "DDoS Failover" saya untuk benar-benar mengarahkan permintaan ke server CDN, sehingga mereka dapat membuang cukup hardware / bandwidth pada masalah untuk menjaga situs tetap berjalan dan berjalan; meskipun ini bukan fungsi utama dari CDN. Apakah ini kurang lebih benar? Jika demikian, pertanyaan tindak lanjut cepat: jika saya menggunakan rute ini dan meminta failover saya dialihkan ke CDN, apakah aplikasi web saya dapat terus berfungsi seperti biasa atau apakah CDN hanya menyajikan kembali konten statis (yaitu, aplikasi web saya akan menjadi " baca saja ", dll.)? Terima kasih lagi!
herpylderp

@herpylderp: Ya, itu tergantung pada sifat situs. CDN hanya menangani konten yang sepenuhnya statis. Jika server Anda melakukan "hal-hal menarik" maka CDN tidak akan membantu Anda. Anda biasanya tidak bisa menjalankan kode di server CDN. Misalnya, di situs pertukaran tumpukan, gambar untuk masing-masing situs di-host di sstatic.com, CDN, tetapi situs utama di-host di pusat data StackExchange sendiri.
Billy ONeal

1
CDN biasanya mengenakan biaya berdasarkan volume, jadi Anda hanya memindahkan biaya penagihan dari satu vendor ke vendor lainnya. AFAIK, mitigasi DDoS biasanya melibatkan pemblokiran sementara sementara rentang IP.
Joeri Sebrechts

Terima kasih @ Joeri Sebrechts (+1) - apakah ada perbedaan antara "rentang IP" dan "subnet IP" atau mereka sama? Saya bertanya karena GAE memungkinkan Anda untuk memblokir subnet IP dan saya berharap ini yang Anda bicarakan.
herpylderp

7

Saya bekerja untuk Incapsula , perusahaan Cloud Security yang juga menyediakan layanan akselerasi berbasis CDN (seperti CF).

Saya ingin mengatakan bahwa sementara (sebagaimana dinyatakan dengan benar oleh @Billy ONeal) CDN dengan sendirinya tidak memberikan perlindungan DDoS, Jaringan Proksi berbasis Cloud adalah alat mitigasi DDoS yang sangat efektif.

Jadi, dalam hal DDoS di Cloud CDN, itu bukan "CDN" tetapi "Cloud" yang melindungi Anda dengan menerima semua lalu lintas tambahan yang dihasilkan oleh DDoS, sambil tetap memungkinkan akses ke situs Anda dari berbagai POP di seluruh dunia.

Juga, karena ini merupakan solusi proxy gerbang depan, teknologi ini dapat digunakan untuk mengurangi serangan DDoS jaringan level 3-4 (yaitu SYN Floods) yang menggunakan IP spoofed untuk mengirim berbagai permintaan SYN ke server Anda.

Dalam hal ini proxy tidak akan membuat koneksi sampai respon ACK diterima, sehingga mencegah banjir SYN terjadi.

Ada juga cara lain Anda dapat menggunakan Cloud untuk keamanan situs web (mis. Pemblokiran Bot Buruk, WAF berbasis Cloud) dan beberapa di antaranya juga dapat digunakan untuk mitigasi atau pencegahan DDoS (menghentikan bot pemindai adalah contoh yang baik untuk nanti) tetapi Hal utama yang perlu dipahami di sini adalah bahwa ini semua tidak didasarkan pada CDN tetapi pada teknologi Cloud.


1
Wow - terima kasih @Igal Zeifman (+1) - jawaban yang bagus! Beberapa pertanyaan tindak lanjut untuk Anda: (1) Ketika Anda mengatakan " jaringan proxy " atau " proxy gerbang depan ", saya anggap Anda maksudkan bahwa cloud menyediakan server yang bertindak sebagai perantara antara klien dan server aplikasi saya, ya? Jika tidak, bisakah Anda jelaskan? Dan (2) apakah CloudFlare dan / atau Incapsula menyediakan fungsionalitas untuk layanan lain ini (menghentikan / memblokir bot, WAF, dll.)? Terima kasih lagi!
herpylderp

Juga, dengan " POP " Saya menganggap Anda maksud "Tempat kehadiran", ya?
herpylderp

Hai, terima kasih. Sangat dihargai. Untuk menjawab pertanyaan Anda: Proksi Gerbang Depan: istilah "proksi" menyiratkan hubungan perantara antara jaringan tersebut dan situs Anda. Berarti bahwa jaringan akan "duduk" di depan situs Anda (karenanya "gerbang depan") sebagai garis pertahanan pertama, pada dasarnya menerima semua lalu lintas 1 dan menyaring semua "hal buruk", dalam kasus kami dengan menggunakan Bad Bot memblokir aturan dan vektor, WAF dan sebagainya. Dalam hal DDoS jaringan ini juga akan membantu menyeimbangkan lalu lintas tambahan, sehingga mencegah masalah terkait DDoS. (mis. macet) POP = Tempat Kehadiran. Anda 100% benar.
Igal Zeifman
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.