Serangan DDoS lapisan aplikasi, dan bagaimana cara menguranginya

Serangan DDoS lapisan aplikasi, dan bagaimana cara menguranginya

serangan ddos aplikasi

DDoS (penolakan layanan terdistribusi) dan DoS (penolakan layanan) serangan dapat secara umum diklasifikasikan ke dalam tiga kategori berdasarkan lapisan model OSI yang mereka targetkan: lapisan jaringan (Lapisan 3), lapisan transport (Lapisan 4), dan lapisan aplikasi (Lapisan 7).

Lapisan 3 dan Lapisan 4 serangan biasanya kurang kompleks–meskipun mereka mungkin sangat menantang untuk diatasi–dan melibatkan pembanjiran lalu lintas ke jaringan dan lapisan transport, memberatkan sumber daya sistem target dan membuatnya tidak tersedia bagi pengguna sah. Jenis serangan ini dapat diluncurkan menggunakan berbagai teknik seperti banjir ICMP, banjir TCP SYN, atau banjir UDP.

Contoh banjir ICMP, adalah Lapisan 3 attack in which a large number of ICMP packets are flooded into to the target system, rendering it unresponsive. A TCP SYN flood, on the other hand, is a layer 4 attack which exploits the ways TCP connections are established.

In a SYN flood attack, the attacker sends many SYN packets to the target system, but never sends an ACK packet to complete the connection. This causes the system to allocate resources for each connection attempt which eventually overloading the system and making it unavailable to legitimate users. A UDP flood sends a large number of UDP packets to a target system, consuming its resources and making it unresponsive.

Serangan DDoS lapisan aplikasi

Application layer attacks are more complex and harder to mitigate than layer 3 and layer 4 attacks. These attacks target the application layer (layer 7) of the target system and exploit vulnerabilities in the application itself. Lapisan 7 attacks can do more damage because they can directly impact applications and underlying infrastructure. You won’t be able to mitigate layer 7 DDoS attacks with layer 3 or layer 4 tools such as with network firewalls.

HTTP floods, Slowloris attacks, and DNS amplification attacks are Layer 7 denial of service attacks. These attacks require more sophisticated defenses such as application-layer firewalls, intrusion prevention systems, and CDN (content delivery networks).

HTTP floods

HTTP floods attacks are performed using GET or POST requests to overwhelm the target server. Flood attacks using GET requests are usually simpler and require fewer resources because they only ask for information from the server. POST requests, on the other hand, typically require sending large amounts of data.

One of the reasons HTTP flood attacks are difficult to mitigate is that they are often launched from a large number of sources, making it difficult to identify and block all malicious traffic. Additionally, attackers can use techniques such as IP spoofing to disguise their true identities and make it even more difficult to trace the source of their attacks.

Defending against HTTP flood attacks can be complicated. Different types of attacks require different mitigation strategies. Common defenses against HTTP flood attacks include rate limiting, blacklisting, and web application firewalls. However, these techniques can be resource-intensive and may not be sufficient to thwart more sophisticated attacks.

Slowloris attacks

Slowloris is a type of flooding attack in which the way web servers handle client connections is targeted. This attack works by opening a large number of connections to the server, but sending the requests at a slow rate, keeping each connection open as long as possible. This type of attack can consume all available resources of the server and allows attackers to consume CPU, memory, or network bandwidth, etc. without even triggering the typical rate limiting and traffic filtering mechanisms commonly used to detect and block other types of DDoS attacks.

To carry out a Slowloris attack, attackers typically use scripts or tools that send HTTP requests to a server, but deliberately delay sending subsequent requests. The request is designed to look like a legitimate request, but with an incomplete header that keeps the connection open indefinitely. Over time, server akan memiliki banyak koneksi terbuka yang menunggu data tambahan dari klien, menyebabkan server berhenti merespons lalu lintas yang sah.

Serangan Slowloris bisa sulit terdeteksi karena desainnya yang tersembunyi dan bandwidth yang relatif rendah. Ini membuatnya menjadi alat yang efektif bagi penyerang yang ingin mensabotase server tanpa memicu peringatan atau menciptakan kecurigaan. Untuk melindungi dari serangan Slowloris, server web bisa menerapkan beberapa tindakan pencegahan. Misalnya, membatasi jumlah koneksi yang dapat dibuat dari satu alamat IP atau mengatur batas waktu untuk permintaan yang belum lengkap. Beberapa firewall aplikasi web dan layanan mitigasi DDoS memiliki perlindungan bawaan terhadap serangan Slowloris, menggunakan algoritme yang bisa mendeteksi dan memblokir lalu lintas semacam itu secara real time.

Lapisan 7 Mitigasi DDoS

Pembatasan laju

Rate limiting involves setting a threshold on the number of requests that can be made from a specific IP address or user agent in a specific period of time. The concept is very similar to rate limiting in layer 3 but it has to be implemented at layer 7.

