天天看點

linux下防止ARP攻擊的shell腳本

防止ARP攻擊的shell腳本,使用指令route、grep、ifconfig等,需要的朋友可以參考下就不廢話了,直接上代碼了。

#!/bin/bash
declare gw=`route -n | grep -e '^0.0.0.0'`
declare gwname=`echo $gw | grep -oe '\w*$'`
declare gwip=`echo $gw | grep -oe '[0-9]\{2,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}'`
declare gwmac=`arp -n | grep -e $gwip | grep -oe '[0-9A-F]\{2\}:[0-9A-F]\{2\}:[0-9A-F]\{2\}:[0-9A-
F]\{2\}:[0-9A-F]\{2\}:[0-9A-F]\{2\}'`
echo "switch $gwname arp: $gwip - $gwmac to static"
arp -s $gwip $gwmac
echo "done, off arp reuqest .."
ifconfig $gwname -arp
echo "all done."
           

Windows下的使用者可以使用antiArp防火牆,基本上能解決問題,可是喜歡linux的兄弟姐妹們怎麼辦呢,我今天就遇到這個檔子煩心事。

我用的是fedora core 6,我先把幾個鏡像檔案挂上,用關鍵字arp一搜,就搜到了arptables,和arpwatcher 首先是arpwatcher了,它好像隻能監控本機ip/arp位址的改變之類的,好像不能防止arp攻擊。 再一看arptables,立馬想到了iptables,裝上一看,果然,指令行都一模一樣。 可是問題來了,保持本機不受arp攻擊很簡單(用靜态arp綁定就可以了),但是人家網關也還是要受到攻擊, 俺們又不是網絡管理者,網關我隻能 “遠觀而不能亵玩“!

此路不通,俺們改道,arping這個東西映入我的眼簾,回到shell,發現已經安裝拉:

“arping - send ARP REQUEST to a neighbour host“arping [ -AbDfhqUV] [ -c count] [ -w deadline] [ -s source] -I interface destination-U Unsolicited ARP mode to update neighbours’ ARP caches. No replies are expected.

關鍵指令:

arping -U -I 發送包的網卡接口 -s 源ip 目的ip

執行個體:
假設你的eth0接口對應的ip為192.168.1.1,網關為192.168.1.255你就可以使用
arping -U -I eth0 -s 192.168.1.1 192.168.1.255

好了,今天和大家的分享就到這裡吧。