蓝桥杯-网络安全比赛(7)基础知识 HTTP、TTL、IP数据包、MSS、MTU、ARP、LLMNR、MDNS、NBNS。

本文主要是介绍蓝桥杯-网络安全比赛(7)基础知识 HTTP、TTL、IP数据包、MSS、MTU、ARP、LLMNR、MDNS、NBNS。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 1. IP中TTL值能够给我提供什么信息?2. IP头部中标志、13位偏移、32位源IP地址、目标IP、IP数据包格式,有多少字节3. IP头部中的16位标识是什么?4. MSS 和MTU分别有多大?5. 怎么获取路由IP信息?PING、NSLOOKUP、TRACERT、域名解析6. HTTPS是如何防止中间人劫持、明文传输的?7. ARP收复包不会确认身份?

网络基础

ttl

IP中的TTL值:

  • TTL值的作用:TTL(Time To Live) 是IP数据包的一个字段,用来表示数据包在网络中可以生存的时间,或者说数据包在网络中经过的路由器数目的最大值。
    每经过一个网络设备(如路由器),TTL值就会减1,直到TTL值减为0时,数据包就会被丢弃。
  • TTL值与入侵检测:黑客可以通过发送ICMP Echo请求(ping)来探测目标主机的操作系统类型。不同的操作系统通常设置不同的TTL初始值。
    例如,Linux系统的TTL值通常为64,而Windows系统的TTL值通常为128
    因此,通过观察返回的TTL值,黑客可以推测目标主机的操作系统类型。
  • 防止利用TTL值:为了防止这种基于TTL值的探测,系统管理员可以修改操作系统的TTL值设置,使得黑客难以准确判断操作系统类型。

IP数据包格式的内容分别为?

IP data package
IP报头中的16位标识、3位标志和13位片偏移字段共同构成了IP数据报的分片机制,该机制确保了数据在网络中的可靠传输和重新组装。
当IP数据包的大小超过*MTU(最大传输单元)*时,就需要进行分片。

  • 16位标识(Identification):用于标识一个IP数据报。 当一个IP数据报太大,需要分片时,这个数据报的所有分片都将具有相同的标识值。
  • 3位标志(Flags):标志位则用于标识是否允许分片,以及当前分片是否还有后续的分片。
    • DF(Don’t Fragment)位:当设置为1时,表示数据报在传输过程中不能被分片。如果数据报在传输路径上的某个点的大小超过了MTU,并且DF位被设置为1,那么该数据报将被丢弃,并向发送方发送一个ICMP错误消息。
    • MF(More Fragments)位:当设置为1时,表示该分片后面还有其他的分片。如果MF位被设置为0,则表示这是原始数据报的最后一个分片
  • 13位偏移(Fragment Offset):13位偏移字段用于指示分片在原始数据包中的位置,
  • 32位源IP地址和目标IP:IP数据包头中包含32位的源IP地址和目标IP地址,用于标识数据包的发送方和接收方。
  • 字节数:IP数据包头的长度是可变的,但最小长度为20字节。具体的字节数取决于选项字段的长度。

MSS与MTU是什么?

  • MSS(Maximum Segment Size) 是TCP协议中的一个参数,表示TCP能够发送的最大数据段大小(不包括TCP和IP头部)。
  • MTU(Maximum Transmission Unit) 是网络层协议能够发送的最大数据包大小(不包括任何层协议头部)。当IP数据包的大小超过MTU(1500)时,就需要进行分片
  • 关系MSS的值通常设置为MTU减去IP头部和TCP头部的长度(即1460)
    因此,当IP包的大小超过MTU时,TCP会自动将数据分段以适应MTU的限制。

怎么获取路由IP信息?

  • PING:用于测试与远程主机的连通性,通过发送ICMP Echo请求并等待响应来判断目标主机是否可达。
  • NSLOOKUP:用于查询DNS记录,可以将域名解析为IP地址,或者查询其他DNS相关信息。
  • TRACERT:用于跟踪数据包从源主机到目标主机所经过的路由路径,并显示每跳的延迟。
  • 域名解析:将人类可读的域名转换为计算机可识别的IP地址的过程。

