Pencegahan Man-in-the-Middle (MitM) - MikroTik

📌 Tujuan Praktikum

Setelah mengikuti praktikum ini, Anda diharapkan mampu:

  • Memahami apa itu serangan Man-in-the-Middle (MitM) dan cara kerjanya
  • Memahami jenis-jenis serangan MitM (ARP Spoofing, DNS Spoofing, SSL Stripping, dll)
  • Memahami dampak serangan MitM pada keamanan jaringan
  • Mengkonfigurasi MikroTik RouterOS untuk mencegah serangan MitM
  • Menerapkan ARP Protection, DHCP Snooping, dan Port Security
1. Apa Itu Man-in-the-Middle (MitM)? Penting

Man-in-the-Middle (MitM) adalah serangan siber di mana penyerang menyusup ke dalam komunikasi antara dua pihak (client dan server) tanpa sepengetahuan mereka. Penyerang dapat mendengar, mengubah, atau memalsukan data yang dikirimkan.

Analogi Sederhana:

MitM seperti "penyadap telepon" yang menyelinap ke dalam sambungan telepon Anda. Anda dan teman Anda berbicara, tetapi penyadap mendengar semua yang Anda katakan dan bisa mengubah pesan sebelum sampai ke tujuan.

👤 Client
⟷
🕵️ Penyerang (MitM)
⟷
🖥️ Server

Penyerang berada di antara client dan server, menyadap dan mengubah komunikasi

🔑 Tujuan Serangan MitM

  • Pencurian Data: Mencuri username, password, data kartu kredit
  • Modifikasi Data: Mengubah data yang dikirimkan
  • Impersonasi: Menyamar sebagai pihak yang sah
  • Session Hijacking: Mengambil alih sesi pengguna
  • Manipulasi Transaksi: Mengubah transaksi keuangan
⚠️ Penting:

Serangan MitM adalah salah satu serangan yang paling berbahaya karena sulit dideteksi oleh pengguna. Korban tidak menyadari bahwa komunikasi mereka disadap atau dimanipulasi.

2. Jenis-jenis Serangan MitM Metode

Berikut adalah jenis-jenis serangan Man-in-the-Middle yang paling umum:

Active MitM
Penyerang aktif mengubah data dan menyuntikkan paket.
Contoh: ARP Spoofing, DNS Spoofing
Passive MitM
Penyerang hanya mendengarkan dan mencatat komunikasi.
Contoh: Sniffing, Eavesdropping
ARP Spoofing
Memalsukan ARP untuk menjadi gateway palsu.
Tool: arpspoof, ettercap
DNS Spoofing
Memalsukan DNS untuk mengarahkan ke situs palsu.
Tool: dnsspoof, ettercap
SSL Stripping
Menurunkan HTTPS menjadi HTTP untuk menyadap.
Tool: sslstrip, bettercap
💡 Tool MitM Populer:
  • Ettercap — Tool MitM lengkap (ARP spoofing, DNS spoofing, sniffing)
  • Bettercap — Tool MitM modern dengan banyak fitur
  • Wireshark — Packet analyzer untuk sniffing
  • sslstrip — SSL stripping attack tool
3. Dampak Serangan MitM Berbahaya
☠️ Dampak Serangan MitM pada Jaringan:
  • Pencurian Kredensial: Username dan password dicuri
  • Pencurian Data Keuangan: Informasi kartu kredit dan transaksi
  • Manipulasi Data: Data diubah sebelum sampai ke tujuan
  • Identitas Palsu: Penyerang menyamar sebagai pengguna sah
  • Kerugian Finansial: Transaksi ilegal atau penipuan
  • Reputasi Rusak: Kepercayaan pengguna menurun
📊 Statistik Serangan MitM:
  • 45% serangan siber melibatkan teknik MitM
  • 2023 terjadi peningkatan 60% serangan MitM
  • Rata-rata kerugian akibat MitM $100.000 - $1 juta
  • ARP Spoofing adalah metode MitM paling umum (70%)
4. Metode Pencegahan MitM Strategi

Berikut adalah metode yang dapat digunakan untuk mencegah serangan Man-in-the-Middle:

🔑 Metode Pencegahan

1. ARP Protection / ARP Binding
  • Buat ARP binding static untuk mencegah ARP spoofing
  • Gunakan /ip arp untuk binding IP-MAC
2. DHCP Snooping
  • Mencegah DHCP spoofing dan rogue DHCP server
  • Hanya izinkan DHCP dari interface yang terpercaya
3. Port Security
  • Batasi MAC address per port pada switch
  • Gunakan /interface bridge untuk MAC filtering
