Serangan DDoS lapisan aplikasi, dan bagaimana mereka boleh dikurangkan

DDoS (penafian perkhidmatan yang diedarkan) dan DoS (penafian perkhidmatan) serangan boleh dikelaskan secara meluas kepada tiga kategori berdasarkan lapisan model OSI yang mereka sasarkan: lapisan rangkaian (Lapisan 3), Lapisan pengangkutan (Lapisan 4), dan lapisan aplikasi (Lapisan 7).
Lapisan 3 dan Lapisan 4 Serangan biasanya kurang kompleks–walaupun mereka mungkin sangat mencabar untuk mengurangkan–dan melibatkan banjir lapisan rangkaian dan pengangkutan dengan lalu lintas, membebankan sumber sistem sasaran dan menjadikannya tidak tersedia kepada pengguna yang sah. Serangan jenis ini boleh dilancarkan menggunakan pelbagai teknik seperti banjir ICMP, Banjir TCP SYN, atau banjir UDP.
Banjir ICMP misalnya, ialah Lapisan 3 serangan di mana sebilangan besar paket ICMP dibanjiri ke sistem sasaran, menjadikannya tidak bertindak balas. Banjir sindiket TCP, sebaliknya, ialah lapisan 4 serangan yang mengeksploitasi cara sambungan TCP diwujudkan.
Dalam serangan banjir SYN, penyerang menghantar banyak paket SYN ke sistem sasaran, tetapi tidak pernah menghantar paket ACK untuk melengkapkan sambungan. Ini menyebabkan sistem memperuntukkan sumber untuk setiap percubaan sambungan yang akhirnya membebankan sistem dan menjadikannya tidak tersedia kepada pengguna yang sah. Banjir UDP menghantar sejumlah besar paket UDP ke sistem sasaran, menggunakan sumbernya dan menjadikannya tidak responsif.
Serangan DDoS lapisan aplikasi
Serangan lapisan aplikasi lebih kompleks dan lebih sukar untuk dikurangkan daripada lapisan 3 dan lapisan 4 serangan. Serangan ini menyasarkan lapisan aplikasi (lapisan 7) sistem sasaran dan mengeksploitasi kelemahan dalam aplikasi itu sendiri. Lapisan 7 serangan boleh menyebabkan lebih banyak kerosakan kerana ia boleh memberi kesan langsung kepada aplikasi dan infrastruktur asas. Anda tidak akan dapat mengurangkan lapisan 7 Serangan DDoS dengan lapisan 3 atau lapisan 4 Alat seperti dengan Firewall rangkaian.
Banjir HTTP, Serangan slowloris, dan serangan amplifikasi DNS ialah Layer 7 penafian serangan perkhidmatan. Serangan ini memerlukan pertahanan yang lebih canggih seperti firewall lapisan aplikasi, sistem pencegahan pencerobohan, dan CDN (Rangkaian penghantaran kandungan).
Banjir HTTP
Serangan banjir HTTP dilakukan menggunakan permintaan GET atau POST untuk membanjiri pelayan sasaran. Serangan banjir menggunakan permintaan GET biasanya lebih mudah dan memerlukan sumber yang lebih sedikit kerana mereka hanya meminta maklumat daripada pelayan. Permintaan POST, sebaliknya, biasanya memerlukan penghantaran sejumlah besar data.
Salah satu sebab serangan banjir HTTP sukar dikurangkan adalah bahawa mereka sering dilancarkan dari sebilangan besar sumber, menyukarkan untuk mengenal pasti dan menyekat semua trafik berniat jahat. Selain itu, penyerang boleh menggunakan teknik seperti penipuan IP untuk menyamarkan identiti sebenar mereka dan menjadikannya lebih sukar untuk mengesan sumber serangan mereka.
Mempertahankan diri daripada serangan banjir HTTP boleh menjadi rumit. Jenis serangan yang berbeza memerlukan strategi mitigasi yang berbeza. Pertahanan biasa terhadap serangan banjir HTTP termasuk pengehadan kadar, senarai hitam, dan tembok api aplikasi web. Walau bagaimanapun, teknik ini boleh menjadi intensif sumber dan mungkin tidak mencukupi untuk menggagalkan serangan yang lebih canggih.
Serangan slowloris
Slowloris ialah sejenis serangan banjir di mana cara pelayan web mengendalikan sambungan pelanggan disasarkan. Serangan ini berfungsi dengan membuka sejumlah besar sambungan ke pelayan, tetapi menghantar permintaan pada kadar yang perlahan, mengekalkan setiap sambungan terbuka selama mungkin. Jenis serangan ini boleh menggunakan semua sumber yang tersedia di pelayan dan membolehkan penyerang menggunakan CPU, memori, atau lebar jalur rangkaian, Dll. tanpa mengaktifkan had kadar biasa dan mekanisme penapisan trafik yang biasanya digunakan untuk mengesan dan menyekat jenis serangan DDoS yang lain.
Untuk melaksanakan serangan Slowloris, penyerang biasanya menggunakan skrip atau alat yang menghantar permintaan HTTP ke pelayan, tetapi dengan sengaja melambatkan penghantaran permintaan seterusnya. Permintaan itu direka untuk kelihatan seperti permintaan yang sah, tetapi dengan pengepala yang tidak lengkap yang mengekalkan sambungan terbuka selama-lamanya. Lama kelamaan, pelayan akan mempunyai banyak sambungan terbuka yang menunggu data tambahan daripada pelanggan, menyebabkan pelayan berhenti bertindak balas kepada trafik yang sah.
Serangan slowloris boleh menjadi sukar untuk dikesan kerana reka bentuk rahsia mereka dan lebar jalur yang agak rendah. Ini menjadikannya alat yang berkesan untuk penyerang yang ingin mensabotaj pelayan mereka tanpa mencetuskan amaran atau menimbulkan syak wasangka. Untuk mempertahankan diri daripada serangan Slowloris, pelayan web boleh melaksanakan beberapa tindakan balas. Sebagai contoh, hadkan bilangan sambungan yang boleh diwujudkan daripada satu alamat IP atau tetapkan tamat masa untuk permintaan tidak lengkap. Beberapa firewall aplikasi web dan perkhidmatan pengurangan DDoS mempunyai perlindungan terbina dalam terhadap serangan Slowloris, menggunakan algoritma yang boleh mengesan dan menyekat lalu lintas tersebut dalam masa nyata.
Lapisan 7 Pengurangan DDoS
Had kadar
Pengehadkan kadar melibatkan menetapkan ambang pada bilangan permintaan yang boleh dibuat dari alamat IP atau agen pengguna tertentu dalam jangka masa tertentu. Konsep ini sangat mirip dengan pengehadkan kadar di lapisan 3 tetapi ia perlu dilaksanakan pada lapisan 7.
Tujuan pengehadkan kadar adalah untuk mengelakkan penyerang daripada membebankan aplikasi web dengan sejumlah besar permintaan, menyebabkan gangguan pelayan. Pengehadkan kadar boleh dilaksanakan pada pelbagai lapisan dalam seni bina aplikasi web anda, pada pelayan web, penyeimbang beban, atau firewall aplikasi. Pelaksanaan biasanya melibatkan menjejaki bilangan permintaan yang dibuat oleh alamat IP atau agen pengguna tertentu dan menyekat permintaan selanjutnya apabila ambang yang telah ditetapkan dicapai.
Pendekatan biasa untuk melaksanakan had kadar dalam aplikasi web adalah dengan menggunakan perisian tengah atau pemalam yang menjejaki bilangan permintaan yang dibuat oleh setiap pelanggan dan menyekat permintaan selanjutnya apabila ambang melebihi. adalah untuk Plugin ini boleh dikonfigurasikan untuk menggunakan dasar mengehadkan kadar yang berbeza berdasarkan faktor-faktor seperti jenis permintaan, ejen pengguna, atau alamat IP pelanggan.
Sebagai contoh, dasar mengehadkan kadar mudah boleh mengehadkan permintaan dari satu alamat IP kepada maksimum 10 permintaan seminit. Sekiranya pelanggan melebihi ambang ini, Permintaan seterusnya disekat sehingga tempoh tamat.
Produk yang mengehadkan kadar lapisan aplikasi tersedia untuk pelayan web dan perkhidmatan awan yang popular, Termasuk:
Apache
Apache mempunyai beberapa modul yang boleh digunakan untuk mengehadkan kadar, Seperti mod_limitipconn, yang mengehadkan bilangan sambungan serentak dari alamat IP tertentu, Dan mod_qos, yang menyediakan pelbagai kawalan kualiti perkhidmatan termasuk had kadar.
Selain itu, ModSecurity Web Application Firewall mempunyai ciri had kadar yang boleh menyekat klien yang melebihi had yang ditetapkan. Selain modul yang disebut di atas, Apache juga menyediakan mod_evasive. Ini adalah modul yang boleh digunakan untuk mengehadkan kadar dan menyekat klien yang melebihi had yang ditetapkan. Mengesan dan menyekat klien jahat menggunakan pelbagai teknik, termasuk penjejakan IP dan agen pengguna.
Nginx
Nginx menyediakan modul ngx_http_limit_req. Ini boleh digunakan untuk mengehadkan kadar permintaan daripada klien tertentu berdasarkan alamat IP atau faktor lain. Modul ini menggunakan algoritma token bucket untuk memperuntukkan token kepada setiap klien berdasarkan polisi had kadar.. Selain modul ngx_http_limit_req, Nginx juga menyediakan modul ngx_http_limit_conn. Ini boleh digunakan untuk mengehadkan bilangan sambungan dari klien atau alamat IP tertentu. Modul ini menggunakan algoritma token bucket untuk memperuntukkan token berdasarkan polisi had kadar.
IIS
Perkhidmatan Maklumat Internet Microsoft (IIS) termasuk satu modul pengehad IP dinamik yang boleh digunakan untuk mengehadkan kadar. Modul ini boleh dikonfigurasi untuk menyekat permintaan dari alamat IP yang melebihi ambang yang telah ditetapkan dan juga boleh memberikan amaran serta log untuk pemantauan. Selain daripada modul Pengehad IP Dinamik, IIS juga menyediakan modul Penapisan Permintaan yang boleh digunakan untuk mengehadkan kadar permintaan daripada klien tertentu berdasarkan pelbagai kriteria seperti alamat IP, ejen pengguna, dan kaedah permintaan.
AWS
Amazon Web Services (AWS) menawarkan beberapa perkhidmatan yang boleh digunakan untuk had kadar, Termasuk AWS WAF dengan had kadar sebagai salah satu ciri.
AWS Shield menawarkan perlindungan DDoS termasuk peraturan berasaskan kadar yang boleh menyekat permintaan daripada alamat IP melebihi ambang tertentu. Selain AWS WAF dan AWS Shield, AWS juga menawarkan AWS Elastic Load Balancer. Ia termasuk pelbagai polisi had kadar yang boleh dikonfigurasi untuk menyekat klien yang melebihi ambang yang ditetapkan.
Azure
Microsoft Azure menawarkan beberapa perkhidmatan yang boleh digunakan untuk had kadar, termasuk Azure Application Gateways. Ia termasuk firewall aplikasi web yang boleh dikonfigurasi untuk mengehadkan kadar permintaan masuk. Selain itu, Azure Front Door menawarkan ciri had kadar yang boleh menyekat permintaan dari alamat IP melebihi ambang yang telah ditetapkan. Selain Azure Application Gateway dan Azure Front Door, Azure juga menawarkan Azure Firewall. Ini boleh digunakan untuk mengehadkan kadar dan menyekat klien yang melebihi ambang yang ditakrifkan.
GCP
Google Cloud Platform (GCP) menawarkan Cloud Armor, firewall aplikasi web dengan kebolehan mengehadkan kadar yang boleh menyekat permintaan dari klien yang melebihi ambang yang ditakrifkan.
Produk had kadar di lapisan aplikasi ini boleh mengurangkan serangan banjir HTTP dengan berkesan dengan mengehadkan bilangan permintaan daripada klien yang berniat jahat. Walau bagaimanapun, adalah penting bahawa ia dikonfigurasikan dengan betul agar tidak menyekat trafik yang sah dan digunakan bersama langkah keselamatan lain seperti firewall dan perkhidmatan mitigasi DDoS untuk memberikan perlindungan menyeluruh terhadap serangan DDoS.
Masa tamat untuk permintaan yang tidak lengkap
Berikut adalah beberapa kaedah mitigasi lapisan aplikasi Slowloris yang disenaraikan untuk Apache, Nginx, dan pelayan web IIS, serta penyeimbang beban dan ciri tambahan untuk perkhidmatan AWS, Azure, dan perkhidmatan GCP:
Apache
Selain modul yang disebut di atas, Apache juga menyediakan modul, mod_reqtimeout, yang boleh digunakan untuk menetapkan masa tamat untuk permintaan yang masuk. Jika klien menghantar permintaan yang mengambil masa lebih lama daripada masa tamat yang ditetapkan, pelayan akan menutup sambungan. Ini akan mengelakkan serangan slowloris.
Nginx
Selain modul ngx_http_limit_conn dan modul ngx_http_limit_req, Nginx juga menyediakan modul ngx_http_request beliau. Ini boleh digunakan untuk mengehadkan masa yang diambil oleh pelayan hulu untuk memproses permintaan. Jika pelayan hulu mengambil masa lebih lama daripada masa tamat yang ditetapkan, Nginx akan menutup sambungan.
IIS
Selain modul Sekatan IP Dinamik dan Penapisan Permintaan, IIS juga menyediakan pemacu mod kernel HTTP.sys. Ini membolehkan anda menetapkan masa tamat untuk permintaan masuk. Jika klien menghantar permintaan yang mengambil masa lebih lama daripada masa tamat yang ditetapkan, pelayan akan menutup sambungan.
AWS
Selain daripada AWS WAF dan AWS Shield, AWS juga menyediakan Elastic Load Balancer, yang menggabungkan pelbagai peraturan masa tamat sambungan yang boleh dikonfigurasi untuk menutup sambungan yang mengambil masa lebih lama daripada ambang yang ditetapkan.
Azure
Selain Azure Application Gateway dan Azure Front Door, Azure juga menyediakan Azure Load Balancer, yang menggabungkan ciri masa tamat menganggur yang boleh dikonfigurasi yang boleh digunakan untuk menutup sambungan yang mungkin menganggur untuk tempoh yang ditetapkan.
GCP
Google Cloud Platform (GCP) gives numerous connection timeout alternatives for its services, which include Cloud Load Balancing, which incorporates a configurable timeout characteristic that may be used to shut connections that take longer than a predefined threshold.
Kesimpulan
In conclusion, DDoS and DoS attacks can be classified based on the layers of the OSI model they are targeted at, such as the network layer (Lapisan 3), Lapisan pengangkutan (Lapisan 4), dan lapisan aplikasi (Lapisan 7).
While layer 3 dan lapisan 4 attacks flood the network and transport layers with traffic, lapisan 7 attacks are more complex and exploit vulnerabilities in the applications themselves. HTTP floods and Slowloris attacks are examples of layer 7 penafian serangan perkhidmatan. Countermeasures against these attacks include rate limiting, senarai hitam, dan tembok api aplikasi web. Identifying and containing attacks in real time requires a comprehensive, multi-layered defense strategy that includes monitoring, detection, and response capabilities.
Selain itu, Penyerang boleh menyesuaikan teknik mereka dan menyesuaikan serangan mereka untuk mengelakkan pengesanan dan mengelakkan langkah keselamatan. Itu, Adalah penting bahawa organisasi melaksanakan menyeluruh, multi-layered defense strategy that includes monitoring, detection, dan keupayaan tindak balas untuk mengenal pasti dan membendung serangan dengan cepat dalam masa nyata. Ini mungkin termasuk menggunakan algoritma pembelajaran mesin canggih dan analisis tingkah laku untuk mengesan dan menyekat corak trafik berniat jahat.
Penafian Pos
Pandangan, Maklumat, atau pendapat yang dinyatakan adalah semata-mata pendapat pengarang dan tidak semestinya mewakili majikannya atau organisasi yang dia bergabung.
Maklumat yang terkandung dalam catatan ini adalah untuk tujuan maklumat umum sahaja. Maklumat itu diberikan oleh Farhad Mofidi dan semasa dia berusaha untuk memastikan maklumat terkini dan tepat, dia tidak membuat apa-apa representasi atau jaminan dalam apa jua bentuk, tersurat atau tersirat, Mengenai kesempurnaan, Ketepatan, Kebolehpercayaan, kesesuaian atau ketersediaan laman web. Farhad tidak membuat sebarang representasi atau jaminan. atau apa-apa maklumat, produk atau grafik berkaitan yang terkandung dalam mana-mana Siaran untuk sebarang tujuan.
Juga, AI boleh digunakan sebagai alat untuk memberi cadangan dan memperbaiki beberapa kandungan atau ayat. Idea, Fikiran, Pendapat, dan produk akhir adalah asli dan buatan manusia oleh pengarang.