计算机安全学习笔记(V):UDP和网络扫描

User Datagram Protocol (UDP)

UDP是最简单的传输协议。多个程序(服务)可以在主机上侦听,因此操作系统需要知道将流量发送到哪个程序。 在传输协议中,每个程序都与源和目标处的端口相关联,该端口显示为程序的套接字。UDP 在 IP 内携带有效负载数据,附加功能最少。UDP的特点包括消息不被确认,接收也不保证,使其成为理想的选择,尤其是在丢失一些数据包比重新传输它们更可取的应用中(例如视频和音频)。

基于 UDP 的协议示例包括:DNS(域名系统,使用UDP实现简单和快速的实现),DHCP(动态主机配置协议,同样基于UDP的简单和快速特性),HTTP/3(使用基于UDP的QUIC协议),以及µTP(比特洪流使用的协议,同样基于UDP)。这些例子说明了UDP的广泛应用和在特定场景下的优势。

  • 域名系统(DNS,端口 53)使用 UDP 来实现简单快速的实现,但当 DNS 请求不适合 UDP 数据报时,也会使用 TCP。
  • 动态主机配置协议(DHCP、端口 67、68)也设计得简单而快速,因此使用 UDP。
  • 超文本传输协议 HTTP/3(端口 443)使用 QUIC 进行传输,该协议在 UDP 上运行。 QUIC 有自己的可靠性和拥塞管理,因此使用 UDP 来避免与 TCP 解决问题。
  • µTP(BitTorrent,多个端口)使用 UDP 及其自己的基于延迟的拥塞管理,以免中断 TCP 流量。

UDP 欺骗与 IP 欺骗一样简单,例如以下两种类型的攻击:

  • 在本地网络上:UDP 欺骗/劫持
  • 在远程目标上:盲目 UDP 欺骗

攻击者可以嗅探网络上的流量以查看请求。攻击者与服务器"竞赛",在服务器之前向受害者发送 UDP 回复。任何后续数据报都需要发生同样的情况。或者,攻击者可以强制服务器离线(通过 DoS 攻击)。

端口扫描的概念

枚举监听服务的过程称为端口扫描。这是一种确定哪些应用程序处于活动状态的过程。对于UDP端口扫描,扫描者发送一个空的UDP数据报到每个可能的端口。如果端口没有服务监听,服务器会发送一个ICMP端口不可达错误消息。

UDP 端口扫描执行如下:

  • 扫描者向每个可能的端口发送一个空(无负载)UDP 数据报。
  • 如果没有服务正在侦听该端口,则服务器会发送 ICMP 端口不可达错误消息。
  • 某些操作系统限制可发送的 ICMP 错误消息的速率,从而使这些攻击变慢(每 20 秒 80 条消息≃ 扫描所有端口一小时)。
  • 根据端口号可以对正在运行的应用程序进行有根据的猜测,或者可以进一步处理响应。

端口扫描可以与 IP 扫描相结合,以查找哪些 IP 地址和端口是开放的。

扫描是扫描多个主机以查找单个端口的做法(例如,查看网络上的哪些主机正在运行 Web 服务器)。两者可以结合起来搜索一系列 IP 地址上的一系列端口,但每个数据包只能识别一个端口。portscans 的合法性和道德是一个复杂的话题。一些互联网用户将端口扫描视为敌对行为,并向发送者的互联网提供商投诉。端口扫描还可能导致设计不良的系统拒绝服务,特别是工业控制。

对于端口"活跃"的含义有多种有效的定义。

  • 探测可能不返回IP 层响应、错误响应,或者可能有传输层响应(例如TCP)
  • 如果有传输层响应,则可能是错误,可能包含应用程序数据(可能有效或无效)
相关推荐
linwq811 分钟前
OkHttp使用和源码分析学习(二)
学习·okhttp
祐言QAQ13 分钟前
计算机网络之物理层——基于《计算机网络》谢希仁第八版
网络·网络协议·计算机网络
肥肠可耐的西西公主15 分钟前
前端(AJAX)学习笔记(CLASS 2):图书管理案例以及图片上传
前端·笔记·学习
wang090722 分钟前
常用网络工具分析(ping,tcpdump等)
网络·tcpdump
真正的醒悟1 小时前
H3C交换机&路由器&防火墙FTP/TFTP服务器搭建。
服务器·网络·智能路由器
春生黎至10051 小时前
路由基本配置
网络·智能路由器
suenpeng2 小时前
安全运维,等保测试常见解决问题。
linux·运维·安全
贩卖纯净水.2 小时前
REACT学习DAY02(恨连接不上服务器)
服务器·学习·react.js
Hacker_LaoYi2 小时前
x安全服务 y安全体系 z网络安全模型 网络安全体系设计
网络·安全·web安全
南风过闲庭2 小时前
操作系统研究
大数据·人工智能·科技·学习·ai·系统架构