4. HTTPS / SSL/TLS
  • Gunakan HTTPS untuk semua komunikasi web
  • Aktifkan HSTS (HTTP Strict Transport Security)
5. VPN / IPSec
  • Gunakan VPN untuk mengamankan komunikasi
  • IPSec menyediakan autentikasi dan enkripsi
6. Monitoring & Logging
  • Aktifkan logging untuk aktivitas mencurigakan
  • Monitor ARP table dan DHCP server
5. Konfigurasi Dasar MikroTik Step 1

Sebelum menerapkan pencegahan MitM, pastikan konfigurasi dasar MikroTik sudah benar.

📝 Langkah-langkah

1. Setting IP Address:

/ip address add address=192.168.10.1/24 interface=ether1

2. Setting Gateway:

/ip route add gateway=192.168.1.1

3. Setting DNS:

/ip dns set servers=8.8.8.8,1.1.1.1 allow-remote-requests=yes
✅ Konfigurasi dasar selesai!
6. ARP Protection (ARP Binding) Step 2

ARP Binding adalah metode untuk mencegah ARP Spoofing dengan membuat entri statis yang memetakan IP Address ke MAC Address.

📝 6.1 Buat ARP Binding Static

/ip arp add address=192.168.10.20 mac-address=00:11:22:33:44:55 interface=ether1 comment="PC1"
/ip arp add address=192.168.10.30 mac-address=00:11:22:33:44:56 interface=ether1 comment="PC2"
/ip arp add address=192.168.10.100 mac-address=00:11:22:33:44:57 interface=ether1 comment="Server"
📖 Penjelasan:
  • address → IP Address perangkat
  • mac-address → MAC Address perangkat
  • interface → Interface tempat perangkat terhubung
  • comment → Keterangan perangkat

📝 6.2 Aktifkan ARP Mode

/interface ethernet set ether1 arp=reply-only
💡 Catatan: Mode reply-only membuat interface hanya merespons ARP request dari IP yang sudah terdaftar di ARP table. IP yang tidak terdaftar akan diabaikan.

📝 6.3 Lihat ARP Table

/ip arp print
✅ ARP Protection berhasil dikonfigurasi!
7. DHCP Snooping Step 3

DHCP Snooping mencegah serangan DHCP Spoofing dengan hanya mempercayai DHCP server dari interface yang terpercaya.

📝 7.1 Setting DHCP Server

/ip dhcp-server add name=dhcp1 interface=ether1 address-pool=dhcp_pool disabled=no
/ip pool add name=dhcp_pool ranges=192.168.10.50-192.168.10.100

📝 7.2 DHCP Snooping di Switch

/interface bridge set bridge1 dhcp-snooping=yes
/interface bridge port set [find interface=ether2] trusted=yes
/interface bridge port set [find interface=ether3] trusted=no
📖 Penjelasan:
  • dhcp-snooping=yes → Mengaktifkan DHCP Snooping
  • trusted=yes → Interface yang terpercaya (ke router)
  • trusted=no → Interface tidak terpercaya (ke client)
✅ DHCP Snooping berhasil dikonfigurasi!
8. Port Security (MAC Filtering) Step 4

Port Security membatasi perangkat yang dapat terhubung ke port tertentu berdasarkan MAC Address.

📝 8.1 MAC Filtering di Bridge

/interface bridge filter add chain=input mac-address=00:11:22:33:44:55 action=accept comment="Allow PC1"
/interface bridge filter add chain=input action=drop comment="Drop all others"

📝 8.2 MAC Filtering per Port

/interface ethernet switch port set ether2 learn=no
/interface ethernet switch host add mac-address=00:11:22:33:44:55 ports=ether2 vlan-id=1
💡 Catatan: MAC Filtering sangat efektif untuk mencegah perangkat tidak dikenal terhubung ke jaringan. Namun, perlu perawatan rutin saat ada perangkat baru.
✅ Port Security berhasil dikonfigurasi!
9. Firewall untuk MitM Prevention Step 5

Firewall rules tambahan untuk mendeteksi dan mencegah serangan MitM.

📝 9.1 Deteksi ARP Spoofing

/ip firewall filter add chain=input protocol=arp action=add-src-to-address-list address-list=arp_suspect address-list-timeout=5m comment="ARP Spoofing Detection"

📝 9.2 Blokir ARP Spoofing

/ip firewall filter add chain=input src-address-list=arp_suspect action=drop comment="Blokir ARP Spoofing"

📝 9.3 Deteksi DNS Spoofing

/ip firewall filter add chain=input protocol=udp dst-port=53 action=add-src-to-address-list address-list=dns_suspect address-list-timeout=5m comment="DNS Spoofing Detection"

📝 9.4 Blokir DNS Spoofing