HTTPS是如何防止中间人劫持、明文传输的?

HTTPS是以安全为目标的HTTP通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。
  • 中间人劫持:中间人攻击是指攻击者在通信双方之间插入自己,截获、篡改或窃取双方的通信内容。
  • HTTPS的作用:HTTPS通过SSL/TLS协议,在客户端和服务器之间建立一个加密的通信通道,保护数据在传输过程中的机密性和完整性,从而防止中间人劫持和明文传输。
  • 验证机制:HTTPS还使用数字证书来验证服务器的身份,确保客户端与正确的服务器建立连接。

总之HTTPS通过数字证书验证服务器身份,使用SSL/TLS协议建立安全通信通道,对数据进行加密传输,确保网络通信在传输过程中不被中间人劫持或窃取,保证数据的安全性和完整性。

ARP协议是什么?

ARP收复包不会确认身份:ARP(Address Resolution Protocol)用于将网络层(IP层)的32位IP地址转换为数据链路层(MAC层)的48位物理地址。
ARP请求包不包含身份确认机制,因此容易受到ARP欺骗等攻击。

思考题:

在这里插入图片描述

如何防御ARP攻击:

使用静态ARP映射,而不是动态ARP解析。
配置ARP过滤或ARP检查,在网关设备上只允许已知的ARP请求通过。
使用ARP安全特性,如ARPGuard或Dynamic ARP Inspection (DAI)。
定期更新和审查ARP缓存表。

关于ARP攻击的防御策略:

  1. 静态ARP绑定
    在网络设备(如交换机或路由器)上手动配置ARP条目,将MAC地址与IP地址静态绑定。这样可以防止攻击者通过发送伪造的ARP响应来篡改ARP缓存。
  2. ARP过滤或ARP检查
    在网关设备上启用ARP过滤功能,只允许已知的、信任的ARP请求通过。这通常涉及到配置访问控制列表(ACLs)来限制ARP流量的来源和目的。
    ARP检查功能可以验证ARP请求的源MAC地址和IP地址是否与预期相匹配,以防止伪造的ARP请求。
  3. 使用ARP安全特性
    一些网络设备提供了ARP安全特性,如Cisco的ARPGuard或Cisco IOS的Dynamic ARP Inspection (DAI)。这些特性可以监控ARP流量,并阻止不符合安全策略的ARP请求。
  4. 定期更新和审查ARP缓存
    管理员应定期检查和更新ARP缓存表,以确保其中只包含有效的、受信任的条目。这可以通过手动检查或使用网络管理工具来完成。

当输入一个错误的域名时,DNS会怎么处理:

