计算机网络实验三 ARP原理与ARP欺骗 实验报告

实验三 ARP原理与ARP欺骗

【实验名称】

ARP原理与ARP欺骗

【实验目的】

1、熟悉Linux中telnet服务及telnet命令的用法;
*2、熟悉Linux中arpspoof工具的用法;
3、在发送方是主机、接收方是本网络上的另一个主机;发送方是主机、接收方是另一个网络上的主机;发送方是路由器、接收方是本网络上的一个主机;发送方是路由器、接收方是另一个网络上的主机等四种典型情况下,观察ARP高速缓存表的变化,观察Wireshark截获的ARP数据包,分析ARP协议的工作过程以及ARP协议的工作原理;

【实验要求】

1、根据实验需要,搭建实验环境;建立或修改虚拟实验网络;
2、按照实验步骤,认真完成实验;采取截图、拍照等形式记录实验结果;
3、依据课本和课堂讲解,详细分析实验结果、验证理论知识;
4、认真完成实验报告,按时提交实验指导老师。

【实验环境】

1、操作系统:Linux操作系统,要求内核支持Tun模块、Vlan模块等,本实验在CentOS7操作系统中测试通过;
2、操作权限:部分操作需具有root权限;
3、应用软件:需安装命令行工具:tunctl、vconfig等;需安装服务程序telnet-server等;需安装客户程序telnet等;需安装工具软件tuxcut及其依赖软件;需安装编辑工具gedit或其它文本编辑工具;需安装网络分析软件Wireshark及其依赖软件;其它常用必备的应用软件;
4、实验网络拓扑:ARP原理与ARP欺骗实验网络拓扑如图1所示:
利用Linux命令或编辑执行脚本,构建虚拟实验网络如图2所示:

5、参考脚本:构建如图所示虚拟实验网络,可参考如下脚本:

#!/bin/sh
set -x
#开启ip分组转发
sysctl -w net.ipv4.ip_forward=1

#创建br53及其相连的NS
#创建Bridge
brctl addbr br53
#创建namespace
ip netns add ns531
ip netns add ns532
ip netns add ns53gw
ip netns add ns53m
#将各namespace中的lo接口上线
ip netns exec ns531 ip link set lo up
ip netns exec ns532 ip link set lo up
ip netns exec ns53gw ip link set lo up
ip netns exec ns53m ip link set lo up
#创建veth pair
ip link add tap531 type veth peer name tap531_p
ip link add tap532 type veth peer name tap532_p
ip link add tap53gw type veth peer name tap53gw_p
ip link add tap53m type veth peer name tap53m_p
#把tap迁移到namespace
ip link set tap531 netns ns531
ip link set tap532 netns ns532
ip link set tap53gw netns ns53gw
ip link set tap53m netns ns53m
#把相应tap添加到Bridge中
brctl addif br53 tap531_p
brctl addif br53 tap532_p
brctl addif br53 tap53gw_p
brctl addif br53 tap53m_p
#配置相应tap的IP地址
ip netns exec ns531 ip addr add local 192.168.53.1/24 dev tap531
ip netns exec ns532 ip addr add local 192.168.53.2/24 dev tap532
ip netns exec ns53gw ip addr add local 192.168.53.254/24 dev tap53gw
ip netns exec ns53m ip addr add local 192.168.53.250/24 dev tap53m
#根据需要将Bridge及相关tap状态设置为up
ip link set br53 up
ip link set tap531_p up
ip link set tap532_p up
ip link set tap53gw_p up
ip netns exec ns531 ip link set tap531 up
ip netns exec ns532 ip link set tap532 up
ip netns exec ns53gw ip link set tap53gw up
#攻击者53m暂时不上线,需要时手动上线
ip link set tap53m_p up
ip netns exec ns53m ip link set tap53m up
#为br53所连各NS配置默认网关
ip netns exec ns531 route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.53.254
ip netns exec ns532 route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.53.254
ip netns exec ns53m route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.53.254

