当前位置: 首页 > news >正文

【网络安全】常见网络协议

1. 网络协议概述

网络协议是网络上两个或多个设备使用的一组规则,用于描述传输顺序和数据结构。网络协议充当数据包中信息附带的指令。这些指令告诉接收设备如何处理数据。协议就像一种通用语言,让世界各地的设备能够相互通信和理解。

尽管网络协议在网络通信中发挥着重要作用,但安全分析师仍应了解其相关的安全隐患。某些协议存在可被恶意攻击者利用的漏洞。例如,恶意攻击者可以使用将网址解析为 IP 地址的域名系统 (DNS) 协议将流量从合法网站转移到包含恶意软件的恶意网站。

2. 网络协议分为三类

网络协议可分为三大类:通信协议、管理协议和安全协议。有几十种不同的网络协议,但对于入门级安全分析师来说,您不需要记住所有协议。然而,了解本文列出的协议对您来说很重要。

2.1 通信协议

通信协议控制着网络传输中的信息交换。它们规定了数据在设备之间的传输方式以及通信时间。它们还包括恢复传输中丢失的数据的方法。以下是其中几种。

  1. 传输控制协议 (TCP)是一种互联网通信协议,允许两个设备建立连接并传输数据。TCP 使用三次握手过程。首先,设备向服务器发送同步 (SYN) 请求。然后,服务器以 SYN/ACK 数据包响应以确认收到设备的请求。一旦服务器收到来自设备的最终 ACK 数据包,就会建立TCP 连接。在 TCP/IP 模型中,TCP 发生在传输层。

  2. 用户数据报协议 (UDP)是一种无连接协议,在传输之前不会在设备之间建立连接。这使得它不如 TCP 可靠。但这也意味着它非常适合需要快速到达目的地的传输。例如,UDP 的一个用途是向本地 DNS 服务器发送 DNS 请求。在 TCP/IP 模型中,UDP 出现在传输层。

  3. 超文本传输​​协议 (HTTP)是一种应用层协议,它提供了一种客户端和网站服务器之间的通信方法。HTTP 使用端口 80。HTTP 被认为是不安全的,因此大多数网站正在用一种称为 HTTPS 的安全版本取代它,该版本使用 SSL/TLS 加密进行通信。但是,仍有许多网站使用不安全的 HTTP 协议。在 TCP/IP 模型中,HTTP 发生在应用层。

  4. 域名系统 (DNS)是一种将互联网域名转换为 IP 地址的协议。当客户端计算机希望使用其互联网浏览器访问网站域时,查询将发送到专用 DNS 服务器。然后,DNS 服务器查找与网站域对应的 IP 地址。DNS 通常在端口 53 上使用 UDP。但是,如果 DNS 对请求的回复很大,它将切换到使用 TCP 协议。在 TCP/IP 模型中,DNS 发生在应用程序层。

2.2 管理协议

下一类网络协议是管理协议。管理协议用于监控和管理网络上的活动。它们包括错误报告和优化网络性能的协议。

  1. 简单网络管理协议 (SNMP)是一种用于监控和管理网络上设备的网络协议。SNMP 可以重置网络设备上的密码或更改其基本配置。它还可以向网络设备发送请求,以报告网络带宽的使用情况。在 TCP/IP 模型中,SNMP 发生在应用层。

  2. 互联网控制消息协议 (ICMP)是设备用来相互通报网络上数据传输错误的互联网协议。接收设备使用 ICMP 向发送设备发送有关数据传输的报告。ICMP 通常用作快速排除网络连接和延迟故障的方法,方法是在 Linux 操作系统上发出“ping”命令。在 TCP/IP 模型中,ICMP 发生在互联网层。

2.3 安全协议

安全协议是确保数据在网络上安全发送和接收的网络协议。安全协议使用加密算法来保护传输中的数据。以下是一些常见的安全协议。

  1. 超文本传输​​协议安全 (HTTPS)是一种网络协议,它为客户端和网站服务器之间的通信提供了一种安全的方法。HTTPS 是 HTTP 的安全版本,它对所有传输使用安全套接字层/传输层安全性 (SSL/TLS) 加密,以便恶意行为者无法读取所包含的信息。HTTPS 使用端口 443。在 TCP/IP 模型中,HTTPS 发生在应用程序层。

  2. 安全文件传输协议 (SFTP)是一种安全协议,用于通过网络将文件从一台设备传输到另一台设备。SFTP 使用安全外壳 (SSH),通常通过 TCP 端口 22。SSH 使用高级加密标准 (AES) 和其他类型的加密来确保非预期收件人无法拦截传输。在 TCP/IP 模型中,SFTP 发生在应用程序层。SFTP 经常与云存储一起使用。每次用户从云存储上传或下载文件时,都会使用 SFTP 协议传输文件。