The purpose of rate limiting is to prevent an attacker from overloading the web application with a large number of requests, causing server disruption. Rate limiting can be implemented at various layers of your web application architecture, on a web server, load balancer, or application firewall. Implementations typically involve tracking the number of requests made by a particular IP address or user agent and blocking further requests when a predefined threshold is reached.

A common approach for implementing rate limiting in web applications is to use middle-ware or plugins that track the number of requests made by each client and block further requests when the threshold is exceeded. is to These plugins can be configured to apply different rate limiting policies based on factors such as the type of request, user agent, or client IP address.

Misalnya, a simple rate limiting policy can limit requests from a single IP address to a maximum of 10 requests per minute. If a client exceeds this threshold, subsequent requests are blocked until the period expires.

Application-layer rate limiting products are available for popular web servers and cloud services, including:

Apache

Apache has several modules that can be used for rate limiting, such as mod_limitipconn, yang membatasi jumlah koneksi simultan dari alamat IP tertentu, dan mod_qos, yang menyediakan berbagai kontrol kualitas layanan termasuk pembatasan kecepatan.

Selanjutnya, ModSecurity Web Application Firewall memiliki fitur pembatasan kecepatan yang dapat memblokir klien yang melebihi ambang batas yang ditentukan. Selain modul-modul yang disebutkan di atas, Apache juga menyediakan mod_evasive. Ini adalah modul yang dapat digunakan untuk membatasi kecepatan dan memblokir klien yang melebihi ambang batas yang ditentukan. Mendeteksi dan memblokir klien jahat menggunakan berbagai teknik, termasuk pelacakan IP dan user-agent.

Nginx

Nginx menyediakan modul ngx_http_limit_req. Ini dapat digunakan untuk membatasi laju permintaan dari klien tertentu berdasarkan alamat IP atau faktor lainnya. Modul ini menggunakan algoritma token bucket untuk memberikan token kepada setiap klien berdasarkan kebijakan pembatasan kecepatan. Selain modul ngx_http_limit_req, Nginx juga menyediakan modul ngx_http_limit_conn. Ini dapat digunakan untuk membatasi jumlah koneksi dari klien atau alamat IP tertentu. Modul ini menggunakan algoritma token bucket untuk memberikan token berdasarkan kebijakan pembatasan kecepatan.

IIS

Layanan Informasi Internet Microsoft (IIS) menyertakan modul pembatasan IP dinamis yang dapat digunakan untuk pembatasan kecepatan. Modul ini dapat dikonfigurasi untuk memblokir permintaan dari alamat IP yang melebihi ambang batas yang ditentukan dan juga dapat menyediakan peringatan serta log untuk pemantauan. Selain modul Pembatasan IP Dinamis, IIS juga menyediakan modul Penyaringan Permintaan (Request Filtering) yang dapat digunakan untuk membatasi laju permintaan dari klien tertentu berdasarkan berbagai kriteria seperti alamat IP, user agent, dan metode permintaan.

AWS

Amazon Web Services (AWS) menawarkan beberapa layanan yang dapat digunakan untuk pembatasan laju, including AWS WAF dengan fitur pembatasan laju.

AWS Shield menawarkan perlindungan DDoS termasuk aturan berbasis laju yang dapat memblokir permintaan dari alamat IP di atas ambang tertentu. Selain AWS WAF dan AWS Shield, AWS juga menawarkan AWS Elastic Load Balancer. Ini mencakup berbagai kebijakan pembatasan laju yang dapat dikonfigurasi untuk memblokir klien yang melebihi ambang batas yang telah ditentukan.

Azure

Microsoft Azure menawarkan beberapa layanan yang dapat digunakan untuk pembatasan laju, termasuk Azure Application Gateways. Ini mencakup firewall aplikasi web yang dapat dikonfigurasi untuk membatasi laju permintaan yang masuk. Additionally, Azure Front Door menawarkan fitur pembatasan laju yang dapat memblokir permintaan dari alamat IP yang melebihi ambang batas yang telah ditentukan. Selain Azure Application Gateway dan Azure Front Door, Azure juga menawarkan Azure Firewall. Ini dapat digunakan untuk membatasi laju dan memblokir klien yang melebihi ambang batas yang ditetapkan.

GCP

Google Cloud Platform (GCP) menawarkan Cloud Armor, firewall aplikasi web dengan kemampuan pembatasan laju yang dapat memblokir permintaan dari klien yang melebihi ambang batas yang ditentukan.

Produk pembatasan laju pada lapisan aplikasi ini dapat secara efektif mengurangi serangan banjir HTTP dengan membatasi jumlah permintaan dari klien nakal. However, penting agar mereka dikonfigurasi dengan benar agar tidak memblokir lalu lintas yang sah dan digunakan bersama dengan langkah keamanan lain seperti firewall dan layanan mitigasi DDoS untuk memberikan perlindungan menyeluruh terhadap serangan DDoS.

Batas waktu untuk permintaan yang tidak lengkap

Berikut adalah beberapa metode mitigasi lapisan aplikasi Slowloris yang tercantum untuk Apache, Nginx, dan server web IIS, dan load-balancer serta fitur tambahan untuk layanan AWS, Azure, dan layanan GCP:

