# Modul 3 — Tools for DoS/DDoS (Attack & Defense)
## Tujuan Praktikum
1. Memahami tools yang digunakan untuk simulasi serangan DoS/DDoS
2. Memahami tools yang digunakan untuk memantau lalu lintas jaringan ketika terjadi serangan DoS/DDoS
3. Memahami tools yang digunakan untuk mencegah serangan DoS/DDoS
4. Memahami penggunaan monitoring tools dalam memantau serangan DoS/DDoS
---
**Disclaimer**
Untuk Modul 3 kali ini, akan dibahas beberapa alat-alat yang digunakan dalam simulasi serangan DoS/DDoS di dunia nyata. Tools yang digunakan dimulai dari tools untuk melancarkan serangan DoS/DDoS, monitoring tools untuk merekam lalu lintas jaringan, dan tools untuk melindungi perangkat dari lalu lintas DoS yang berbahaya. Modul ini tidak bertujuan untuk mengajarkan cara menyerang sistem, tetapi untuk memberikan pemahaman menyeluruh tentang **bagaimana serangan bekerja** dan **bagaimana cara mendeteksinya serta melindungi diri darinya**.
---
### 1. Simulation / Attack Tools
> ⚠️ **Catatan Etika:** Semua tools yang dibahas hanya untuk pembelajaran di lingkungan terisolasi. Jangan pernah digunakan untuk menyerang sistem nyata.
#### a. hping3
`hping3` adalah alat simulasi serangan berbasis command line (CLI) yang bekerja layaknya perintah ping, namun lebih kuat dan lebih fleksibel dalam pengiriman paket ke target. `hping3` biasa digunakan untuk melakukan *network testing* atau simulasi traffic berlebih agar dapat mempelajari bagaimana sistem bereaksi. Misalnya, dengan mengirim banyak paket TCP atau ICMP, pengembang aplikasi bisa melihat bagaimana firewall atau sistem deteksi intrusi bereaksi terhadap peningkatan traffic tersebut.

#### b. LOIC / HOIC
LOIC (Low Orbit Ion Cannon) dan HOIC (High Orbit Ion Cannon) merupakan tools serangan berbasis GUI yang memiliki kemampuan untuk melakukan serangan pada Application layer. Keduanya sering digunakan dalam simulasi serangan HTTP Flood. Alat ini mengirimkan banyak permintaan ke server web secara bersamaan untuk melihat seberapa baik server menangani beban yang tinggi. Walau terlihat sederhana, LOIC dan HOIC efektif untuk memperlihatkan konsep dasar serangan DoS berbasis aplikasi.

#### c. Slowloris
Slowloris menyerang dengan cara yang berbeda. Alih-alih mengirim permintaan masif, ia membuka banyak koneksi HTTP dan mengirimkan data dengan sangat lambat (Slow HTTP Header) melalui eksekusi kode python dari CLI. Tujuannya adalah membuat server web menunggu, hingga semua koneksi server penuh. Serangan ini tidak membutuhkan bandwidth besar, tetapi bisa sangat efektif. Dari sisi analisis jaringan, kita dapat melihat banyak koneksi TCP terbuka lama tanpa aktivitas berarti.

#### d. GoldenEye
GoldenEye adalah alat berbasis Python yang dijalankaan melalu CLI yang digunakan untuk melakukan simulasi serangan HTTP Flood. Berbeda dengan LOIC/HOIC, GoldenEye meniru permintaan dari berbagai jenis browser dan header HTTP. Dengan begitu, trafiknya tampak lebih alami dan sulit dibedakan dari pengguna asli.

