DHCP欺骗攻击(yersinia应用)

DHCP欺骗攻击(yersinia应用)

DHCP原理:

DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。

DHCP报文共有一下几种:

  • DHCP DISCOVER :客户端开始DHCP过程发送的包,是DHCP协议的开始
  • DHCP OFFER :服务器接收到DHCP DISCOVER之后做出的响应,它包括了给予客户端的IP(yiaddr)、客户端的MAC地址、租约过期时间、服务器的识别符以及其他信息
  • DHCP REQUEST :客户端对于服务器发出的DHCP OFFER所做出的响应。在续约租期的时候同样会使用。
  • DHCP ACK :服务器在接收到客户端发来的DHCP REQUEST之后发出的成功确认的报文。在建立连接的时候,客户端在接收到这个报文之后才会确认分配给它的IP和其他信息可以被允许使用。
  • DHCP NAK :DHCP ACK的相反的报文,表示服务器拒绝了客户端的请求。
  • DHCP RELEASE :一般出现在客户端关机、下线等状况。这个报文将会使DHCP服务器释放发出此报文的客户端的IP地址
  • DHCP INFORM :客户端发出的向服务器请求一些信息的报文
  • DHCP DECLINE :当客户端发现服务器分配的IP地址无法使用(如IP地址冲突时),将发出此报文,通知服务器禁止使用该IP地址。img

因此由于DHCP 其本身特性,我们可以在①和②处分别进行饿死攻击(及发送大量DHCP discover消息,将服务器待分配ip地址耗尽,使得其他客户无法分配得到ip)以及中间人攻击(及伪造DHCP服务器,向客户发送虚假的ip)。

工具:

  • GNS3
  • VMware(kali,win10,windows server 2016)
  • yersinia

环境:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HgMZsj6q-1665301355073)(C:\Users\15081856675\Desktop\QQ截图20221009143941.png)]

客户(VMnet1网段):(待分配)host1对应ip为192.168.1.146,host3对应ip为192.168.1.2,网关为192.168.1.254

服务器(VMnet2网段):host2对应ip为192.168.2.100,网关为:192.168.2.254

服务器端创建DHCP服务,并且设置包含vmnet1网段的ip的作用域。

  • 具体步骤

选择Windows 2016 Server为仅主机模式的VMnet2网段,用以下命令配置Windows 2016 Server的IP地址

netsh interface ipv4 set address “Ethernet0(即虚拟机网卡名称)” static IP地址 子网掩码 网关IP地址

通过以下方式在Windows 2016 Server上添加DHCP服务器

服务器管理器à管理à添加角色和功能、下一步、…、下一步、勾选DHCP服务器à下一步、…、下一步、完成即可。在服务器管理器页面右上角通知(黄色感叹号)处点击完成DHCP服务器配置。按下Win键,在Windows管理工具里面找到新添加的DHCP服务器,在下拉条里面右键“ipv4”点击出现的“新建作用域”。在新建作用域向导里面单击“下一步”,填写第一个作用域(一般是DHCP服务器所在的网段)的名称(随便写),之后点击“下一步”。填写起始IP地址和结束IP地址(可随意填写,因为实验环境中该网段没有主机)。通过下一步、下一步、“否,稍后配置这些选项”、下一步、完成,完成对第一个作用域的配置。其中租期的时间可以设置长一些。右击ipv4下的作用域,点击“激活”使该配置生效。

通过相似的方法设置Kali Linux与Windows 10侧网段(VMnet1)的作用域。只不过在结束之前选择“是,我想现在配置这些选项”,再点击“下一步”。添加网关的IP地址为实验环境中路由器的f0/0端口的IP地址,点击“下一步”。DNS稍后设置,再点击“下一步”直至结束。随后右击新配好的作用域下的“作用域选项”,选中DNS选项,在下面的IP地址栏中输入一个DNS服务器IP地址(虚假的真实的都可以,因为没有连接互联网)。在验证不通过后选择强制使用。

请添加图片描述
请添加图片描述

此时配置成功。

  • 在配置过程中我出现的问题,GNS3配置完成后始终无法ping通,解决方法:我将交换机的接口改为了NM-16ESM后成功ping通(个人问题,可能不适用于他人)

实验过程:

在Vmware的虚拟网编辑器中,将VMnet1中的“使用本地DHCP服务将IP地址分配给虚拟机”选项勾除。在Windows 10的网络适配器中把ipv4更改为自动获取IP地址和自动获取DNS服务器。抓取GNS3上路由器左侧的链路的流量。在Windows 10的cmd上输入以下指令释放自己本身的IP地址参数

ipconfig /release

然后输入

Ipconfig /renew

尝试获取IP地址。(如下图)

请添加图片描述

发现此时window 10主机无法获得ip。

在GNS3中的镜像路由器上为f0/0端口配置中继,使用以下命令

conf t

int f0/0

ip helper-address 中继到f0/0的IP地址(即服务器IP地址)

之后在windows 10中继续输入

Ipconfig /renew

请添加图片描述

得到上图结果,我们可以看出此时服务器能够对其进行ip分配。

接下来输入

apt-get install yersinia     //下载安装yersinia工具

请添加图片描述

下载完成后输入下列命令

yernisia -G

请添加图片描述

点击“launch attack”,选择sending discover packet。此时我们抓取路由器流量,得到下图:

请添加图片描述

我们可以看出此时均为kali主机发送的DHCP Discover报文,我们查看server主机此时作用域信息
请添加图片描述

可以看到此时预设值的作用域内ip均已被占用,此时我们使用windows 10主机再一次重新获取ip则无法获取,实现了DHCP “饿死攻击”,将服务器ip地址消耗完。

在Kali Linux上点击“List Attacks”并关闭当前DHCP攻击流量。然后点击“Launch Attack”,选择“creating DHCP rogue server”。在弹出的窗口中填写攻击参数,服务器地址为Kali的IP地址,Start IP和End IP写为非VMnet1中的IP地址,其他参数随意写,此时我们便对windows 10主机分配了一个虚假的ip, 使得其无法正常联网。攻击如下图:

请添加图片描述

我们可以看到,此时kali 主机向windows 10发送了一个DHCP offer报文,实现了向windows 10分配了不规范的ip地址。

  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JPeng L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值