Apache

Selain modul-modul yang disebutkan di atas, Apache juga menyediakan modul, mod_reqtimeout, yang dapat digunakan untuk mengatur batas waktu untuk permintaan masuk. Jika klien mengirim permintaan yang memakan waktu lebih lama dari batas waktu yang ditentukan, server akan menutup koneksi. Ini akan mencegah serangan slowloris.

Nginx

Selain modul ngx_http_limit_conn dan modul ngx_http_limit_req, Nginx juga menyediakan modul ngx_http_request miliknya. Ini dapat digunakan untuk membatasi waktu yang dibutuhkan server upstream untuk memproses permintaan. Jika server upstream memerlukan waktu lebih lama daripada batas waktu yang ditentukan, Nginx akan menutup koneksi.

IIS

Selain modul Pembatasan IP Dinamis dan Penyaringan Permintaan, IIS juga menyediakan driver mode kernel HTTP.sys. Ini memungkinkan Anda menetapkan batas waktu untuk permintaan yang masuk. Jika klien mengirim permintaan yang memakan waktu lebih lama dari batas waktu yang ditentukan, server akan menutup koneksi.

AWS

Selain AWS WAF dan AWS Shield, AWS juga menyediakan Elastic Load Balancer, yang mencakup berbagai aturan batas waktu koneksi yang dapat dikonfigurasi untuk menutup koneksi yang membutuhkan waktu lebih lama dari ambang batas yang ditentukan.

Azure

Selain Azure Application Gateway dan Azure Front Door, Azure juga menyediakan Azure Load Balancer, yang mencakup karakteristik batas waktu idle yang dapat dikonfigurasi untuk menutup koneksi yang tidak aktif selama periode yang ditentukan.

GCP

Google Cloud Platform (GCP) memberikan berbagai alternatif waktu tunggu koneksi untuk layanannya, yang mencakup Cloud Load Balancing, yang memasukkan karakteristik waktu tunggu yang dapat dikonfigurasi yang dapat digunakan untuk menutup koneksi yang memakan waktu lebih lama dari ambang batas yang telah ditentukan.

Kesimpulan

Sebagai kesimpulan, Serangan DDoS dan DoS dapat diklasifikasikan berdasarkan lapisan model OSI yang menjadi targetnya, seperti lapisan jaringan (Lapisan 3), lapisan transport (Lapisan 4), dan lapisan aplikasi (Lapisan 7).

Sementara serangan lapisan 3 and layer 4 menyebabkan banjir lalu lintas pada lapisan jaringan dan transport, layer 7 serangan lapisan . lebih kompleks dan mengeksploitasi kerentanan pada aplikasi itu sendiri 7 denial of service attacks. Flood HTTP dan serangan Slowloris adalah contoh serangan lapisan , blacklisting, and web application firewalls. Tindakan pencegahan terhadap serangan ini termasuk pembatasan laju, Mengidentifikasi dan menahan serangan secara real-time memerlukan strategi pertahanan menyeluruh dan berlapis-lapis yang mencakup pemantauan, deteksi, dan kemampuan respons.

Additionally, penyerang dapat menyesuaikan teknik mereka dan menata serangan mereka untuk menghindari deteksi dan mengelabui langkah-langkah keamanan. Oleh karena itu, sangat penting bagi organisasi untuk menerapkan kemampuan yang komprehensif, Mengidentifikasi dan menahan serangan secara real-time memerlukan strategi pertahanan menyeluruh dan berlapis-lapis yang mencakup pemantauan, deteksi, dan kemampuan tanggapan untuk dengan cepat mengidentifikasi dan menahan serangan secara real-time. Ini mungkin termasuk menggunakan algoritma pembelajaran mesin canggih dan analitik perilaku untuk mendeteksi dan memblokir pola lalu lintas berbahaya.

Penafian Post

Pandangan, informasi, atau opini yang diungkapkan sepenuhnya merupakan milik penulis dan tidak selalu mewakili pandangan majikannya atau organisasi tempat ia berafiliasi.

Informasi yang terkandung dalam posting ini hanya untuk tujuan informasi umum. Informasi ini disediakan oleh Farhad Mofidi dan meskipun dia berupaya menjaga informasi tetap mutakhir dan akurat, dia tidak membuat pernyataan atau jaminan dalam bentuk apapun, langsung atau tersirat, mengenai kelengkapan, ketepatan, keandalan, kesesuaian atau ketersediaan situs web. Farhad tidak membuat pernyataan atau jaminan. atau informasi apapun, produk atau grafik terkait yang terdapat dalam setiap Post untuk tujuan apapun.

Selain itu, AI dapat digunakan sebagai alat untuk memberikan saran dan meningkatkan beberapa isi atau kalimat. Ide-ide, pikiran, pendapat, dan produk akhir adalah asli dan dibuat oleh manusia oleh penulis.

 

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Kolom yang wajib diisi ditandai *