Kategori
Security

DoS dan DDoS

Sejarah Denial-of-Service Attacks

Serangan DoS pada sistem yang terhubung ke internet memiliki sejarah panjang yang bisa dibilang dimulai dengan serangan worm Robert Morris pada tahun 1988. Dalam serangan itu, Morris, seorang mahasiswa pascasarjana di MIT, merilis sepotong malware yang diproduksi sendiri – worm – yang cepat menyebar melalui internet global dan memicu buffer overflows dan serangan DoS pada sistem yang terpengaruh.

Serangan Denial-of-Service

Serangan DDoS pertama kali muncul pada tahun 1999, tiga tahun setelah serangan Denial of Service yang klasik muncul, dengan menggunakan serangan SYN Flooding, yang mengakibatkan beberapa server web di Internet mengalami “downtime”. Pada awal Februari 2000, sebuah serangan yang besar dilakukan sehingga beberapa situs web terkenal seperti Amazon, CNN, eBay, dan Yahoo! mengalami “downtime” selama beberapa jam. Serangan yang lebih baru lagi pernah dilancarkan pada bulan Oktober 2002 ketika 9 dari 13 root DNS Server diserang dengan menggunakan DDoS yang sangat besar yang disebut dengan “Ping Flood”. Pada puncak serangan, beberapa server tersebut pada tiap detiknya mendapatkan lebih dari 150.000 request paket Internet Control Message Protocol (ICMP). Untungnya, karena serangan hanya dilakukan selama setengah jam saja, lalu lintas Internet pun tidak terlalu terpengaruh dengan serangan tersebut (setidaknya tidak semuanya mengalami kerusakan).

Serangan ke Spamhaus pada tahun 2013 tercatat sebagai serangan DDoS terbesar sepanjang sejarah. Serangan ini mencapai puncak tertinggi 400 Gbps dan mengakibatkan Github tidak bisa diakses beberapa menit. Di tahun berikutnya terjadi serangan ke salah satu klien Cloudflare dengan kekuatan 33% lebih besar dibandingkan serangan yang dilakukan ke Spamhaus.

Selain Spamhaus dan Cloudflare, Serangan ke BBC tahun 2015 juga tercatat sebagai serangan DDoS terbesar sepanjang sejarah. Serangan ini mengakibatkan hampir semua layanan BBC lumpuh. Keseluruhan domain tidak bisa diakses, bahkan layanan On-Demand dan radio juga mati.

Github juga menjadi korban serangan serangan DDoS. Pada tahun 2015 bukan menjadi serangan terbesar yang ditujukan ke situs itu. Ternyata, pada tahun 2018 terjadi serangan yang sama dan hampir 3 kali lebih besar dibanding serangan yang terjadi sebelumnya.

Github mendapatkan serangan DDoS yang mencapai puncak tertinggi transaksi data yang sangat fantastis, yaitu 1.35 Tbps. Serangan tersebut berasal dari ribuan Autonomous System (ASN) di puluhan ribu titik akhir yang unik. Cara kerja serangan DDoS adalah melalui penyalahgunaan instance memcached yang memang dapat di akses melalui internet dengan UDP secara publik.

Serangan ke Github awal tahun ini menggunakan DDoS adalah serangan DDOS terbesar sepanjang sejarah yang tercatat saat ini.


Definisi DoS dan DDoS

Percobaan serangan DoS setiap tahun selalu meningkat. Penggunanya tidak hanya user yang ingin mencari sensasi, bahkan digunakan dengan alasan politik, atau tindak kejahatan yang ingin mengganggu stabilitas server dan bahkan mencuri data yang ada di dalamnya.

Serangan DoS (denial-of-service attacks) adalah jenis serangan terhadap sebuah komputer atau server di dalam jaringan internet dengan cara menghabiskan sumber (resource) yang dimiliki oleh komputer tersebut sampai komputer tersebut tidak dapat menjalankan fungsinya dengan benar sehingga secara tidak langsung mencegah pengguna lain untuk memperoleh akses layanan dari komputer yang diserang tersebut.