注意:上述加密协议不会隐藏网络流量的源或目标 IP 地址。这意味着恶意行为者如果拦截网络流量,仍然可以了解有关网络流量的一些基本信息。

3. 其他网络协议

  1. 动态主机配置协议
    动态主机配置协议 (DHCP) 属于管理网络协议系列。DHCP 是网络上用于配置设备的应用层协议。它与路由器配合使用,为每个设备分配唯一的 IP 地址,并为每个设备提供适当的 DNS 服务器和默认网关的地址。DHCP 服务器在 UDP 端口 67 上运行,而 DHCP 客户端在 UDP 端口 68 上运行。

  2. 地址解析协议
    到目前为止,您已经熟悉了 IP 和 MAC 地址。您已经了解到网络上的每个设备都有一个公共 IP 地址、一个私有 IP 地址和一个 MAC 地址,用于在网络上标识它。设备的 IP 地址可能会随时间而变化,但其 MAC 地址是永久的,因为它对于设备的网络接口卡是唯一的。MAC 地址用于与同一网络内的设备进行通信,但有时 MAC 地址是未知的。这就是为什么需要地址解析协议 (ARP)。ARP 主要是 TCP/IP 模型中的网络访问层协议,用于将数据包中找到的 IP 地址转换为硬件设备的 MAC 地址。
    网络上的每个设备都执行 ARP 并在 ARP 缓存中跟踪匹配的 IP 和 MAC 地址。ARP 没有特定的端口号,因为它是第 2 层协议,端口号与第 7 层应用层相关联。

  3. 远程登录
    Telnet 是一种应用层协议,用于连接远程系统。Telnet 以明文形式发送所有信息。它使用命令行提示符来控制另一个设备,类似于安全外壳 (SSH),但 Telnet 不如 SSH 安全。Telnet 可用于连接本地或远程设备,并使用 TCP 端口 23。

  4. 安全外壳
    安全外壳协议 (SSH) 用于与远程系统建立安全连接。此应用层协议为安全身份验证和加密通信提供了替代方案。SSH 通过 TCP 端口 22 运行,可替代安全性较低的协议(例如 Telnet)。

  5. 邮局协议
    邮局协议 (POP) 是一种应用层(TCP/IP 模型的第 4 层)协议,用于管理和检索来自邮件服务器的电子邮件。POP3 是最常用的 POP 版本。许多组织在网络上都有专用的邮件服务器,用于处理网络上用户的收发邮件。用户设备将向远程邮件服务器发送请求并在本地下载电子邮件。如果您曾经刷新过电子邮件应用程序,并且收件箱中出现了新邮件,那么您就体验到了 POP 和互联网消息访问协议 (IMAP) 的作用。未加密的纯文本身份验证使用 TCP/UDP 端口 110,加密电子邮件使用 TCP/UDP 端口 995 上的安全套接字层/传输层安全性 (SSL/TLS)。使用 POP 时,邮件必须在本地设备上完成下载后才能阅读。下载后,邮件可能会或可能不会从邮件服务器中删除,因此它不能保证用户可以在多个设备上同步同一封电子邮件。

  6. 互联网消息访问协议 (IMAP)
    IMAP 用于接收电子邮件。它会下载电子邮件标题和邮件内容。内容也会保留在电子邮件服务器上,这样用户便可以从多个设备访问电子邮件。IMAP 使用 TCP 端口 143 来接收未加密的电子邮件,并使用 TLS 协议上的 TCP 端口 993。使用 IMAP 可以让用户在电子邮件下载完成之前阅读部分内容。由于邮件保存在邮件服务器上,因此用户可以在多个设备之间同步电子邮件。

  7. 简单邮件传输协议
    简单邮件传输协议 (SMTP) 用于将电子邮件从发件人传输和路由到收件人的地址。SMTP 与消息传输代理 (MTA) 软件配合使用,后者搜索 DNS 服务器以将电子邮件地址解析为 IP 地址,以确保电子邮件到达其预定目的地。SMTP 使用 TCP/UDP 端口 25 来发送未加密的电子邮件,使用 TLS 来发送加密的电子邮件。大量垃圾邮件通常会使用 TCP 端口 25。SMTP 通过调节源一次可以发送的电子邮件数量来帮助过滤垃圾邮件。

相关文章:

【网络安全】常见网络协议

1. 网络协议概述 网络协议是网络上两个或多个设备使用的一组规则,用于描述传输顺序和数据结构。网络协议充当数据包中信息附带的指令。这些指令告诉接收设备如何处理数据。协议就像一种通用语言,让世界各地的设备能够相互通信和理解。 尽管网络协议在网…...

电路笔记(元器件):AD 5263数字电位计(暂记)

