网络协议与攻击模拟_07UDP协议

news/2025/3/13 8:06:52/

一、简单概念

1、UDP协议简介

  • UDP(用户数据报)协议,是传输层的协议。
  • 不需要建立连接,直接发送数据,不会重新排序,不需要确认。

2、UDP报文字段

  • 源端口
  • 目的端口
  • UDP长度
  • UDP校验和

3、常见的UDP端口号

  • 53        UDP用户数据包协议
  • 69        TFTP简单文件传输协议
  • 111      RPC远程过程调用协议
  • 123      NTP网络时间协议
  • 161      SNMP简单网络管理协议

二、UDP 协议抓包

1、实验说明

使用到了基于UDP协议的NTP网络时间协议,更改系统时间,打开winshark抓包并打开自动更新时间/时区设置。

2、实验步骤

  • 更改系统时间

  • 打开winshark抓包工具并开启自动更新时间、自动更新时区

  • 通过NTP协议查看UDP报文字段

三、UDP Flood攻击

1、实验环境

  • GNS3、kali、windwos server 2016

2、网络拓扑

3、实验配置

  • kali IP配置,windows server 2016 IP地址配置、GNS3路由器配置
    • kali  192.168.10.1
    • windows server  2016 192.168.100.1
    • GNS3路由器R1 f0/0 192.168.10.254   f1/0    192.168.100.254
    • ping测试
  • windwos server 2016部署DNS服务器

  •  确保目标53号端口与是打开的
netstat -anop udp

4、实施过程

这里生成了好多IPV4的报文时因为经过了路由器
产生很多随机IP向目标发起了DNS请求

  • 正常的DNS报文Queries里面会有字段,没有域名的畸形的DNS报文Queries里面什么都没有,所以直接标识为畸形的DNS报文。

  • server 2016上面配置DNS

5、攻击命令

hping3 -q -n --rand-source --udp -p 53 --flood 192.168.100.1 -100000

开四五个终端去攻击:

6、实施攻击后

  • 被攻击的服务器的CPU和内存占用率会很高.

  • nslookup解析的时候会出现time out.

  • 也可以从UDP的连接数查看连接情况netstat -anop udp,关注随机IP地址的UDP连接。

四、 UDP Flood的防御

 抓取流量找流量特征:如何把畸形数据包拆包查出来,在服务器前面加一个设备,数据到了这个设备后把数据提过来,把数据全给它拆开,有能力的话可以把它全部转换成二进制,然后找到里面的特征,针对这一类的特征把它拒绝。

UDP其实很难防。


http://www.ppmy.cn/news/1331139.html

相关文章

百度网盘网页无法调起客户端 目前未解决 2024年1月出现BUG

最近一周突然发现百度网盘网页无法调起客户端,多方式排查还是没找出问题所在,怀疑是客户端更新了什么东西导致bug。先记录下各种排查法和复现情况。 具体问题是: *任意网盘链接,都无法唤醒客户端。 *客户端在退出状态网页点击下…

HCIA-Datacom实验指导手册:3、OSPF 路由协议基础实验

HCIA-Datacom实验指导手册:3、OSPF 路由协议基础实验 一、实验目的:二、实验拓扑:三、实验目的:四、配置步骤:步骤 1 掌握 OSPF 的基本配置命令步骤 2 掌握如何查看 OSPF 的运行状态步骤 3 掌握如何通过 Cost 控制 OSPF 的选路步骤 4 掌握 OSPF 发布默认路由的方法步骤 5 …

网络爬虫原理:探秘数字世界的信息猎手

欢迎来到这个关于网络爬虫原理的小小冒险之旅!今天,我们将揭开数字世界的面纱,深入了解那些神秘的程序,它们如何在互联网的海洋中搜寻并捕获有用的信息。如果你对计算机世界的奥秘充满好奇,那么跟着我一起走进这个让人…

【Py/Java/C++三种语言详解】LeetCode每日一题240121【二分查找】LeetCode410、分割数组的最大值

文章目录 题目链接题目描述解题思路为什么使用二分贪心子问题 代码PythonJavaC时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目链接 LeetCode410、分割数组的最大值 题目描述 给定一个非负整数数组 nums 和一个整数 k ,你需要将这个数组分成 k 个非空…

数据仓库-相关概念

简介 数据仓库是一个用于集成、存储和管理大量数据的系统。它用于支持企业决策制定过程中的数据分析和报告需求。数据仓库从多个来源收集和整合数据,并将其组织成易于查询和分析的结构。 数据仓库的主要目标是提供高性能的数据访问和分析能力,以便…

基于Springboot的大学生心理健康管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的大学生心理健康管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体…

风二西CTF流量题大集合-刷题笔记|基础题(4)

61.sql2 sql.pcapng flag{a3eb0ff8-e467-5036-7c9b-287f6848d5f3} 62.冰蝎2.0 swt1.pcapng flag{0867c25f69f0c62c970408ccefe29bb7} 64.gs哥斯拉流量4.0 gs.pcapng flag{0fffbfa87e5508955b397950502db0bd} 65.冰蝎web流量 webshell.pcapng flag{da2c30d9318a0d80b4bfa…

c# record与class的区别

在 C# 中,record 和 class 是两种不同的类型。以下是它们之间的一些区别: 不可变性:record 是不可变的,一旦创建就不能修改其属性的值;而 class 是可变的,可以随时修改其属性的值。 record Person {publi…