FreeBSD Hardening : Konfigurasi Sysctl.conf

By | November 10, 2012

Sudah dua hari ini server mengalami serangan DOS TCP SYN FLOOD, dan kemarin sempat nge-drop sebentar. Syukurlah tidak sampai beberapa jam server kembali up. Penyebab pastinya tidak tahu, tapi serangan mulai datang ketika saya merubah settingan file /etc/hosts.allow dengan menambaahkan baris :

All : All : Allow

Settingan ini saya maksudkan untuk memperbolehkan akses ssh dari IP mana saja, karena settingan sebelumnya hanya ip-ip tertentu saja yang diperbolehkan akses ke server, karena koneksi speedy telkom selalu berubah-ubah sehingga sering menyulitkan saya untuk akses ssh ke server. Tapi kemudian hal ini malah menjadi bumerang bagi server saya, yang menyebabkan munculnya serangan tersebut. Tidak lama setelah saya menutup baris diatas, serangan mereda dan server kembali bisa diakses.

Hikmahnya, saya menjadi harus lebih hati-hati lagi.  Selain itu Saya jadi mengenal sedikit mengenai TCP SYN Flood. Meskipun sering Saya mengajarkan mengenai Three Way Handshake koneksi TCP tapi baru kali ini Saya menyadari kegunaan lain dari pengiriman paket SYN.

Secara sederhana  penyerangan TCP SYN Flood adalah mengirimkan paket SYN secara besar-besaran dalam waktu yang bersamaan sehingga membanjiri koneksi target dan menyebabkan target tersebut tidak lagi mampu menerima koneksi baru. Paket SYN yang dikirimkan oleh penyerang telah memiliki IP source address yang telah dimodifikasi (biasanya palsu), sehingga pada saat komputer target mengirimkan SYN + ACK, untuk merespon paket SYN yang dikirimkan oleh penyerang akan mengirimkan ke alamat palsu dan MENUNGGU ACK dari IP address palsu tersebut. Proses ini akan menyebabkan antrian, dan penggunaan buffer menjadi penuh sehingga tidak bisa menerima koneksi baru.

Untuk mengatasi serangan TCP SYN Flood ini, saya melakukan tweak konfigurasi server FreeBSD saya pada sysctl.conf berikut baris konfigurasi yang saya tambahkan untuk mengatasi serangan TCP SYN Flood dan beberapa serangan yang lainnya, diambil dari sini  :

compat.linux.osrelease=2.6.16
net.inet.icmp.icmplim=10
net.inet.icmp.maskrepl=0
net.inet.icmp.drop_redirect=1
net.icmp.bmcastechno=0
net.inet.tcp.icmp_may_rst=10
net.inet.tcp.drop_synfin=1
#kern.ipc.somaxconn=65536
net.inet.ip.fw.one_pass=0
kern.ipc.nmbclusters=32768
kern.maxfiles=65536
net.inet.ip.stealth=0
net.inet.tcp.rfc1323=1
net.inet.tcp.blackhole=2
net.inet.tcp.blackhole=1
net.inet.ip.rtexpire=2
net.inet.ip.rtminexpire=2
net.inet.ip.rtmaxcache=256
net.inet.ip.accept_sourceroute=0
net.inet.ip.sourceroute=0
net.link.ether.inet.log_arp_wrong_iface=0
kern.ps_showallprocs=0
kern.ps_argsopen=0
kern.randompid=348

Anda punya pengalaman mengenai serangan TCP SYN Flood ini? atau tipe serangan lain dan bagaimana cara mengatasinya?

ref :

  1. http://tools.ietf.org/html/draft-ietf-tcpm-syn-flood-04
  2. http://ejlp.blogspot.com/2008/02/serangan-tcp-syn-flood.html
  3. http://id.wikipedia.org/wiki/SYN_flooding_attack

Leave a Reply

Your email address will not be published. Required fields are marked *