Serangan denial-of-service adalah peristiwa keamanan yang terjadi ketika penyerang mencegah pengguna yang sah mengakses sistem komputer, perangkat, layanan atau sumber daya TI tertentu. Serangan denial-of-service (DoS) biasanya membanjiri server, sistem atau jaringan dengan lalu lintas untuk membanjiri sumber daya korban dan menyulitkan atau mustahil bagi pengguna yang sah untuk mengaksesnya.

Distributed Denial of Service (DDos) adalah salah satu jenis serangan Denial of Service yang menggunakan banyak host penyerang (baik itu menggunakan komputer yang didedikasikan untuk melakukan penyerangan atau komputer yang “dipaksa” menjadi zombie) untuk menyerang satu buah host target dalam sebuah jaringan.

DDos Attack atau Distributed-Denial-of-Service attack adalah sebuah usaha serangan untuk membuat komputer atau server tidak bisa bekerja dengan baik. Dalam hal dapat menyebabkan performa server/komputer menjadi sangat lambat. Hal itu dikarenakan ada ribuan “zombie” (Spams) sistem yang menyerang secara bersamaan.

Selain itu serangan DDos juga mengganggu komunikasi antara sebuah host dan kliennya dengan berbagai cara, selain itu juga memungkinkan pengubahan informasi yang dapat menyebabkan kerusakan pada sistem. serangan DDOS ini merupakan serangan yang paling sering dilakukan dengan maksud dan tujuannya. Sementara serangan yang membuat server crash sering berhasil ditangani dengan hanya me-reboot sistem, serangan flooding bisa lebih sulit untuk dipulihkan. Memulihkan diri dari serangan distributed denial-of-service (DDoS), di mana lalu lintas serangan berasal dari sejumlah besar sumber, dapat menjadi lebih sulit.

denial-of-service-dos-vs-distributed

Serangan DoS dan DDoS sering menggunakan kerentanan dalam cara protokol jaringan menangani lalu lintas jaringan; misalnya, dengan mentransmisikan sejumlah besar paket ke layanan jaringan yang rentan dari berbagai alamat Internet Protocol (IP) untuk membanjiri layanan dan membuatnya tidak tersedia bagi pengguna yang sah.

Konsep Dasar DoS

Dalam sebuah serangan Denial of Service, si penyerang akan mencoba untuk mencegah akses seorang pengguna terhadap sistem atau jaringan dengan menggunakan beberapa cara, yakni sebagai berikut:

  1. Membanjiri lalu lintas jaringan dengan banyak data sehingga lalu lintas jaringan yang datang dari pengguna yang terdaftar menjadi tidak dapat masuk ke dalam sistem jaringan. Teknik ini disebut sebagai traffic flooding.
  2. Membanjiri jaringan dengan banyak request terhadap sebuah layanan jaringan yang disedakan oleh sebuah host sehingga request yang datang dari pengguna terdaftar tidak dapat dilayani oleh layanan tersebut. Teknik ini disebut sebagai request flooding.
  3. Mengganggu komunikasi antara sebuah host dan kliennya yang terdaftar dengan menggunakan banyak cara, termasuk dengan mengubah informasi konfigurasi sistem atau bahkan perusakan fisik terhadap komponen dan server.

Jenis DoS attacks

