Friday 23 October 2020

Mencegah Serangan pada Mikrotik dan di Monitoring oleh Bot Telegram

 

Beberapa serangan pada jaringan Mikrotik sering kita temukan diantaranya, Brute Force, Ping Flood atau DDoS dan Port Scanning, serangan tersebut bisa kita atasi dengan menambahkan sebuah rule pada Mikrotik untuk mencegah para attacker/botnet menyerang kembali. Kemudian ketika ada serangan pada Mikrotik kita bisa mengetahuinya melalui notifikasi pada Bot Telegram. Caranya akan saja jelaskan pada tutorial kali ini. Sebelum membuat rule untuk memblokir serangan pada Mikrotik kita pahami dulu jenis-jenis serangan, diantaranya:

Baca juga:

Daftar Isi

Brute Force

Brute Force adalah serangan yang dilakukan untuk membobol password dengan cara mencoba setiap password secara acak dari kombinasi huruf, angka dan simbol, sampai akhirnya menemukan password yang tepat. Biasanya Brute Forces dilakukan oleh robot atau program, karena untuk mendapatkan kombinasi huruf, angka dan simbol bisa dengan cepat dibuat oleh program/algoritma tertentu.

Ping Flood atau DDoS

Ping Flood atau sering kita kenal dengan istilah DDoS adalah jenis serangan yang dilakukan dengan cara mengirimkan lalu lintas/paket/ping jaringan internet pada server, sistem, atau jaringan Mikrotik secara terus menerus dan dalam jumlah paket data yang besar. Umumnya serangan ini dilakukan menggunakan beberapa komputer host penyerang sampai dengan komputer target tidak bisa diakses atau bahkan sampai rusak.

Port Scanning

Port Scanning adalah aktivitas yang dilakukan untuk memeriksa status port TCP dan UDP pada sebuah server atau jaringan Mikrotik. Aplikasi yang sering ditemukan untuk melakukan Port Scanning, seperti netcat, unicornscan, nmap, dll. Jadi dengan melakukan Port Scanning peretas bisa mencari port yang terbuka lalu mencobanya dengan melalukan beberapa cara untuk masuk ke sistem.

Langkah-Langkah

Memblokir Serangan Brute Force

Brute Force SSH dan Telnet

Rule ini akan mendeteksi serangan pada port 22 (SSH) dan port 23 (Telnet), dimana apabila terjadi tiga kali percobaan serangan melalui port 22 dan port 23 maka IP Address dari sumber serangan akan dimasukan kedalamn address list kemudian IP tersebut akan di drop dengan log-prefix=BruteForcesSshTelnet yang nantinya log-prefix tersebut akan menjadi notifikasi pada Bot Telegram.

/ip firewall filter
add action=drop chain=input comment="drop SSH&TELNET Brute Forcers" dst-port=\
    22-23 log=yes log-prefix=BruteForcesSshTelnet protocol=tcp \
    src-address-list=IP_BlackList
add action=add-src-to-address-list address-list=IP_BlackList \
    address-list-timeout=1d chain=input connection-state=new dst-port=22-23 \
    protocol=tcp src-address-list=SSH_BlackList_3
add action=add-src-to-address-list address-list=SSH_BlackList_3 \
    address-list-timeout=1m chain=input connection-state=new dst-port=22-23 \
    protocol=tcp src-address-list=SSH_BlackList_2
add action=add-src-to-address-list address-list=SSH_BlackList_2 \
    address-list-timeout=1m chain=input connection-state=new dst-port=22-23 \
    protocol=tcp src-address-list=SSH_BlackList_1
add action=add-src-to-address-list address-list=SSH_BlackList_1 \
    address-list-timeout=1m chain=input connection-state=new dst-port=22-23 \
    protocol=tcp

Brute Force FTP

Rule ini akan mendeteksi serangan pada FTP dimana apabila terjadi serangan akan menambahkan sebuah log-prefix=BruteForcesFtp.

/ip firewall filter
add action=drop chain=input comment="drop FTP Brute Forcers" dst-port=21 log=\
    yes log-prefix=BruteForcesFtp protocol=tcp src-address-list=FTP_BlackList
add action=add-dst-to-address-list address-list=FTP_BlackList \
    address-list-timeout=1d chain=output content="530 Login incorrect" \
    protocol=tcp
add action=add-dst-to-address-list address-list=FTP_BlackList \
    address-list-timeout=1d chain=output content="530 Login incorrect" \
    protocol=tcp
add action=accept chain=output content="530 Login incorrect" dst-limit=\
    1/1m,9,dst-address/1m protocol=tcp

Brute Force Winbox

Rule ini akan mendeteksi apabila ada percobaan login ke Winbox port 8291 dengan tiga kali percobaan dalam waktu satu menit maka IP Sumber akan di blokir. Maka apabila menggunakan rule ini disarankan jangan login menggunakan tiga Winbox di komputer yang sama, apabila hal tersebut terjadi maka IP Address yang digunakan untuk login ke Winbox akan di blokir selama satu hari. Kemudian akan menambahkan sebuah log dengan nama log-prefix=BruteForcesWinbox apabila terjadi login 3 kali berturut-turut dengan IP Address yang sama.

/ip firewall filter
add action=drop chain=input comment="drop Winbox Brute Forces" dst-port=8291 \
    log=yes log-prefix=BruteForcesWinbox protocol=tcp src-address-list=\
    IP_BlackList_Winbox
