Setelah insiden beberapa bulan yang lalu (lihat Pembunuhan Berantai, MikroTik Tetap Kokoh), security awarness menjadi sebuah concern bagi sebagian besar administrator jaringan. Karena di luar sana sudah berkeliaran banyak sekali pelaku kejahatan, mulai dari yang punya niat tertentu atau bahkan hanya sekedar iseng.
Sebagian besar pengguna masih mengandalkan username dan password saja. Metode ini sangat kuno dan sangat berbahaya karena bisa jadi pelaku mempunyai teknik untuk mengetahui username dan password. Oleh karena itu dibutuhkan lapisan pengamanan ekstra yang hanya diketahui oleh pengguna RouterOS itu sendiri. Dibawah ini saya akan menjelaskan salah satu teknik yang sudah cukup populer. Ya teknik ini disebut sebagai Sequence Port Knocking (atau orang menyebut Port Knocking saja).
How does it work?
Port Knocking sendiri adalah sebuah teknik memanfaatkan port yang tidak digunakan oleh router untuk menginisiasi pembukaan firewall dalam menerima akses dari IP pengguna.
Pada dasarnya port service yang ingin digunakan dalam keadaan terbuka. Hanya saja, sebuah filter melakukan drop pada semua akses ke port tersebut kecuali dari IP yang terdaftar (whitelist). Sehingga komputer menganggap port yang dimaksud dalam keadaan tertutup. Nah pertanyaan besarnya, bagaimana pengguna menambahkan IP mereka ke dalam whitelist apabila IP-nya adalah dinamis sedangkan mereka tidak dapat mengakses router?
Anda dapat memanfaatkan fitur add source address to list. Fungsi dari fitur add source address to list adalah setiap pengguna yang melakukan koneksi dengan kriteria tertentu, maka IP asal (source address) akan ditambahkan pada sebuah daftar (list).
Dengan fitur ini anda dapat melakukan pemanggilan (knocking - that's why it's called port knocking) pada serangkaian port yang tidak digunakan tadi kemudian source address-nya ditambahkan ke dalam list. Untuk menghindari knocking yang acak (random) sebaiknya knocking yang dilakukan pada setiap port yang berbeda, digunakan list yang berbeda pula. Selain itu, hal ini dapat menambahkan aspek keamanan tambahan karena knocking harus dilakukan secara urut (sequence).
Dengan fitur ini anda dapat melakukan pemanggilan (knocking - that's why it's called port knocking) pada serangkaian port yang tidak digunakan tadi kemudian source address-nya ditambahkan ke dalam list. Untuk menghindari knocking yang acak (random) sebaiknya knocking yang dilakukan pada setiap port yang berbeda, digunakan list yang berbeda pula. Selain itu, hal ini dapat menambahkan aspek keamanan tambahan karena knocking harus dilakukan secara urut (sequence).
Implementasi pada RouterOS
Untuk melakukan implementasi, ada beberapa tahap yang harus dilakukan.
1. Membuka Akses Publik
Buka dulu seluruh akses publik yang dibutuhkan, misalkan remote DNS (anda bisa menambahkan rule untuk service lain)
/ip firewall filter add chain=input src-address=192.168.1.0/24 protocol=tcp dst-port=53 in-interface=local action=accept
/ip firewall filter add chain=input src-address=192.168.1.0/24 protocol=udp dst-port=53 in-interface=local action=accept
2. Membuka Koneksi yang Sudah Terbuat (Established, Related)
Rule ini dimaksudkan untuk tetap mengizinkan koneksi yang berhasil dibuat. Jika tidak diizinkan, maka akses anda ke router akan langsung terputus dan anda tidak akan bisa mengaksesnya kembali
/ip firewall filter add chain=input connection-state=established,related action=accept
3. Let's Knock
Misalkan knocking dilakukan sebanyak 3 kali pada port 1234, 6969 dan 2203 kali. Anda harus menambahkan rule sejumlah knocking dengan list berbeda.
/ip firewall filter add chain=input action=add-src-to-address-list protocol=tcp address-list=1portKnocking address-list-timeout=10s dst-port=1234
/ip firewall filter add chain=input action=add-src-to-address-list protocol=tcp src-address-list=1portKnocking address-list=2portKnocking address-list-timeout=10s dst-port=6969
/ip firewall filter add chain=input action=add-src-to-address-list protocol=tcp src-address-list=2portKnocking address-list=let-in address-list-timeout=1m dst-port=2203
4. Don't let their a*ss Touch Your Router
Langkah selanjutnya adalah menolak seluruh akses dengan IP yang tidak ada di dalam list terakhir (let-in).
PERHATIAN
RULE INI AKAN MEMUTUSKAN SELURUH KONEKSI. PASTIKAN RULE PADA POIN 2 SUDAH DIBUAT
5. Akses Router
Untuk dapat mengakses router, anda harus mengakses dahulu port yang sudah dijadikan acuan sebelumnya. Karena protokol yang digunakan adalah TCP, maka anda bisa menggunakan browser dan mengakses alamat IP beserta port secara berurutan. Misalkan anda harus membuka http://192.168.1.1:1234, setelah loading berhenti dilanjutkan http://192.168.1.1:6969 kemudian http://192.168.1.1:2203
Bisa juga menggunakan aplikasi seperti aplikasi ini atau dapat diakses secara langsung melalui browser secara beraturan. Atau anda bisa membuat sendiri knocker menggunakan Windows Batch (membutuhkan akses telnet) dengan cara:
a. Buka aplikasi notepad.exe
b. Masukkan script berikut:
c. Simpan dengan nama misalkan knock.bat (pastikan Save as type: All files)
Sebagai tambahan, langkah ini juga dapat menghindarkan RouterOS dari port scanner. Terutama dari mesin scanner raksasa shodanhq.com
Terima kasih, semoga bermanfaat.
Salam
Reference:
- Discher, S. (2010). Port Knocking for Security. Presentation, MUM United State.
- Anonymous. Mikrotik.ID : Simple Port Knocking. (2018). Retrieved from http://www.mikrotik.co.id/artikel_lihat.php?id=105
Langkah selanjutnya adalah menolak seluruh akses dengan IP yang tidak ada di dalam list terakhir (let-in).
/ip firewall filter add chain=input action=drop src-address-list=!let-in
PERHATIAN
RULE INI AKAN MEMUTUSKAN SELURUH KONEKSI. PASTIKAN RULE PADA POIN 2 SUDAH DIBUAT
5. Akses Router
Untuk dapat mengakses router, anda harus mengakses dahulu port yang sudah dijadikan acuan sebelumnya. Karena protokol yang digunakan adalah TCP, maka anda bisa menggunakan browser dan mengakses alamat IP beserta port secara berurutan. Misalkan anda harus membuka http://192.168.1.1:1234, setelah loading berhenti dilanjutkan http://192.168.1.1:6969 kemudian http://192.168.1.1:2203
Bisa juga menggunakan aplikasi seperti aplikasi ini atau dapat diakses secara langsung melalui browser secara beraturan. Atau anda bisa membuat sendiri knocker menggunakan Windows Batch (membutuhkan akses telnet) dengan cara:
a. Buka aplikasi notepad.exe
b. Masukkan script berikut:
c. Simpan dengan nama misalkan knock.bat (pastikan Save as type: All files)
Sebagai tambahan, langkah ini juga dapat menghindarkan RouterOS dari port scanner. Terutama dari mesin scanner raksasa shodanhq.com
Terima kasih, semoga bermanfaat.
Salam
Reference:
- Discher, S. (2010). Port Knocking for Security. Presentation, MUM United State.
- Anonymous. Mikrotik.ID : Simple Port Knocking. (2018). Retrieved from http://www.mikrotik.co.id/artikel_lihat.php?id=105
Tidak ada komentar:
Posting Komentar
Terima kasih telah berkunjung.