Filter Serangan Bruto Force pada SSTP Server

Tentu, serangan brute force pada SSTP di Mikrotik juga perlu ditangani dengan serius. Meskipun SSTP (Secure Socket Tunneling Protocol) menggunakan SSL/TLS untuk enkripsi dan berjalan di atas TCP port 443 (sama seperti HTTPS), upaya brute force terhadap kredensial login masih mungkin terjadi.

Konsep pemfilteran akan serupa dengan PPTP dan L2TP, yaitu mendeteksi kegagalan login dan memblokir alamat IP sumber yang melakukan percobaan berulang.

Perbedaan Utama dengan PPTP/L2TP:

  • Port dan Protokol: SSTP menggunakan TCP port 443.

  • Deteksi Log: Kita perlu mencari string yang sesuai dalam log Mikrotik yang menandakan upaya login SSTP yang gagal.

Berikut adalah langkah-langkah untuk memfilter brute force SSTP di Mikrotik:

1. Verifikasi Pesan Log Gagal Login SSTP

Langkah ini sangat penting sebelum membuat aturan firewall. Anda perlu mengetahui persis pesan apa yang dicatat Mikrotik saat ada upaya login SSTP yang gagal.

  • Lakukan percobaan login SSTP yang sengaja gagal (misalnya, dengan username atau password yang salah) dari klien Anda.

  • Buka System > Logging di Winbox atau ketik /log print di terminal Mikrotik.

  • Cari pesan yang muncul saat login SSTP gagal. Contoh yang mungkin Anda temukan:

    • sstp,info,debug,account,ppp,info <sstp-client>: authentication failed

    • sstp,debug,ppp,debug <sstp-client>: SSTP: authentication failed for user <username>

    • sstp,info,debug,account,ppp,info <sstp-client>: failed to get secret for user <username>

Pilih bagian string yang paling spesifik dan konsisten. Dalam contoh di bawah, saya akan menggunakan failed to get secret for user sebagai contoh. Anda harus menyesuaikannya dengan pesan log aktual di Mikrotik Anda.

2. Buat Address List untuk Blokir Bertahap

/ip firewall address-list
add name=sstp_blacklist_DROP comment="SSTP Brute Force - Final Block"
add name=sstp_blacklist_stage_3 comment="SSTP Brute Force - Stage 3"
add name=sstp_blacklist_stage_2 comment="SSTP Brute Force - Stage 2"
add name=sstp_blacklist_stage_1 comment="SSTP Brute Force - Stage 1"

3. Tambahkan Firewall Filter Rules

/ip firewall filter
# Rule 1: Drop koneksi dari IP yang sudah masuk blacklist final
add action=drop chain=input comment="SSTP Brute Force DROP - Block all SSTP traffic" \
    disabled=no log=yes log-prefix="Block_SSTP_bruteforce" \
    src-address-list=sstp_blacklist_DROP

# Rule 2: Tambahkan ke stage 3 (sstp_blacklist_DROP) jika sudah di stage 2 dan gagal lagi
add action=add-src-to-address-list address-list=sstp_blacklist_DROP \
    address-list-timeout=10m chain=input comment="SSTP Brute Force - Escalation to DROP" \
    content="failed to get secret for user" disabled=no \
    src-address-list=sstp_blacklist_stage_2 protocol=tcp dst-port=443

# Rule 3: Tambahkan ke stage 2 jika sudah di stage 1 dan gagal lagi
add action=add-src-to-address-list address-list=sstp_blacklist_stage_2 \
    address-list-timeout=5m chain=input comment="SSTP Brute Force - Escalation to Stage 2" \
    content="failed to get secret for user" disabled=no \
    src-address-list=sstp_blacklist_stage_1 protocol=tcp dst-port=443

# Rule 4: Tambahkan ke stage 1 untuk percobaan gagal pertama
add action=add-src-to-address-list address-list=sstp_blacklist_stage_1 \
    address-list-timeout=2m chain=input comment="SSTP Brute Force - Initial Detection (Stage 1)" \
    content="failed to get secret for user" disabled=no \
    protocol=tcp dst-port=443

Penjelasan dan Penyesuaian Penting:

  • content="failed to get secret for user": GANTI ini dengan string yang sesuai dari log Mikrotik Anda. Ini adalah bagian terpenting agar aturan ini berfungsi.

  • protocol=tcp dst-port=443: Menargetkan lalu lintas SSTP yang berjalan di atas TCP port 443.

  • address-list-timeout: Sesuaikan durasi pemblokiran di setiap stage.

    • Stage 1 (deteksi awal): Waktu singkat (misal, 1-2 menit) untuk memberi kesempatan klien yang salah ketik.

    • Stage 2 (eskalasi): Waktu menengah (misal, 5 menit) untuk yang terus mencoba.

    • DROP (final block): Waktu lebih lama (misal, 10-30 menit atau lebih) untuk IP yang jelas-jelas melakukan brute force.

  • Urutan Aturan: Pastikan aturan drop untuk sstp_blacklist_DROP berada di urutan paling atas dari semua aturan SSTP, diikuti oleh aturan eskalasi dari stage 3 ke 2, dan terakhir stage 1.

Cara Mengimplementasikan:

  1. Login ke Mikrotik menggunakan Winbox atau SSH.

  2. Buka IP > Firewall.

  3. Pilih tab Address Lists dan tambahkan address list seperti yang dicontohkan di atas.

  4. Pilih tab Filter Rules dan tambahkan aturan satu per satu dari atas ke bawah.

Langkah-langkah Pencegahan Tambahan untuk SSTP:

  • Kata Sandi yang Kuat: Selalu gunakan username dan password yang kompleks dan unik untuk akun VPN.

  • Gunakan Sertifikat SSL/TLS yang Valid: Pastikan server SSTP Anda menggunakan sertifikat SSL/TLS yang valid dan dipercaya. Ini membantu mencegah serangan man-in-the-middle.

  • Batasi Akses IP ke Server SSTP: Jika Anda hanya mengharapkan koneksi SSTP dari lokasi tertentu, Anda dapat membatasi akses hanya untuk IP tersebut:

    /ip firewall filter
    # Izinkan port SSTP dari IP terpercaya
    add action=accept chain=input protocol=tcp dst-port=443 src-address=YOUR_ALLOWED_IP comment="Allow SSTP from trusted IP"
    
    # Drop koneksi SSTP dari IP lain
    add action=drop chain=input protocol=tcp dst-port=443 comment="Drop SSTP from others"
    

    Pastikan aturan accept berada di atas aturan drop.

  • Perbarui RouterOS Secara Teratur: Pastikan RouterOS Anda selalu diperbarui ke versi stabil terbaru untuk mendapatkan perbaikan keamanan terbaru.

  • Pantau Log Sistem: Secara rutin periksa log sistem Mikrotik Anda untuk mendeteksi pola yang mencurigakan atau upaya login yang tidak sah.

Dengan menerapkan kombinasi aturan firewall ini dan praktik keamanan yang baik, Anda dapat secara efektif melindungi server SSTP Mikrotik Anda dari serangan brute force.

DMCA.com Protection Status
|
Scroll to top
Code Copied!