网络安全-网络安全基础

一、 网络安全概述

TCP/IP协议定义了一个对等的开放性网络,使得连接到这个网络中的所有用户都可能面临来自网络中的恶意的破坏和攻击。这些攻击通过网络通信协议、网络应用协议甚至物理传输链路来实现。主要针对于软件和硬件进行攻击。那在互联网上如何保证自己的安全呢?

二、 TCP/IP 协议技术

了解网络中的基础模型。为更简单有效的了解网络,我们将网络分层进行详细的解读。目前广为人知的网络模型为OSI模型和TCP/IP模型。这两个模型的提出大大降低了网络学习和分析的难度。

1. OSI 模型

OSI(Open System Interconnect Reference Model),开放式互联参考模型。1984年,由ISO发布了著名的ISO/IEC 7498标准,定义了网络互联的7层框架。

OSI模型设计的目的是成为一个所有的销售商都能实现的开放网络模型,来克服使用众多私有网络模型所带来的困难和低效性。他是网络技术的基础。

1.1 OSI 模型的优点

l 提供设备间的兼容性和标准接口,使各个厂商能够设计除互操作的网络设备,促进标准化工作,加快数据通信网络发展。

l 采用分层体系结构,各层可以独立修改或扩容,分层设计有助于将问题化繁为简,由助于学习、理解和分析网络结构

1.2 OSI 七层模型

1.3 数据的封装和解封装

封装

是指网络节点要将传送的数据用特定协议头打包来传送数据,同时在某些层进行数据处理时,也会在数据尾部加上报文

解封装

和封装相反

OSI 七层模型中每一层都会对数据进行封装,以保证数据能够正确无误的到达目的地,被终端接收和执行

网络数据处理的流程:

2 TCP/IP 模型

2.1 TCP/IP 模型协议各层作用

TCP/IP 协议每一层都有对应的相关协议,且均为达成某一网络功能而设计

2.2 应用层协议

HTTP(超文本传输协议):用于访问WWW服务器的各种网页

FTP(文件传输协议):用于文件接收和发送

DNS(域名服务系统):实现主机域名和IP的转换

2.3 传输层协议

TCP(传输控制协议):为应用程序提供可靠的面向连接的服务

UDP(用户数据协议):不可靠,属于无连接通信,可靠性由应用层负责

2.4 网络层协议

IP(互联网协议):IP和路由协议协同工作,寻找能够将数据包传送的最短路径,提供无连接,不可靠的服务

ARP(地址解析协议):把已知的IP地址解析为MAC地址

ICMP(网际控制消息协议):定义网络层控制和传递消息的功能

IGMP(网际组管理协议):用于组播成员管理

2.5 网络接入层协议

逻辑链路控制子层(LLC)

介质访问控制子层(MAC)

2.6 套接字

套接字(Socket)是支持TCP/IP的网络通信的基本操作单元,是通信双方的一种约定,用套接字中的相关函数来完成通信过程,一个套接字由相关的五元组构成

通信过程中使用源套接字来表示TCP/IP会话的源端点,用目的套接字来表示目的端点。

三、 TCP/IP 协议安全

1. IPv4 安全隐患

IPv4设计之初,首先应用于研究环境,针对少量的、可信的用户群体。没有考虑网络安全的因素。随着TCP/IP的广泛应用,很多安全风险的问题逐渐显现。

  • 不提供认证服务
  • 明文传输,不提供数据保密性服务
  • 不提供数据完整性保护
  • 不提供抗抵赖服务

2. TCP/IP 协议栈常见的威胁

物理层:

物理破坏,线路侦听

数据链路层:

MAC地址欺骗,MAC地址泛洪,ARP欺骗等

网络层:

IP地址欺骗,Smurf攻击,ICMP泛洪攻击,地址扫描等

传输层:

TCP欺骗,DOS,DDOS,端口扫描攻击

应用层:

漏洞,缓冲区溢出攻击,病毒,web攻击,木马等

相关推荐
火山灿火山13 分钟前
Qt常用控件(五) - 多元素控件
开发语言·qt
熬了夜的程序员13 分钟前
【Rust学习之路】序
开发语言·后端·学习·rust
say_fall16 分钟前
C语言编程实战:每日一题:用栈实现队列
c语言·开发语言
deng-c-f18 分钟前
C/C++内置库函数(4):c++左右值及引用的概念、move/forward的使用
c语言·开发语言·c++
零雲21 分钟前
java面试:怎么保证消息队列当中的消息丢失、重复问题?
java·开发语言·面试
冬夜戏雪22 分钟前
【java学习日记】【12.11】【11/60】
java·开发语言
在坚持一下我可没意见27 分钟前
Spring 后端安全双剑(下篇):JWT 无状态认证 + 密码加盐加密实战
java·开发语言·spring boot·后端·安全·spring
码农12138号37 分钟前
网络安全-身份伪造
web安全·jwt·身份伪造
deng-c-f41 分钟前
C/C++内置库函数(3):future、promise的用法
c语言·开发语言·c++
2501_9216494941 分钟前
亚太股票数据API:日股、韩股、新加坡股票、印尼股票市场实时行情,实时数据API-python
开发语言·后端·python·websocket·金融