Sabtu, 24 Desember 2016

Mikrotik + SELKS = Attacker Telolet Attacker !!!

    Hello para pembaca yang budiman, penulis sudah lama gak nulis blog. Penulis sendiri disibukan dengan aktivitas kerja yang sangat padat 2 tahun ini karena menyiapkan infrastructure & system perusahaan yang 'kekinian' (red: cloud computing + clustering + container).
Okay mungkin para pembaca bertanya kenapa judulnya seperti itu,  ini semua dikarenakan fenomena "om telolet om" akhir-akhir ini hingga media besar sekelas BBC pun meringkasnya dalam sebuah artikel .
    Artikel sebelumnya yang penulis buat lebih ke arah 'Red Team' (red: penyerangan) karena memang sudah sebagai hobi penulis untuk ngoprek-ngoprek tentang penyerangan sebuah system/infrastructure namun pada sehari-sehari kerja penulis malahan mengerjakan apa-apa yang dilakukan oleh 'Blue Team' (red: pertahanan), dan tulisan kali ini menjelaskan tentang bagaimana membuat NIDS dengan mudah & reliable menggunakan Mikrotik dan SELKS.
    Seperti yang banyak diketahui beberapa bentuk IDS seperti SNORT & SURICATA namun ada juga yang membungkusnya dalam sebuah distro linux seperti Security Union & SmoothSec dari pengalaman penulis menggunakan kedua distro tersebut mengalami banyak masalah seperti data corrupt dan permasalahan lainnya.        
    Okay langsung saja ke pembahasan, dimulai dengan seperti apa design infrastructure simple yang dibuat, perhatikan gambar berikut:

dan berikut ini penampakan fisik dari desain tersebut:


Mudah bukan, nah penulis anggap para pembaca bisa dengan sendirinya menginstall SELKS kedalam Virtual Machine maupaun Physical Machine , distro SELKS sendiri dapat didownload disini & untuk mikrotik bisa install di VM maupun membeli router-router yang sudah terinstall mikrotik.
   Selanjutnya bagaimana menghubungkan antara Mikrotik dengan SELKS, diketahui bahwa mikrotik sendiri dapat mengirimkan sebuah packet data dari hasil sniffing ke mesin lain melalui TZSP (Tazmen Sniffer Protocol) bisa dilihat disini lalu bagaimana SELKS menerima paket data tersebut? nah ini bagian yang menarik, ini konsepnya saat SELKS menerima paket TZSP ini via UDP protokol diubahlah packet TZSP tersebut ke PCAP format menggunakan tzsp2pcap selanjutnya dialihkan via Tcpreplay ke dummy ethernet yang sudah disetup untuk SURICATA listening sehingga SURICATA dapat membaca alur packet data yang terjadi pada router mikrotik (TZSP > TZSP2PCAP > ETHER > SURICATA).
    Sebelum melanjutkan lagi harap pembaca yang budiman menginstall tzsp2pcap kedalam mesin SELKS didalam folder "/usr/local/sbin/" , sourcenya dapat didownload disini . Setelah selesai install, untuk memudahkan pengoperasiannya maka dibuatlah file bash script seperti gambar berikut ini:


disini penulis menggunakan eth10 sebagai dummy, dan juga membuat folder "trigger" didalam home root folder serta menamai script tersebut dengan nama tap.sh , untuk memudahkan apabila terjadi reboot pada mesin SELKS maka penulis memasang path script tersebut kedalam /etc/rc.local agar autorun saat booting, seperti gambar berikut:


Okay, setelah semua selesai reboot/restart mesin SELKS agar kita mengetahui bahwa segalanya yang dibuat berjalan seperti semestinya. Nah sekarang penulis akan mengaktifkan fitur sniffer pada mikrotik yang akan dikirimkan kedalam mesin SELKS , pada menu winbox pilih tools > sniffer lalu dilanjutkan seperti gambar berikut:

Dikarenakan SELKS mesin ber-IP 192.168.1.200 maka ip tersebut dicantumkan kedalam form Server, selanjutnya centang Streaming Enabled , klik Apply lalu Start  , mudah sekali bukan.
    Setelah semua aktif dan terhubung berarti tinggal kita melakukan test apakah IDS sudah berjalan seperti seharusnya, dengan menggunakan mesin kali linux sebagai attacker yang berada dibelakang router mikrotik dengan alamat IP 192.168.7.252 melakukan curl menggunakan user-agent yang ada pada rule suricata , seperti gambar berikut ini:

lalu perhatikan yang terjadi pada mesin SELKS melalui web panel yang diakses melalui browser di alamat https://192.168.1.200/ menggunakan default user selks-user dan password selks-user , berikut tampilan hasil sensor SELKS:
   
Hasil sensor sudah tampak pada panel, sebenarnya masih banyak detil fitur apabila kita mengklik menu home, silahkan pembaca yang budiman memperdalamnya sendiri.
    Demikian tulisan ini dibuat untuk pembelajaran, seperti perkataan MBAH REMO salah satu guru besar sesepuh IT legendaris indonesia, "Apa yang kita dapat dari internet (red: khalayak banyak) banyak maka kita harus kembalikan lagi ke internet", penulis hanya manusia biasa apabila ada kesalahan mohon dimaafkan, semoga tulisan ini bermanfaat.
   
Referensi:
  1. http://securityaffairs.co/wordpress/49624/hacking/cyber-red-team-blue-team.html
  2. https://www.stamus-networks.com/open-source/ 
  3. https://bl0gg.ruberg.no/2015/03/ids-with-mikrotik-and-snort/
  4. https://bl0gg.ruberg.no/2015/10/streaming-pcap-to-a-dummy-interface/
  5. https://web.nsrc.org/workshops/2015/pacnog17-ws/raw-attachment/wiki/Track2Agenda/ex-suricata-config-test.htm