---
### 2. Monitoring Tools
Untuk menghadapi serangan, kita perlu mengetahui apa yang terjadi di jaringan. Tools berikut membantu kita **memantau, menganalisis, dan mendeteksi** lalu lintas yang mencurigakan pada jaringan.
#### a. Wireshark
Wireshark adalah alat analisis jaringan paling populer. Dengan Wireshark, kita bisa menangkap paket data yang melewati jaringan dan melihatnya secara detail — siapa yang mengirim, siapa yang menerima, dan apa isinya. Informasi yang direkam juga sangat detail hingga informasi trafik dari tiap paket yang keluar masuk hingga data yang dikirimkan.
#### b. tcpdump
Berbeda dari Wireshark yang berbasis GUI, `tcpdump` bekerja di terminal. Alat ini digunakan untuk menangkap paket secara cepat dan efisien, kemudian menyimpannya ke file `.pcap` untuk dianalisis lebih lanjut. `tcpdump` sangat berguna saat kita ingin mengamati lalu lintas secara langsung tanpa antarmuka grafis. Namun, dibutuhkan ketelitian yang lebih tinggi karena semua data capture direkam secara langsung tanpa penunjuk yang jelas seperti menggunakan wireshark.
#### c. IDS/IPS
Intrusion Detection System (IDS) dan Intrusion Prevention System (IPS) adalah lapisan keamanan yang membantu mendeteksi dan mencegah serangan. IDS bekerja dengan mendeteksi lalu lintas yang mencurigakan dan memberikan peringatan kepada pengguna, sedangkan IPS bekerja lebih aktif dengan langsung mencegah lalu lintas yang mencurigakan untuk mencegah serangan berjalan lebih jauh.
##### c.1 Snort
Snort bekerja dengan mendeteksi tanda-tanda serangan berdasarkan pola tertentu dalam lalu lintas jaringan. Ia memberi tahu administrator ketika menemukan aktivitas mencurigakan, misalnya SYN Flood atau HTTP Flood.
##### c.2 Suricata
Suricata mirip dengan Snort tetapi lebih modern dan cepat. Suricata mampu mendeteksi berbagai protokol sekaligus dan menampilkan hasil dalam format JSON, yang memudahkan integrasi dengan sistem analisis lain.
#### d. NetFlow / ntopng
NetFlow dan ntopng digunakan untuk memantau lalu lintas jaringan dalam bentuk statistik. Dengan NetFlow, administrator dapat menganalisis sumber traffic, protokol yang digunakan, serta pola bandwidth. Sementara ntopng menyediakan visualisasi berbasis web yang mudah dipahami untuk melihat aktivitas jaringan secara real-time.
---
### 3. Defense Tools & Services
Selain deteksi, langkah mitigasi dan perlindungan sangat penting untuk mengurangi dampak serangan. Beberapa tools berikut membantu mengamankan sistem dari potensi serangan DoS/DDoS.
#### a. Fail2ban
Fail2ban berfungsi untuk melindungi server dari brute-force attack dan serangan berulang dengan cara memblokir alamat IP yang mencurigakan berdasarkan pola log. Misalnya, jika terdapat banyak percobaan login gagal, Fail2ban akan menambahkan aturan pemblokiran pada firewall secara otomatis.
#### b. iptables dan ufw
Kedua tools ini digunakan untuk mengatur firewall pada sistem Linux. `iptables` memberikan kontrol granular terhadap paket yang masuk dan keluar, sedangkan `ufw` (Uncomplicated Firewall) menawarkan antarmuka yang lebih sederhana untuk pengguna pemula. Keduanya dapat digunakan untuk membatasi jumlah koneksi dari satu IP atau memblokir traffic berlebihan.
#### c. Cloud-based DDoS Protection
Ketika serangan berskala besar terjadi, solusi lokal sering kali tidak cukup. Di sinilah layanan berbasis cloud membantu.
##### c.1 Cloudflare
Cloudflare bertindak sebagai perantara antara pengguna dan server. Ia mampu menyaring trafik berbahaya, mendistribusikan beban ke beberapa server, dan melindungi alamat IP asli server agar tidak langsung terkena serangan.
##### c.2 AWS Shield
AWS Shield adalah layanan perlindungan DDoS milik Amazon. Shield memblokir serangan di infrastruktur AWS sebelum trafik mencapai aplikasi pengguna. Ada dua versi — Standard dan Advanced — dengan tingkat perlindungan yang berbeda.
---
### 4. Introduction to Wireshark
Sesi ini akan menjadi fondasi analisis teknis di bootcamp. Wireshark membantu kita melihat bagaimana serangan tampak di tingkat paket.
#### a. Fitur Wireshark
Wireshark menyediakan capture & display filters, statistics (Endpoints, Conversations), IO Graphs, Follow TCP Stream, dan kemampuan untuk menyimpan/extract pcap. Fitur-fitur ini membantu mendeteksi pola DoS (spike, top-talkers, half-open connections).
#### b. Instalasi Wireshark & tcpdump
Berikut langkah instalasi singkat pada distribusi Ubuntu/Debian dan Windows. Untuk praktikum, disarankan menggunakan Monitor VM yang sudah pre-installed.
##### Ubuntu / Debian
* Untuk pengunduhan wireshark di Linux, bisa mengikuti video berikut:
https://www.youtube.com/watch?v=wuH0bGTusXU
##### Windows
* Unduh Wireshark dari [https://www.wireshark.org/download.html](https://www.wireshark.org/download.html) dan jalankan installer. Pilih juga opsi untuk menginstal Npcap (driver capture). Restart komputer jika diminta.
#### c. Penangkapan lalu lintas dengan Wireshark — latihan ping
Selanjutnya, lakukan test ping dari VM ke sebuah website (misalnya google.com) dan capture traffic-nya dari wireshark sesuai dengan percobaan di akhir video berikut:
https://www.youtube.com/watch?v=wuH0bGTusXU
**Referensi:**
* https://www.kali.org/tools/goldeneye/
* https://www.kali.org/tools/hping3/
* https://www.wireshark.org/
* https://www.tcpdump.org/
* https://www.fail2ban.org/
* https://suricata.io/
* https://www.cloudflare.com/learning/ddos/what-is-a-ddos-attack/