/ip firewall filter add chain=input src-address-list=dns_suspect action=drop comment="Blokir DNS Spoofing"
✅ Firewall MitM Prevention berhasil dikonfigurasi!
10. Konfigurasi Lengkap Final

Berikut adalah konfigurasi lengkap untuk pencegahan Man-in-the-Middle pada MikroTik.

📝 Script Lengkap

# ============================================
# KONFIGURASI PENCEGAHAN MAN-IN-THE-MIDDLE
# MIKROTIK ROUTEROS
# ============================================

# 1. ARP BINDING (STATIC ARP)
/ip arp add address=192.168.10.20 mac-address=00:11:22:33:44:55 interface=ether1 comment="PC1"
/ip arp add address=192.168.10.30 mac-address=00:11:22:33:44:56 interface=ether1 comment="PC2"
/ip arp add address=192.168.10.100 mac-address=00:11:22:33:44:57 interface=ether1 comment="Server"

# 2. ARP MODE REPLY-ONLY
/interface ethernet set ether1 arp=reply-only

# 3. DHCP SNOOPING
/interface bridge set bridge1 dhcp-snooping=yes
/interface bridge port set [find interface=ether2] trusted=yes
/interface bridge port set [find interface=ether3] trusted=no

# 4. MAC FILTERING (BRIDGE)
/interface bridge filter add chain=input mac-address=00:11:22:33:44:55 action=accept comment="Allow PC1"
/interface bridge filter add chain=input mac-address=00:11:22:33:44:56 action=accept comment="Allow PC2"
/interface bridge filter add chain=input mac-address=00:11:22:33:44:57 action=accept comment="Allow Server"
/interface bridge filter add chain=input action=drop comment="Drop all others"

# 5. ARP SPOOFING DETECTION
/ip firewall filter add chain=input protocol=arp action=add-src-to-address-list address-list=arp_suspect address-list-timeout=5m comment="ARP Spoofing Detection"
/ip firewall filter add chain=input src-address-list=arp_suspect action=drop comment="Blokir ARP Spoofing"

# 6. DNS SPOOFING DETECTION
/ip firewall filter add chain=input protocol=udp dst-port=53 action=add-src-to-address-list address-list=dns_suspect address-list-timeout=5m comment="DNS Spoofing Detection"
/ip firewall filter add chain=input src-address-list=dns_suspect action=drop comment="Blokir DNS Spoofing"

# 7. LOGGING (OPSIONAL)
/ip firewall filter add chain=input src-address-list=arp_suspect action=log log-prefix="ARP_SPOOF:" comment="Log ARP Spoofing"
/ip firewall filter add chain=input src-address-list=dns_suspect action=log log-prefix="DNS_SPOOF:" comment="Log DNS Spoofing"
💡 Catatan: Sesuaikan IP Address, MAC Address, dan interface dengan konfigurasi jaringan Anda.
✅ Konfigurasi lengkap selesai!

MikroTik Anda sekarang dilindungi dari serangan Man-in-the-Middle (ARP Spoofing, DNS Spoofing).

11. Pengujian Step 6

Lakukan pengujian untuk memastikan konfigurasi berjalan dengan baik.

11.1 Cek ARP Table

/ip arp print

11.2 Cek Interface ARP Mode

/interface ethernet print

11.3 Cek Firewall Rules

/ip firewall filter print

11.4 Simulasi ARP Spoofing (Testing)

📝 Uji coba dengan arpspoof (dari client lain):

# ARP Spoofing (di client Linux)
arpspoof -i eth0 -t 192.168.10.20 192.168.10.1
arpspoof -i eth0 -t 192.168.10.1 192.168.10.20

Jika konfigurasi berhasil, ARP spoofing akan terdeteksi dan ditolak.

⚠️ Peringatan:

Pengujian MitM hanya boleh dilakukan di lingkungan lab dengan izin. Jangan melakukan serangan MitM pada jaringan produksi atau jaringan orang lain.

✅ Pengujian selesai!

Konfigurasi pencegahan Man-in-the-Middle berfungsi dengan baik.

12. Kesimpulan Selesai

Dalam praktikum ini, Anda telah berhasil melakukan:

Best Practice Keamanan MitM:
  • ARP Binding: Gunakan ARP static untuk semua perangkat penting
  • HTTPS: Selalu gunakan HTTPS untuk semua layanan web
  • HSTS: Aktifkan HSTS untuk memaksa browser menggunakan HTTPS
  • VPN: Gunakan VPN untuk komunikasi sensitif
  • Monitoring: Pantau ARP table secara rutin
  • Update: Selalu update RouterOS dan perangkat lain
  • Edukasi: Edukasi pengguna tentang risiko MitM