Selain membedakan antara serangan denial-of-service dengan sumber tunggal dan serangan DDoS, serangan DoS dapat dikategorikan dengan metode yang digunakan dalam serangan itu.

  1. Dalam serangan denial-of-service domain name system (DNS), penyerang menghasilkan permintaan DNS buatan yang tampaknya berasal dari alamat IP di jaringan korban dan mengirimkannya ke server DNS yang tidak terkonfigurasi yang dikelola oleh pihak ketiga. Amplifikasi terjadi ketika server DNS menengah merespons permintaan DNS palsu. Respons dari server DNS perantara ke permintaan serangan buatan mungkin berisi lebih banyak data daripada respons DNS biasa, yang membutuhkan lebih banyak sumber daya untuk diproses. Ini dapat menyebabkan pengguna yang sah tidak dapat mengakses layanan.
    Serangan layer aplikasi menghasilkan traffic palsu ke server aplikasi internet, terutama server DNS atau server HTTP. Sementara beberapa serangan penolakan layanan lapisan aplikasi bergantung hanya pada membanjiri server aplikasi dengan data jaringan, yang lain bergantung pada mengeksploitasi kelemahan atau kerentanan di server aplikasi korban atau dalam protokol aplikasi itu sendiri.
  2. Serangan buffer overflow adalah deskripsi tangkapan yang paling umum diterapkan pada serangan DoS dengan mengirim lebih banyak lalu lintas ke sumber daya jaringan dibandingkan dengan pengembang yang mendesainnya untuk diantisipasi. Salah satu contoh serangan seperti itu mengirim file dengan nama file 256-karakter sebagai lampiran ke penerima menggunakan Netscape atau klien email Microsoft; nama file yang lebih lama dari yang diperkirakan cukup untuk membuat crash aplikasi tersebut.
  3. Serangan ping-of-death, yaitu dengan menyalahgunakan protokol ping dengan mengirim pesan permintaan dengan payloads yang terlalu besar, menyebabkan sistem yang ditargetkan menjadi kewalahan, sehingga berhenti merespons permintaan layanan yang sah dan kemungkinan sistem korban menjadi crash. Ping of Death mengeksploitasi kelemahan didalam reassembly kembali fragmen paket IP. Ketika data dikirimkan ke jaringan, paket IP sering berubah menjadi potongan paket yang lebih kecil. Ping of Death akan memanipulasi offset potongan data sehingga akhirnya terjadi overlapping antara paket yang diterima di bagian penerima setelah potongan-potongan paket ini di reassembly. Pada Ping of Death data yang dikirim melebihi maksimum paket yang di ijinkan menurut spesifikasi protokol IP. 
  4. Serangan SYN flood, yaitu dengan menyalahgunakan protokol jabat tangan (handshake) TCP dimana klien membuat koneksi TCP dengan server. Dalam serangan SYN flood, penyerang mengarahkan aliran volume tinggi permintaan untuk membuka koneksi TCP dengan server korban tanpa niat untuk benar-benar menyelesaikan sirkuit. Biaya menghasilkan aliran permintaan SYN relatif rendah, tetapi menanggapi permintaan seperti itu adalah sumber daya intensif untuk korban. Hasilnya adalah penyerang yang berhasil dapat menolak akses pengguna yang sah ke server yang ditargetkan.
  5. Serangan State exhaustion – juga dikenal sebagai serangan TCP (Transmission Control Protocol) – terjadi ketika seorang penyerang menargetkan state table yang berada di firewall, router dan perangkat jaringan lainnya dengan mengisinya dengan data serangan. Ketika perangkat ini menggabungkan pemeriksaan sirkuit jaringan, penyerang mungkin dapat mengisi state table dengan membuka lebih banyak sirkuit TCP daripada yang bisa ditangani oleh sistem korban sekaligus, mencegah pengguna yang sah mengakses sumber daya jaringan.
  6. Serangan teardrop, yaitu dengan mengeksploitasi kelemahan dengan cara yang mirip dengan bagaimana sistem operasi yang lebih lama menangani paket Protokol Internet yang terfragmentasi. Spesifikasi IP memungkinkan fragmentasi paket ketika paket terlalu besar untuk ditangani oleh router perantara, dan itu membutuhkan fragmen paket untuk menentukan offset fragmen. Dalam serangan teardrop, offset fragmen diatur untuk tumpang tindih satu sama lain. Host menjalankan OS yang terpengaruh kemudian tidak dapat memasang kembali fragmen dan serangan itu dapat membuat sistem crash.
  7. Serangan DoS volumetrik, bertujuan untuk mengganggu akses yang sah ke sumber daya jaringan dengan menggunakan semua bandwidth yang tersedia untuk mencapai sumber daya tersebut. Untuk melakukan ini, penyerang harus mengarahkan volume lalu lintas jaringan yang tinggi ke sistem korban. DoS Volumetrik serangan membanjiri perangkat korban dengan paket jaringan menggunakan User Datagram Protocol  atau Internet Control Message Protocol. Protokol-protokol ini membutuhkan overhead yang relatif sedikit untuk menghasilkan volume lalu lintas yang besar, sementara, pada saat yang sama, memerlukan perhitungan nontrivial pada pihak korban. perangkat jaringan untuk memproses datagram berbahaya yang masuk.
  8. Serangan Smurf adalah merupakan penyerangan dengan memanfaatkan ICMP (Internet Control Message Protocol) echo request yang sering digunakan pada saat broadcast (menyiarkan) identitas kepada broacast address dalam sebuah network. Saat melakukan broadcast pada broadcast address maka semua komputer yang terkoneksi kedalam jaringan akan ikut menjawab request tersebut. Hal ini tentu saja akan memperlambat trafik di jaringan karena komputer–komputer yang tidak ditanya turut memberikan request tersebut. Hal ini tentu akan berdampak lebih besar bila alamat pengirim request disamarkan dan tidak hanya mengirimkan ICM request pada sebuah network melainkan kebeberapa network. Tentu saja balasan yang diterima akan lebih besar lagi, tidak hanya sampai disitu. Pengirim menyamarkan identitasnya dengan cara memakai alamat IP orang lain.

