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
- Eksekusi dengan
$ chmod +x protect.sh
./protect.sh
2 comments:
menarik. tapi bagaimana jika ada serangan model dns2tcp? (=
@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