#创建br54及其相连的NS
#创建Bridge
brctl addbr br54
#创建namespace
ip netns add ns541
ip netns add ns54gw
#将各namespace中的lo接口上线
ip netns exec ns541 ip link set lo up
ip netns exec ns54gw ip link set lo up
#创建veth pair
ip link add tap541 type veth peer name tap541_p
ip link add tap54gw type veth peer name tap54gw_p
#把tap迁移到namespace
ip link set tap541 netns ns541
ip link set tap54gw netns ns54gw
#把相应tap添加到Bridge中
brctl addif br54 tap541_p
brctl addif br54 tap54gw_p
#配置相应tap的IP地址
ip netns exec ns541 ip addr add local 192.168.54.1/24 dev tap541
ip netns exec ns54gw ip addr add local 192.168.54.254/24 dev tap54gw
#根据需要将Bridge及相关tap状态设置为up
ip link set br54 up
ip link set tap541_p up
ip link set tap54gw_p up
ip netns exec ns541 ip link set tap541 up
ip netns exec ns54gw ip link set tap54gw up
#为br54所连各NS配置默认网关
ip netns exec ns541 route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.54.254</

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Dhcp两大威胁以及arp欺骗等试验总结 1 伪dhcp server。Dhcp的工作原理大概是首先client广播dhcp discovery消息,本网段的dhcp server回送dhcp offer消息,客户段再发送dhcp request消息,声明自己即将使用的ip地址,server发送ack给client告知client可以使用。防止伪dhcp其实就可以在交换机上启用dhcp snooping功能,凡是不信任的端口(信任端口就是dhcp server使用的端口,需独立配置),都将拒绝从该端口发送dhcp offer消息从而杜绝伪dhcp server。 在cisco交换机上全局启用 ip dhcp snooping,,并使用命令ip dhcp snooping vlan 2,告知在vlan2里使用snooping,这样所有端口都是非信任端口,都将丢弃dhcp offer报文,如果是使用三层交换机提供dhcp服务,就不比单独配置信任端口了。配置信任端口是在物理端口下使用命令 ip dhcp snooping trust. 记住:接入层交换机需支持dhcp snooping功能;信任端口是在物理端口下配置(包括trunk级联端口) 2 DHCP dos攻击。主要就是伪造大量mac地址去像server申请地址,耗费dhcp server地址池,从个人达到拒绝服务攻击的目的。一般用两种方法,但实际操作性都不是太强。第一种办法就是对交换机端口规定一些合法的mac地址池,只有在此范围内的主机才可以通过该端口进行转发。或者限制最大mac地址数。这样客户端就没办法伪造mac地址去申请ip了。Cisco交换机就是在物理端口下使用switchport port-security mac-add命令填加,这种方法工作量大且不能满足移动性的要求。另一种方法就是与实际认证系统相结合,认证系统首先对MAC地址进行第一次认证,只有MAC地址是合法的,才允许DHCP Sever分配IP地址给终端,这主要用到802.1x认证协议和radius认证服务器。 3 有时候为了需要,不希望用户自己设定ip地址来上网,也就是说限制用户只能动态获取地址才能上网,自己固定地址不能上网。这种就相对比较简单,不需要在接入层上做什么设置,也就是不要求接入层支持dhcp snooping功能。只需要在三层交换机上使用如下命令就搞定。 Ip arp inspection vlan 500 //vlan500下面启用arp inspection功能 Ip arp inspection validate src-mac dst-mac ip //只有源mac 目的mac和ip都正确才合法 这里必须还是先在三层交换机上启用ip dhcp snooping功能 同时监控snooping vlan 500。因为arp inspection实际是根据dhcp 绑定信息来判断的。如果用户不是自动获取ip,而是自己设置ip,那么它就不会被dhcp snooping捕获到,当然所有的该ip地址发送的arp请求都会被网关拒绝掉的(因为源,目的mac和ip地址都是不合法的,自然被认为是非法的arp请求)。但是固定ip时是可以跟本局域网内其它机器通信的,只是不能通过arp协议学习到网关的mac地址。 注:以上的dhcp server都是在三层交换机上启用的。 4 arp欺骗。可以分两种情况:一是伪造网关去欺骗网内其它主机;而是伪造其它主机去 欺骗网关。当然更严重的是两种情况同时存在,并开始数据转发功能,这就是一种间 人攻击(双方欺骗),可以嗅探数据包(代理arp功能跟此类似,很多计费网关和一些透明防火墙就利用了代理arp功能)。从某种意义上说,arp欺骗就是一种代理arp。 神码可提供专门的在接入层交换机使用ACL来限制客户仿冒网关,这个acl就是限制该端口下不允许发送网关地址的arp通告报文,这样可以有效的防止伪造网关去欺骗其它主机。 (Config)# access-list 1101 deny an an untagged-eth2 12 2 0806 20 2 0002 28 4 C0A80001 该ACL说明如下: 13,14字节是arp协议代码0806,21,22字节是0002表示arp reply,29-32字节就是网关ip地址的16进制 STEP2:应用ACL (Config)# Firewall enable (Config)# int e 0/0/1-24 //在所有端口下应用该acl (int)# mac access-group 1101 in traffic-statistic 当然,如果知道某个具体端口是什么IP地址,那么就可以限制该端口只能发送该IP的arp通告是最好了,这就可以完全杜绝arp欺骗。但明显可操作性差。 另一种能较好防止arp欺骗的办法就是在各个主机上绑定网关的mac,同时在网关上静态绑定IP+mac。不过这种办法不如前面办法好,它不能防止局域网内部的arp欺骗。 如果采取的是动态获取ip地址,神码交换机有个新特性,能完全控制arp欺骗。可以防止接入主机假冒网关,可以防止接入主机假冒其它用户;管理复杂度低,交换机配置简单并且基本不需要变更;支持用户移动接入,交换机可以自动检测到用户接入位置并正确转发用户数据; ip dhcp snooping enable ip dhcp snooping binding enable Interface Ethernet0/0/1 ip dhcp snooping binding user-control ! Interface Ethernet0/0/2 ip dhcp snooping binding user-control 如果是静态ip,需要ip+mac+端口的绑定。 am enable Interface Ethernet0/0/1 am port am mac-ip-pool 00-1C-23-06-0D-B9 10.10.1.90 还是说说cisco交换机吧。一般采取动态获取IP地址的上网方式比较多,先配置ip dhcp snooping 再配置ip arp inspection,此时,客户端就应该没办法伪造其它主机去伪造网关,因为这些伪造的arp reply报文在网关看来都是非法的,自然会拒绝。至于伪造网关的防治,大概就只能在用户自己主机上静态绑定arp缓存表了。 1 防止arp扫描。在某些情况下也可抑制arp欺骗原理就是对物理端口进行arp报文 数量的限制。方法就是在物理端口是使用ip arp inspection limit rate 命令限制每秒钟允许通过的arp报文数。 2 伪mac地址的防治。交换机的mac地址表如果被大量充斥,将会影响性能,严重的将会是交换机崩溃,因为一般的cam存储都有限。所以这类防治般限制每端口出来的mac地址数目即可。至于伪造的防治,那就只能选择port-security了,虽然不能满足移动性的要求。 针对目前学校主干是cisco交换机,接入层品牌太杂,档次参差不齐,用户自动从cisco三层交换机上获取地址上网的情况,我认为比较好的办法就是在cisco交换机上启用dhcp snooping 以及arp inspection功能来尽可能防止arp欺骗。用户还得绑定好网关的mac地址。要能更有效的防止arp欺骗和防止伪dhcp server,还得升级接入层交换机。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值