Teknik DDoS

Serangan DDoS adalah teknik penyerangan yang mempunyai banyak cara sederhana, seperti menggunakan virus, botnet, dan perangkat lunak

  1. Botnet 
    Pada pengembangannya, serangan DDoS dilakukan dengan bantuan kumpulan bot yang dijalankan secarabersama-sama. Bot disisipkan pada malware yang kemudian di tanam ke komputer yang terhubung ke jaringan internet.
    Jumlah komputer ini bisa puluhan sampai dengan jutaan, tergantung banyaknya komputer yang telah terinfeksi malware. Semua komputer ini dinamakan dengan botnet, sedangkan satu komputer yang terinfeksi dinamakan dengan komputer zombie. Hanya menggunakan satu perintah saja, botnet langsung menjalankan perintah untuk melakukan DDoS ke komputer target dalam waktu bersamaan.
  2. Virus
    Di internet, seseorang yang berencana melakukan DDoS adalah dengan menyebarkan virus melalui file yang dibagikan ke berbagai situs yang terhubung dengan internet. Virus sengaja diciptakan salah satunya adalah untuk menjalankan bot melalui script yang berjalan pada sistem operasi. Bahkan beberapa virus dapat mengambil hak akses dari perangkat yang sudah mengunduh script dan dijalankan pada sistem operasi.

denial-of-service-dos-vs-distributed


Ciri Penyerangan DDoS

Tim Kesiapan Darurat Komputer Amerika Serikat (US-CERT) menyediakan beberapa panduan untuk menentukan kapan serangan DoS mungkin sedang berlangsung. US-CERT menyatakan bahwa yang berikut ini dapat mengindikasikan serangan seperti itu:

  • Bandwidth mengalami lalu lintas yang sangat padat secara drastis baik download atau upload. Terjadi tiba-tiba dan berlangsung secara terus menerus. Jika target adalah VPS (virtual private server), bisa jadi konsumsi bandwidth akan mencapai batas penggunaan sehingga VPS tidak bisa diakses.
  • Load CPU menjadi sangat tinggi padahal tidak ada proses yang dieksekusi yang mengakibatkan kinerja menjadi menurun sampai dengan website tidak bisa diakses.
  • Jika sistem  berada pada penyedia layanan VPS, terkadang ada yang menyediakan layanan informasi jika sewaktu-waktu terjadi aktivitas mencurigakan pada server. Anda juga bisa mengaturnya sendiri.
  • Penurunan kinerja jaringan, terutama ketika mencoba membuka file yang disimpan di jaringan atau ketika mengakses situs web
  • Ketidakmampuan untuk menjangkau situs web tertentu
  • Kesulitan mengakses situs web
  • Volume email spam yang lebih tinggi dari biasanya.
  • Penggunaan yang berlebihan pada sumber daya : bandwith, disk space, processor.
  • Gangguan setup dan konfigurasi
  • Gangguan terhadap informasi status
  • Gangguan terhadap komponen-komponen fisik jaringan
  • Menganggu komunikasi antar jaringan
  • Kecepatan dan Kinerja Jaringan yang menurun,
  • Peningkatan Spams yang meningkat
  • Tidak berfungsinya bahkan hilangnya beberapa fitur
  • Website tidak bisa diakses
  • Adanya sistem yang Crash (rusak), dan lainnya

