RSS

Mencegah ARP Spoofing dengan Arptables

ARP Spoofing merupakan aktifitas yang tidak langka lagi di dalam jaringan. Banyak sekali tool yang menyediakan arp spoofing, terlebih semakin mudahnya saat ini untuk mendapatkan tool ini. Tetapi banyak sekali pengguna aplikasi menyalahgunakan untuk kepentingan pribadi. Setelah posting terakhir mengenai Deteksi ARP Spoofing dengan Xarp, kali ini saya akan berbagi bagaimana cara mengantisipasi untuk terhindar dari serangan ARP Spoofing.

Arptables merupakan sebuah tool untuk mengatur dan memelihara tabel aturan ARP di kernel Linux. Aturan-aturan ini memeriksa frame ARP yang terlihat. aturan yang bisa digunakan sendiri yaitu DROP, ACCEPT, CONTINUE, RETURN. Dan dengan aturan inilah arptables bisa dimanfaatkan sebagai DROP paket ARP yang tidak perlu.

Langkah instalasi
Sebelum melakukan instalasi, terlebih pastikan list repository telah terupdate yang bisa dilihat disini untuk update repository.
Setelah list repository terupdate jalankan perintah berikut :
$ sudo apt-get install arptables

Penggunaan
Dalam penggunaan, ada beberapa tahap yang harus di eksekusi, diantaranya :
$ sudo arptables -P INPUT DROP
$ sudo arptables -P OUTPUT DROP
$ sudo arptables -A INPUT -s (IP address gateway) --source-mac (MAC Address gateway) -j ACCEPT
$ sudo arptables -P OUTPUT -d (IP address gateway) --destination-mac (MAC Address gateway) -j ACCEPT

Bash Script
Cara lain untuk mengeksekusi arptables yaitu dengan membuat script, yang nantinya bisa kita eksekusi satu kali. Berikut scriptnya, silahkan copy
#!/bin/bash

###############

##
#         Name: ARP protected
#  Description: This Shell can protected your network from ARP Spoofing
#      Version: Beta 0.1
#      License: copyleft
#
#    Requires
#    - arptables
#
#    Must be root privilege
##

device=`ip route list | grep default | awk '{ print $5 }'`
macAddr=`ip addr show dev $device | awk '/ether/{print $2}'`
gwAddr=`ip route list | grep default | awk '{ print $3 }'`
macGw=`sudo arping -I $device -f $gwAddr | grep "Unicast" | cut -d" " -f5 | cut -d"[" -f2 | cut -d"]" -f1`
ipAddr=`ifconfig $device | grep "inet addr:" | cut -d ":" -f2 | cut -d " " -f1`
mask=`ifconfig $device | grep "Mask:" | cut -d ":" -f4`

antiarp(){
    `sudo arptables -P INPUT DROP`
    `sudo arptables -P OUTPUT DROP`
    `sudo arptables -A INPUT -s $gwAddr --source-mac $macGw -j ACCEPT`
    `sudo arptables -A OUTPUT -d $gwAddr --destination-mac $macGw -j ACCEPT`
    `sudo arp -s $gwAddr $macGw`
}

clear
antiarp
echo "==================================================="
echo "                                                 "
echo "                Created By Ncipt                 "
echo "                                                 "
echo "==================================================="
echo
echo "         Device      : $device         "
echo "         IP Address  : $ipAddr         "
echo "         Subnet Mask : $mask           "
echo "         MAC Address : $macAddr        "
echo "         Gateway     : $gwAddr         "
echo "         Mac Gateway : $macGw          "
echo
echo "   ======= Network protected from ARP ========"
echo
  • Simpan dengan nama protect.sh
  • Beri hak eksekusi dengan 
  • $ chmod +x protect.sh
  • Eksekusi dengan
  • ./protect.sh

2 comments:

doubledragon mengatakan... [Reply to comment]

menarik. tapi bagaimana jika ada serangan model dns2tcp? (=

Andhika Cipta mengatakan... [Reply to comment]

@doubledragon
Wow, nice question...serangan semacam dns tunneling mungkin bisa kita akalin dengan secure bind, n kayaknya tipe serangan semacam ini masih jarang dibahas penanganannya karena model serangan semacam ini jarang ditemui meski masih ada. Yuk silahkan yang mau ngebahas mengenai penanganan tipe serangan dns2tcp dshare...n koreksi juga opini saya ya :D

Posting Komentar