windows下放 arp***可以用金山 ARP防火墙,把网关ip和M AC填上,然后选项里把安全模式的钩勾上就基本没什么问题。Linux没找到这么现成的东西,b aidu google上找了一些方法,都自己试过一遍,不是非常管用。 进行 arp***要做两件事情: 1、欺骗目标机器,***机器 A告诉目标机器B:我是网关! 2、欺骗网关,***机器 A告诉网关:我是B! 也就是 A进行双向欺骗。 这样做以后目标机器B发给网关的数据包都让***机器 A给没收了,没有发给网关,所以B就上不了网了。要让B能上网, A需要将从B收到的包转发给网关。(有时候开P2P终结这之类的软件的时候发现别人上不了网了,有时候是因为自己有一个NB的防火墙,有时侯是其他原因,从被控制的机器上发过来的包没有能转发给网关,所以。。。) 我在网上找了一些关于Linux怎么防 arp***的文章,基本上有这么几种做法。 1、绑定IP-M AC。通过 arp -s 或者 arp -f。我就咬定哪个是网关了,你们谁说的话我都不信! 但是有个缺点,必须双向绑定IP-M AC,如果你无法控制路由器,不能在网关那里设置静态IP,这个方法就无效了。 2、既然控制不了网关,我只能告诉网关哪个才是真正的我了。向网关发送自己的IP和M AC。也就是告诉网关:我才是XXX。 (1)用 arping,或者 arpspoof( arpsniffer)。 命令: arping -U -I 网卡接口 -s 源IP 目标IP 由于命令里面没有指定网关的M AC,所以形同虚设,效果不好。 (2)用 arpoison或者 ARPSender,可以指定M AC,效果算是比较好,但有时候还是不行。 命令: arpoison -i 网卡接口 -d 网关IP -s 我的IP -t 网关M AC -r 我的M AC 参考了这篇文章:http://hi.b aidu.com/yk103/blog/item/f39e253f9d6 aeeed55e72361.html 我用Wiresh ark看了一下,发现虽然我指定了目标的M AC,但是我的机器依然会间歇性地往***机器发送我的IP和M AC,然后***机器利用我的M AC进行双向欺骗。 所以我想,有没有什么办法不让除了网关之外的其他人知道我的M AC呢?后来就找到了一下这篇文章。 文章地址:http://www.k anwi.cn/re ad-348.html 文章内容:(因为原文地址访问非常慢所以在这里贴出来) Linux/FreeBSD防止 ARP欺骗的一种 被动方法(隐藏M AC) 作者: Knight 日期: 2008-11-17 14:15 文章作者:Helvin 信息来源:邪恶八进制信息安全团队(www.eviloct al.com) 首先对国内某些IDC不负责任的行为表示抗议 一般欺骗机器通过 ARP Request获得网关的M AC,然后同样方法获得你服务器的M AC进行双向欺骗,然后sniffer密码,挂马之类。 国内几乎所有的IDC都是几百服务器公用一个网关的。然后上百个服务器总有几个有漏洞的,然后你就被 ARP欺骗挂马或者抓密码了 下面介绍的是Linux 利用 arpt ables来防止 ARP Request获得你的M AC。这样***者会认为你的服务器是不存在的(本来很复杂的,需要p atch编译内核什么的,上周才发现还有一个 arpt ables,免编译内核,现在把方法写一下) Debi an/Ubuntu:(run as sudo)CentOS/RH AS 叫 arpt ables_jf 引用: apt-get inst all arpt ables arpt ables - A INPUT --src-m ac ! 网关M AC -j DROP arpt ables - A INPUT -s ! 网关IP -j DROP 如果你有本网的内网机器要互联,可以 引用: arpt ables -I INPUT --src-m ac 你的其他服务器M AC ACCEPT 如果你的M AC已经被欺骗机器拿到,那只能ifconfig ethx hw ether M AC来修改了 有一定的危险性,请酌情测试,你也可以疯狂刷新网关+本机 ARP绑定,看具体需要 还要注意这个时候不要发出 ARP Request到除网关以外的其他IP,其后果可能是被其他机器拿到M AC 补充一个FreeBSD下的隐藏M AC的方法 首先sysctl net.link.ether.ipfw=1开启IPFW ether层过滤功能(网桥模式要使用sysctl net.link.ether.bridge_ipfw=1) 然后 ipfw add 00005 allow ip from any to any M AC 网关M AC any /* 打开你到网关的通信 */ ipfw add 00006 allow ip from any to any M AC any 网关M AC /* 打开网关到你的通信 */ /* ........中间你可以添加本网段内需要互联的IP地址M AC双向通信........ */ ipfw add 00010 deny ip from any to any M AC any any /* 关闭所有其他M AC的任何响应 */ 如果服务器作为内网网关使用,可以在内网网卡界面 ifconfig em1 - arp /* 关闭 ARP响应(假设em0是内网网卡) */ arp -f /etc/ arp.list /* 设置静态 ARP表 */ 以下是 ARP(8) 关于 arp.list格式的描述, C ause the file filen ame to be re ad and multiple entries to be set in the ARP t ables. Entries in the file should be of the form hostn ame ether_ addr [temp] [pub] with argument me anings as given above. Le ading whitesp ace and empty lines are ignored. A `#' ch ar acter will m ark the rest of the line as a comment. 我觉得可以把 绑定IP-M AC + arposion + M AC隐藏的方法综合起来 转自 http://hi.b aidu.com/ aj_shu aikun/blog/item/ ab39b3d982 a59fe038012fd0.html