Baca juga : Kamus Keamanan Jaringan


Cara Mengatasi DoS/DDoS

Para ahli merekomendasikan sejumlah strategi untuk bertahan melawan serangan DoS dan DDoS, dimulai dengan menyiapkan rencana respons insiden jauh sebelumnya.

Ketika suatu perusahaan mencurigai serangan DoS sedang berlangsung, ia harus menghubungi penyedia layanan internet (ISP) untuk menentukan apakah insiden tersebut adalah serangan DoS atau hanya penurunan kinerja yang disebabkan oleh faktor lain. ISP dapat membantu dengan mitigasi DoS dan DDoS dengan mengubah rute atau membatasi lalu lintas berbahaya dan menggunakan load balancers untuk mengurangi efek serangan.

Perusahaan mungkin juga ingin mengeksplorasi kemungkinan menggunakan produk deteksi serangan penolakan layanan untuk perlindungan DoS; beberapa sistem deteksi intrusi, sistem pencegahan intrusi, dan firewall menawarkan fungsi deteksi DoS. Strategi lain termasuk membuat kontrak dengan ISP cadangan dan menggunakan anti-DoS berbasis cloud

Sementara ada beberapa kasus di mana penyerang menuntut pembayaran dari korban untuk mengakhiri serangan DoS atau DDoS, keuntungan finansial biasanya bukan motif di balik serangan jenis ini. Dalam banyak kasus, penyerang ingin merusak organisasi atau individu yang menjadi sasaran serangan. Dalam kasus lain, para penyerang hanya berusaha untuk menyabot korban dengan menyebabkan kerusakan atau ketidaknyamanan terbesar pada jumlah terbesar korban.

denial-of-service-dos-vs-distributed

Ketika pelaku serangan DoS diidentifikasi, alasan serangan itu juga dapat diungkapkan. Banyak serangan DoS profil tinggi sebenarnya serangan terdistribusi, yang berarti lalu lintas serangan diarahkan dari beberapa sistem serangan. Sementara serangan DoS yang berasal dari satu sumber atau alamat IP dapat lebih mudah dimitigasi karena para defender jaringan dapat memblokir lalu lintas jaringan dari sumber yang melanggar, serangan yang diarahkan dari berbagai sistem serangan jauh lebih sulit untuk dideteksi dan dipertahankan. Mungkin sulit untuk membedakan lalu lintas yang sah dari lalu lintas berbahaya dan memfilter paket berbahaya ketika paket dikirim dari alamat IP yang tampaknya terletak di seluruh internet.