[如图访问http://hhhhhhhhhhhhh的时候]
protocal

  1. 当输入一个错误的域名时,DNS服务器会查找其缓存和配置的区域文件来解析该域名。
  2. 如果域名不存在于缓存或区域文件中,DNS服务器会向其他DNS服务器发起递归查询。
  3. 如果所有查询都失败,DNS服务器会返回一个NXDOMAIN响应,表示该域名不存在。
  4. 由于DNS查询失败,您的计算机或网络中的其他设备可能会尝试使用本地名称解析协议来解析该域名。
    • 如果您的网络环境是Windows主导的,并且启用了NetBIOS名称解析,那么NBNS可能会被用来解析域名。
    • 如果还是不行它可能会发送MDNS查询来查找本地网络中的相关服务。
    • 如果您的计算机或网络中的其他设备配置了LLMNR,它们还可能会发送LLMNR查询广播,询问网络中是否有其他设备知道该域名的IP地址。

关于LLMNR、MDNS、NBNS等协议,它们都是本地链接的DNS解析协议,用于在本地网络中进行名称解析。
当标准的DNS解析失败时,这些协议可能会作为备选方案来尝试解析域名。

可以说它们都是名称解析协议,用于在计算机网络中解析主机名或域名到对应的IP地址。
然而,LLMNR和MDNS更侧重于本地网络的名称解析和设备发现,
而NBNS则更多地与早期的Windows系统网络相关。

LLMNR

llmns

Link-Local Multicast Name Resolution 可以形象地理解为计算机网络中的“本地翻译官”。
当同一本地链路上的主机需要知道其他主机的名字时,LLMNR就会出手相助,通过多播的方式快速找到答案。
它基于DNS数据包的格式,使得IPv4和IPv6的主机都能轻松使用。

MDNS

Multicast DNS 则像是网络中的“广播员”。
它不仅可以帮助主机解析本地域名到IP地址,还能用于设备发现和服务发现,特别是在局域网内。
设备使用多播地址发送MDNS查询,就像在一个大会上使用扩音器喊话,其他设备听到后可以回复提供所需的服务或资源的IP地址。

NBNS

NetBIOS Name Service 则是早期Windows系统网络中的“名片交换中心”
它主要用于将NetBIOS名称映射到IP地址上,是NetBIOS-over-TCP(NBT)协议族的一份子。
通过NBNS,路由器可以发送状态请求获取设备名,Windows PC在收到请求后会发送命名信息给路由器,就像交换名片一样。

这篇关于蓝桥杯-网络安全比赛(7)基础知识 HTTP、TTL、IP数据包、MSS、MTU、ARP、LLMNR、MDNS、NBNS。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/965757

相关文章

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

Qt实现发送HTTP请求的示例详解

《Qt实现发送HTTP请求的示例详解》这篇文章主要为大家详细介绍了如何通过Qt实现发送HTTP请求,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1、添加network模块2、包含改头文件3、创建网络访问管理器4、创建接口5、创建网络请求对象6、创建一个回复对

springMVC返回Http响应的实现

《springMVC返回Http响应的实现》本文主要介绍了在SpringBoot中使用@Controller、@ResponseBody和@RestController注解进行HTTP响应返回的方法,... 目录一、返回页面二、@Controller和@ResponseBody与RestController

Nginx实现动态封禁IP的步骤指南

《Nginx实现动态封禁IP的步骤指南》在日常的生产环境中,网站可能会遭遇恶意请求、DDoS攻击或其他有害的访问行为,为了应对这些情况,动态封禁IP是一项十分重要的安全策略,本篇博客将介绍如何通过NG... 目录1、简述2、实现方式3、使用 fail2ban 动态封禁3.1 安装 fail2ban3.2 配

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

查询SQL Server数据库服务器IP地址的多种有效方法

《查询SQLServer数据库服务器IP地址的多种有效方法》作为数据库管理员或开发人员,了解如何查询SQLServer数据库服务器的IP地址是一项重要技能,本文将介绍几种简单而有效的方法,帮助你轻松... 目录使用T-SQL查询方法1:使用系统函数方法2:使用系统视图使用SQL Server Configu

使用Java实现获取客户端IP地址

《使用Java实现获取客户端IP地址》这篇文章主要为大家详细介绍了如何使用Java实现获取客户端IP地址,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 首先是获取 IP,直接上代码import org.springframework.web.context.request.Requ

C++实现获取本机MAC地址与IP地址

《C++实现获取本机MAC地址与IP地址》这篇文章主要为大家详细介绍了C++实现获取本机MAC地址与IP地址的两种方式,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 实际工作中,项目上常常需要获取本机的IP地址和MAC地址,在此使用两种方案获取1.MFC中获取IP和MAC地址获取

C/C++通过IP获取局域网网卡MAC地址

《C/C++通过IP获取局域网网卡MAC地址》这篇文章主要为大家详细介绍了C++如何通过Win32API函数SendARP从IP地址获取局域网内网卡的MAC地址,感兴趣的小伙伴可以跟随小编一起学习一下... C/C++通过IP获取局域网网卡MAC地址通过win32 SendARP获取MAC地址代码#i