AD5263 是四通道、15 V、256位数字电位计,可通过SPI/I2C配置具体电平值。 配置模式: W引脚作为电位器的抽头,可在A-B之间调整任意位置的电阻值。也可将W与A(或B)引脚短接,A-W间的电阻总是0欧姆,通过数字接口调整电位器…...

MongoDB 的使用场景

一、内容管理系统 1. 博客平台 文章内容、作者信息、标签、评论等数据结构多样,MongoDB 的无模式特性可轻松应对。比如 WordPress 等博客系统,使用 MongoDB 能灵活存储不同格式和长度的文章内容,以及与文章相关的各种元数据。 2. 新闻网站…...

MongoDB 是什么

MongoDB 是一款文档型数据库,属于 NoSQL 数据库范畴。 一、基本概念 MongoDB 以文档的形式存储数据,文档类似于 JSON 对象,由键值对组成,它以 BSON(Binary JSON)格式存储在磁盘上,这种格式支持…...

Python3操作MongoDB批量upsert

个人博客地址:Python3操作MongoDB批量upsert | 一张假钞的真实世界 代码如下: mongoClient MongoClient(mongodb://172.16.72.213:27017/) opsDb mongoClient.ops azScheduled opsDb.azScheduledFlowbulkOpers [] for flow in scheduledFlows.valu…...

相机模数转换

模拟图像是什么? 模拟图像是指连续变化的图像,它通常来源于现实世界的物理场景,并通过光学系统(如相机镜头)投射到感光介质上。模拟图像是连续的,这意味着它在空间和颜色值上都有无穷的细节。例如&#xf…...

C++20 新特性解析

1. 概念(Concepts) 概念是 C++20 引入的一项重要特性,它允许程序员定义类型约束,从而在编译时检查模板参数是否符合某些要求。概念提供了模板参数的限制,使得模板代码更加可读和易于维护。 示例代码: #include <iostream> #include <concepts>// 定义一个…...

C# ManualResetEvent 类 使用详解

总目录 前言 ManualResetEvent 是 C# 中用于线程同步的核心类之一&#xff0c;位于 System.Threading 命名空间下。它的核心功能是通过信号机制控制线程的执行顺序&#xff0c;允许一个或多个线程等待某个信号后再继续运行。与 AutoResetEvent 不同&#xff0c;ManualResetEve…...

动态规划——路径问题②

文章目录 931. 下降路径最小和算法原理代码实现 64. 最小路径和算法原理代码实现 174. 地下城游戏算法原理代码实现 931. 下降路径最小和 题目链接&#xff1a;931. 下降路径最小和 算法原理 状态表示&#xff1a; 经验题目要求&#xff1a;dp[i][j]表示到达[i,j]位置时&…...

ChatGPT macOS 桌面应用让你的编程体验更上一层楼

高效开发必备&#xff1a;ChatGPT macOS 桌面应用亮点盘点 ©作者|Ninja Geek 来源|神州问学 通过 macOS 版 ChatGPT 应用&#xff0c;已经能够更好的和你的生产力工具无缝配合工作。 大概在三四周之前&#xff0c;Anthropic 在 Claude 上推出了一项名为 Computer Use 的功…...

Java持久化之--Spring Data JPA

1、简介 Java持久化技术是Java开发中比较重要的部分&#xff0c;主要用于将对象数据持久化到数据库&#xff0c;或者从数据库中查询数据&#xff0c;简化数据库的CRUD操作。 2、JPA简介 JPA&#xff08;Java Persistence API&#xff09;是Java实现ORM&#xff08;Object Re…...

excel里的函数技巧(持续更新中)

行转列 在 Excel 中&#xff0c;行转列&#xff08;将一行数据转换为一列&#xff0c;或者将一列数据转换为一行&#xff09;是一项常见的操作。你可以使用 转置 功能轻松实现这一操作。 TRANSPOSE(数组)...

基于python sanic框架,使用Nacos进行微服务管理

微服务软件系统构建方式,已经很普及了,通过开源的sanic进行微服务管理,便捷,技术也比较成熟,而在项目实际应用过程中,微服务类型不仅有java的,还有nodejs、python等,尤其是结合算法模型构建的python接口,需要在Nacos进行注册管理。本文内容耗时2天踏坑,亲测一切ok。 …...

Day84:数据可视化

数据可视化是数据分析的重要组成部分,它能直观地展现数据规律,使复杂数据变得易懂。Python 提供了多个数据可视化库,其中最常用的是 Matplotlib 和 Seaborn。今天,我们将学习如何使用这些工具绘制折线图、柱状图、散点图等。 1. 安装和导入库 如果你的 Python 没有安装 Ma…...

fetch() 与 XMLHttpRequest 的差异

fetch() 与 XMLHttpRequest 的差异 fetch() 的功能与 XMLHttpRequest 基本相同&#xff0c;都是向服务器发出 HTTP 请求&#xff0c;但有三个主要的差异。 &#xff08;1&#xff09;fetch()使用 Promise&#xff0c;不使用回调函数&#xff0c;因此大大简化了写法&#xff0…...

TDengine 产品由哪些组件构成

目 录 背景产品生态taosdtaosctaosAdaptertaosKeepertaosExplorertaosXtaosX Agent应用程序或第三方工具 背景 了解一个产品&#xff0c;最好从了解产品包括哪些内容开始&#xff0c;我这里整理了一份儿 TDegnine 产品包括有哪些组件&#xff0c;每个组件作用是什么的说明&a…...

.NET Web-静态文件访问目录浏览

一、Web根目录访问 创建wwwroot文件夹app.UseStaticFiles(); // 启⽤静态⽂件中间件url/路径 进行访问 二、Web根目录之外的文件 app.UseStaticFiles(new StaticFileOptions {FileProvider new PhysicalFileProvider(Path.Combine(builder.Environment.ContentRootPath,&qu…...

SQL数据清理:去除字段值中的多余符号(Demo例子)

目录 前言1. 基础2. 进阶 前言 Excel中有大量不合法的符号&#xff0c;导入到系统之后&#xff0c;数据库有很多脏数据&#xff0c;对此下述展开sql的清洗教程 在数据库的文本字段中&#xff0c;可能会存在多余的逗号或符号&#xff0c;如,销售,, 或 二手车,销售,,这种情况 希…...

.NET版Word处理控件Aspose.Words教程:使用 C# 删除 Word 中的空白页

Word 文档中的空白页会使其看起来不专业并扰乱流程。用户会遇到需要删除 Word 中的空白页的情况&#xff0c;但手动删除它们需要时间和精力。在这篇博文中&#xff0c;我们将探讨如何使用 C# 删除 Word 中的空白页。 本文涵盖以下主题&#xff1a; C# 库用于删除 Word 中的空…...

【工业场景】用YOLOv8实现火灾识别

火灾识别任务是工业领域急需关注的重点安全事项,其应用场景和背景意义主要体现在以下几个方面: 应用场景:工业场所:在工厂、仓库等工业场所中,火灾是造成重大财产损失和人员伤亡的主要原因之一。利用火灾识别技术可以及时发现火灾迹象,采取相应的应急措施,保障人员安全和…...

centos 7 部署awstats 网站访问检测

一、基础环境准备&#xff08;两种安装方式都要做&#xff09; bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats&#xff0…...

可靠性+灵活性:电力载波技术在楼宇自控中的核心价值

可靠性灵活性&#xff1a;电力载波技术在楼宇自控中的核心价值 在智能楼宇的自动化控制中&#xff0c;电力载波技术&#xff08;PLC&#xff09;凭借其独特的优势&#xff0c;正成为构建高效、稳定、灵活系统的核心解决方案。它利用现有电力线路传输数据&#xff0c;无需额外布…...

数据库分批入库

今天在工作中&#xff0c;遇到一个问题&#xff0c;就是分批查询的时候&#xff0c;由于批次过大导致出现了一些问题&#xff0c;一下是问题描述和解决方案&#xff1a; 示例&#xff1a; // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

蓝桥杯3498 01串的熵

问题描述 对于一个长度为 23333333的 01 串, 如果其信息熵为 11625907.5798&#xff0c; 且 0 出现次数比 1 少, 那么这个 01 串中 0 出现了多少次? #include<iostream> #include<cmath> using namespace std;int n 23333333;int main() {//枚举 0 出现的次数//因…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

LLMs 系列实操科普(1)

写在前面&#xff1a; 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容&#xff0c;原视频时长 ~130 分钟&#xff0c;以实操演示主流的一些 LLMs 的使用&#xff0c;由于涉及到实操&#xff0c;实际上并不适合以文字整理&#xff0c;但还是决定尽量整理一份笔…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南&#xff1a;从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器

一、原理介绍 传统滑模观测器采用如下结构&#xff1a; 传统SMO中LPF会带来相位延迟和幅值衰减&#xff0c;并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF)&#xff0c;可以去除高次谐波&#xff0c;并且不用相位补偿就可以获得一个误差较小的转子位…...

密码学基础——SM4算法

博客主页&#xff1a;christine-rr-CSDN博客 ​​​​专栏主页&#xff1a;密码学 &#x1f4cc; 【今日更新】&#x1f4cc; 对称密码算法——SM4 目录 一、国密SM系列算法概述 二、SM4算法 2.1算法背景 2.2算法特点 2.3 基本部件 2.3.1 S盒 2.3.2 非线性变换 ​编辑…...