Ada beberapa cara yang dapat dilakukan jika website atau sistem terkena DDoS. Berikut ini beberapa cara yang bisa dilakukan :

  1. Melakukan Identifikasi Serangan, biasanya jika Anda mempunyai server sendiri, tanda-tanda jika sedang terjadi serangan DDoS akan terlihat. Jika dikethui maka Anda bisa bersiap-siap melakukan penanganan sebelum terjadi serangan DDoS yang lebih serius.
  2. Mempertahankan Parameter Network, ada beberapa langkah teknis yang dapat diambil untuk mengurangi sebagian efek dari serangan, dan beberapa diantaranya cukup sederhana. Misalnya anda dapat:
  3. Memperbesar Bandwidth, jika masih bisa melakukan pelebaran bandwidth, cara ini bisa dicoba untuk memberikan waktu agar sistem tidak sampai down. Jika serangan DDoS terlalu besar maka cara ini mungkin tidak akan berpengaruh banyak untuk penanganan.
  4. Menghubungi ISP atau penyedia layanan web hosting, salah satu ciri serangan DDoS adalah menyerang alamat ip dari sistem, sehingga Anda bisa melaporkan kejadian tersebut kepada penyedia jasa internet yang dipakai dan mendeteksi serangan yang terjadi.
  5. Menghubungi spesialis DDoS, langkah terakhir yang bisa diambil adalah dengan menghubungi layanan spesialis DDoS yang bisa mencoba membantu untuk menangani serangan yang terjadi.
  6. Menggunakan firewall untuk menghindari serangan yang bertujuan untuk menyerang data – data yang ada di komputer Anda.
  7. Melakukan blocking terhadap IP yang terlihat mencurigakan. Jika port telah dimasuki, maka komputer Anda akan terkuasai oleh si penyerang. Cara untuk mengatasinya yaitu dengan menggunakan firewall yang di kombinasikan dengan IDS (Instrusion Detection System).
  8. Menolak paket data dan mematikan service UDP (User Datagram Protocol).
  9. Menggunakan anti virus yang dapat menangkal serangan data seperti Kapersky.
  10. Melakukan filtering pada permintaan ICMP (Internet Control Message Protocol) echo pada firewall.
  11. Memperbarui sistem operasi ke versi terbaru. Hal ini bertujuan untuk mengatasi menutupi bagian-bagian rentan yang bisa saja dijadikan pintu masuk akses ilegal.
  12. Membatasi akses dari dan ke sistem sehingga bisa menyaring trafik data yang masuk dan keluar pada komputer atau server yang Anda gunakan.
  13. Jika serangan yang terjadi menggunakan Smurf, Anda dapat mencoba mengatasinya dengan cara mematikan sementara broadcast address pada router. Bisa juga dengan melakukan penyaringan atau membatasi permintaan ICMP pada firewall.
  14. Menggunakan perangkat lunak keamanan tambahan untuk sistem.

Cara penanggulangan serangan Denial Of Service Attack (DoS Attack)

  • Ping of death umumnya tidak terlalu berpengaruh pada sistem saat ini, namun ada baiknya selalu mengupdate (memperbarui) patch guna menutupi celah–celah keamanan yang ada pada sistem operasi yang kita gunakan.
  • Gunakanlah firewall yang dapat mengatasi masalah serangan Syn flooding, aturlah kebijakan firewall untuk tidak meneruskan paket data yang tidak diketahui dengan jelas asalnya.
  • Bila anda pemilik server yang dijadikan zombie, tersedia banyak aplikasi atau software untuk mendeteksi Remote controlled attack. Waspadai aktivitas yang janggal diserver anda dan lakukan pengecekan secara berkala. Walaupun sangat sulit untuk mendeteksi serangan ini, pengaturan dan kombinasi firewall dan IDS (Intrusion Detection System) mungkin cukup membantu. Lakukan blocking IP address dan port bila anda terkena serangan dan laporkan kepada pemilik server yang menjadi zombie.
  • Dapat dilakukan dengan menolak paket data yang datang dari luar jaringan dan mematikan semua service UDP yang masuk. Walaupun dengan cara ini dapat mematikan beberapa aplikasi namun cara ini cukup efektif untuk mengatasi serangan UDP (User Datagram Protocol) flood tersebut.
  • Smurf Attack dapat diatasi dengan cara disable broadcast address di router. Cara lainnya adalah dengan melakukan filtering (menjaring) pada permintaan ICMO echo request pada firewall. Cara lainnya yang dapat dilakukan dengan membatasi trafik ICMP agar persentasenya kecil dari keseluruhan trafik yang terjadi pada jaringan.

Baca juga : Firewall

Ref : [1][2][3][4][5][6]