add action=add-src-to-address-list address-list=IP_BlackList_Winbox \
    address-list-timeout=1d chain=input connection-state=new dst-port=8291 \
    protocol=tcp src-address-list=SSH_BlackList_Winbox_3
add action=add-src-to-address-list address-list=SSH_BlackList_Winbox_3 \
    address-list-timeout=1m chain=input connection-state=new dst-port=8291 \
    protocol=tcp src-address-list=SSH_BlackList_Winbox_2
add action=add-src-to-address-list address-list=SSH_BlackList_Winbox_2 \
    address-list-timeout=1m chain=input connection-state=new dst-port=8291 \
    protocol=tcp src-address-list=SSH_BlackList_Winbox_1
add action=add-src-to-address-list address-list=SSH_BlackList_Winbox_1 \
    address-list-timeout=1m chain=input connection-state=new dst-port=8291 \
    protocol=tcp

Memblokir Serangan Ping Flood / DDoS

Rule ini akan mendeteksi serangan Ping Flood / DDoS kemudian menambahkan sebuah log dengan nama log-prefix=DDoS.

/ip firewall filter
add action=jump chain=forward comment=ddos connection-state=new jump-target=\
    detect-ddos
add action=return chain=detect-ddos dst-limit=32,32,src-and-dst-addresses/10s
add chain=detect-ddos src-address=10.10.10.1 action=return
add action=add-dst-to-address-list address-list=ddosed address-list-timeout=\
    10m chain=detect-ddos
add action=add-src-to-address-list address-list=ddoser address-list-timeout=\
    10m chain=detect-ddos
add action=drop chain=forward connection-state=new dst-address-list=ddosed \
    log=yes log-prefix=DDoS src-address-list=ddoser

IP 10.10.10.1 adalah DNS Server untuk pengecualian yang tidak di blokir

Device yang melakukan transfer data melalui aplikasi SHAREit dalam satu jaringan WiFi ternyata terdeteksi juga oleh rule ini

sumber: wiki.mikrotik

Memblokir Serangan Port Scanner

Rule ini akan mendeteksi apabila terjadi serangan pada Mikrotik melalui aplikasi Port Scanner. Apabila terjadi serangan maka akan menambahkan sebuah log-prefix=PortScanner.

/ip firewall filter
add action=drop chain=input comment="drop port scanners" log=yes log-prefix=\
    PortScanner src-address-list=port_scanners
add action=add-src-to-address-list address-list=port_scanners \
    address-list-timeout=2w chain=input protocol=tcp tcp-flags=\
    fin,!syn,!rst,!psh,!ack,!urg
add action=add-src-to-address-list address-list=port_scanners \
    address-list-timeout=2w chain=input protocol=tcp tcp-flags=fin,syn
add action=add-src-to-address-list address-list=port_scanners \
    address-list-timeout=2w chain=input protocol=tcp tcp-flags=syn,rst
add action=add-src-to-address-list address-list=port_scanners \
    address-list-timeout=2w chain=input protocol=tcp tcp-flags=\
    fin,psh,urg,!syn,!rst,!ack
add action=add-src-to-address-list address-list=port_scanners \
    address-list-timeout=2w chain=input protocol=tcp tcp-flags=\
    fin,syn,rst,psh,ack,urg
add action=add-src-to-address-list address-list=port_scanners \
    address-list-timeout=2w chain=input protocol=tcp tcp-flags=\
    !fin,!syn,!rst,!psh,!ack,!urg

Notifikasi ke Bot Telegram Apabila ada Serangan

Karena kita telah menambahkan sebuah log-prefix untuk setiap jenis rule untuk blokir serangan maka dengan menggunakan script kita akan membaca log tersebut sesuai dengan log-prefix yang telah di tentukan sebelumnya. Script ini akan membaca setiap log-prefix yang sesuai lalu akan mengirimkan log tersebut ke Bot Telegram.

Caranya buat sebuah system scheduler lalu buat schedule dengan nama LogMikrotik, lalu tambahkan script dibawah ini di On Event. Lalu jangan lupa ubah terlebih dahulu BOT ID dan Chat ID. Jalankan dengan interval yang di inginkan, asalkan tidak terlalu cepat karena script ini cukup memakan resources CPU..hehe

Share to Unlock Content

Silahkan share untuk membuka link download dan membuka scriptnya

Apabila tutorial ini bermanfaat support saya dengan cara share artikel ini.. Terimakasih 

Buat Logging

Agar Log dari Firewall dapat masuk ke Log Mikrotik, kita harus menambahkan sebuah Log Action dan Log Rule baru dengan Action Firewall. Dengan cara ke menu System –> Logging. Kira-kira buat seperti pada gambar dibawah ini:

Hasilnya

Ketika saya akan mencobanya dengan mengaktifkan port SSH dan Telnet di Mikrotik ternyata Mikrotik saya sudah menjadi target serangan Telnet.,,hehehe

Notifikasi Login Winbox Gagal Login

Notifikasi ketika ada serangan/akses ke FTP Mikrotik.

Untuk DDoS dan Port Scanner belum saya coba, silahkan apabila kalian ingin mencobanya sendiri, mohon maaf apabila ada rule yang keliru karena saya hanya ingin berbagi saja, apabila ada rule yang keliru bisa disampaikan saja di kolom komentar, semoga bermanfaat..hehe

 

Source :  https://labkom.co.id/mikrotik/mencegah-serangan-pada-mikrotik-dan-di-monitoring-oleh-bot-telegram

No comments:

Post a Comment