Saturday, May 30, 2009

Brute Force Preventing


"Berawal dari" keluh kesah dari pihak warnet, yang kurang lebihnya seperti ini, 

"Mas Agil, kok koneksinya lemot banget ni yah?".  
Trus  kujawab, 
"ooo, itu mungkin dari speedynya mba?hehehe...". 

itu hari pertama, lha kok hari-hari berikutnya masih sama, tetep lemot.why???
Langsung deh, setelah mungkin laporan ketiga datang, aku langsung mengerahkan semua pasukan menuju TKP. Kurang lebih, sekitar 2 orang aku kerahkan kesana. itu aja 2 orang udah termasuk aku. hehehe...Masih dengan orang yang sama, ryan ramdhani sebagai partner setia-ku. Langsung menuju TKP dan menyisir barang-barang bukti yang berserakan. Namun barang bukti ini bukan seperti barang bukti yang kaya detektif2 itu, tapi dengan metode 3T, detailnya adalah seperti ini:
  • Tanya-tanya ke kasir warnetnya, kesan & pesan saat pertama kali mengenal-ku. (hehehe...nggak ding.)
  • Tanya-tanya ke kasir warnetnya, sejak kapan mulai lemotnya.
  • Trus liat log2 dari si server.
Pada saat kami melakukan langkah ke-3 nya langsung tersentak, terenyuh, dll. Coba bayangkan saja, dalam 1 jam ada user yang nyoba login +- (kurang lebih) 500x, bayangkan!!!

"Membayangkan....
Krik...Krik...Krik...Krik...Krik..."

Langsung saat itu juga kami menyimpulkan, bahwa orang itu telah melancarkan sebuah guessing username + password alias "brute force". Wew...
Aku dan ryan langsung atur strategi...(kali ini strateginya tidak dibuat singkatan). Kira2 rencananya seperti ini:
Alamat public dari si user tadi tidak langsung kami blok, kenapa? Karena, ia akan kami manfaatkan sebagai tester. hehehe...jadi untuk sementara kami kasih firewall saja dulu yang didalamnya aturannya adalah seperti ini 
  • Ketika ada seorang user mencoba login lebih dari 10x dalam 1 menit, maka koneksi akan di tolak
  • Setelah ditolak, maka alamat tersebut akan di blok
Kira2 script (di mikritingnya) nya seperti ini:

add chain=input protocol=tcp dst-port=21 src-address-list=ftp_blacklist action=drop

add chain=output action=accept protocol=tcp content="530 Login incorrect" dst-limit=1/1m,9,dst-address/1m

add chain=output action=add-dst-to-address-list protocol=tcp content="530 Login incorrect" \
address-list=ftp_blacklist address-list-timeout=3h

---------------------------------------------------
add chain=input protocol=tcp dst-port=22 src-address-list=ssh_blacklist action=drop \
comment="drop ssh brute forcers" disabled=no

add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage3 action=add-src-to-address-list address-list=ssh_blacklist \
address-list-timeout=10d comment="" disabled=no

add chain=input protocol=tcp dst-port=22 connection-state=new \
src-address-list=ssh_stage2 action=add-src-to-address-list address-list=ssh_stage3 \
address-list-timeout=1m comment="" disabled=no

add chain=input protocol=tcp dst-port=22 connection-state=new src-address-list=ssh_stage1 \
action=add-src-to-address-list address-list=ssh_stage2 address-list-timeout=1m comment="" disabled=no

add chain=input protocol=tcp dst-port=22 connection-state=new action=add-src-to-address-list \
address-list=ssh_stage1 address-list-timeout=1m comment="" disabled=no

Keterangan:
Disitu aku pisahkan scriptnya jadi dua, yang bagian atas itu untuk preventing jika si penyerang mencoba masuk lewat port 21, dan yang bagian bawah jika si penyerang mencoba masuk lewat port 22.
Oke setelah, firewall sudah di pasang, kemudian kami diamkan selama satu hari. Esok harinya langsung kami lihat lognya. "Oke, kita sudah blok user tersebut secara otomatis." Jadi kami sudah bisa menyimpulkan bahwa rencana firewall-nya sudah berfungsi dengan baik tanpa testing terlebih dahulu. hehehehe....

"what a nice plan."
semoga bermanfaat

14 comments:

  1. keren., sangat bermanfaat.,
    btw koq gender kasir ny ga d kasih tau.,
    padahal itu yang paling penting dr cerita di atas.,
    gyahahahaha.,

    ReplyDelete
  2. Karena penulis malu, misal pembaca tahu bahwa kasirnya (jdang jdeng, teot teot) cukup kalangan orang dalam saja yang tahu. benar bang yopi?
    wkwkwkw...

    ReplyDelete
  3. setuju mas bram.,khusus orng2 tertentu
    gyahahahahaha.,

    ReplyDelete
  4. =D>

    pengalamannya boleh juga tuh

    tapi ngomong2 masalah blog yang nulis ini, yang kasih comment ga sengaja secara spontan dan tidak sadar telah promosi blog yang nulis ini waktu presentasi ethical hacking, lebih tepatnya materi tentang postingan di bawah postingan ini

    sori sori sori

    :D

    ReplyDelete
  5. scipt na kereeen (padahal gak mudeng..)

    wkakakkakaa...

    ReplyDelete
  6. thanks for all

    @tia
    sama, aku juga ga mudeng. hahahaha...

    ReplyDelete
  7. author ajah gak mudeng, apalagi saya...
    kog benerin tembok yang pecah (gambar) pake script2 aneh...
    bukannya pake sement...

    ReplyDelete
  8. Mampir pak :) numpang ngiklan yak hee,,

    ReplyDelete
  9. berawal dari saia ngeklik alamat blog anda maka saia berakhir dengan bingung... :S

    nggak ngerti gil... :/

    ReplyDelete
  10. salut ... suer keren ente tip :)

    ReplyDelete
  11. trus akhirnya, apakah koneksinya menjadi lebih cepat?
    atau tetap lambat? itu point penting cerita di atas! selain gender, nama, dan status si penjaga warnet :D

    ReplyDelete
  12. hahaha...sebenernya si brute force preventing ini bukan solusi untuk menangani masalah lambatnya speed.
    tapi sebagai latar belakan terkuaknya sebuah kejahatan.
    hehehe...

    ReplyDelete
  13. mantap jaya gan, informatif bener

    ReplyDelete