|
|
ARPWATCH监听广播域内的ARP通信,记录每台设备的IP与MAC的对应关系,当发生变化时,发邮件通知。# E V/ S; W' }2 H4 M, y
ARP攻击的常见迹象就是发现网关的MAC地址变生变化。9 v$ {1 d# N: V1 {3 y# E
当然,ARPWATCH不是万能的。因为一般情况下,你的安装arpwatch的服务器不可能总是能接收到整个网络的arp事件。想要完全监听,不得不在交换上做端口镜象。
& I4 M t: y* K- S! H另外,对路由器的攻击,因为攻击包是发给路由器的,假如在适当的位置没有端口镜象的支持,也是收不到任何信息的,所以也发现不了攻击。
" ^* a2 n0 R# f2 Z; }. n####################
3 N2 y$ V4 W- y e1 F7 v! Z' {# ARP攻击监控、处理
( x5 y3 q9 B# r% N$ L####################$ D) t+ c4 `' P" [2 L! G8 d7 a
#系统环境:CentOS 5.2
7 [* X- O' N* x) e#
5 C4 q, d# l" K8 h# 安装 ARPWACTH
* c8 d, Y8 W' r6 xyum -y install arpwatch
: d( [0 @; ^6 S$ f. M# 设备成自动启动
8 E2 }+ G1 ?8 N" F/ ychkconfig arpwatch on
" h, B5 x# O/ k7 d: k, g" `: T7 a# 启动arpwatch服务) D' m+ k: g- n
serivce arpwatch start 、/etc/init.d/arpwatch start" E% e. g- S2 x# p& _6 f) d$ M
# 设置arpwatch
$ @& F3 i1 z3 o7 f+ Wvi /etc/sysconfig/arpwatch
0 V: S% c, E- B# -u : defines with what user id arpwatch should run
" O1 f: }6 C8 l1 h# -e : the where to send the reports
" o2 N; ]& N7 K [3 T# -s : the -address# V5 B6 T( I6 |
OPTIONS=”-u pcap -e -s ‘root (Arpwatch)’” H1 u! w O: [9 j8 t4 z
使用arping查询得到mac地址
; ]$ K* d+ q( Y: @/ [# 遍历VLAN内的MAC地址5 s- b8 m- M4 z% F
#!/bin/bash
~0 H9 n" S: e8 k3 J# k9 G9 Tfor i in `seq 254` ; do; l# k/ z% p9 r. c
arping -c2 210.51.44.$i | awk ‘/Unicast reply from/{print $4,$5}’ | sed ’s/\[//' | sed 's/\]//’
2 ~) T: o( ^) j3 _! Y- G. Zdone
* b& @( Q$ f3 j; B/ j7 A报警样例:- ?, v, D7 V. s" v Y) I
hostname: 4 p- Y) G+ k1 {
ip address: 210.51.44.11 J6 Z. y; W* U, E1 E
ethernet address: 0:0:24:5b:bb:ac
" L9 b* k2 y. O. q- Methernet vendor: CONNECT AS
# K) S1 x3 v( s/ ]) g. v9 Q& m! ?% \; Gold ethernet address: 0:b:bf:29:d0:56( i$ z6 L% x; n k h) |# m* f% l
old ethernet vendor: Cisco Systems1 J: x0 L& B: _& {5 V. p
timestamp: Sunday, December 7, 2008 14:46:34 +08001 D: G6 ^& f! K; A4 H
previous timestamp: Sunday, December 7, 2008 14:46:34 +0800
- p) A! A- A9 e* _! e4 q/ tdelta: 0 seconds) Q9 \3 {- q! {; V/ B
其中,知道网关正确的MAC是0:b:bf:29:d0:56,所以0:0:24:5b:bb:ac就是攻击者的MAC地址(有一点需要注意,MAC地址也是可以改变的)。使用arping遍历同网段的IP,得到MAC列表,再grep出这个MAC的IP地址即可。可以把这个MAC地址表保存起来,下次使用。当然,要保证这个文件是正确的,所以还是需要保持更新。 |
|