一.网络安全基础
1.网络安全需求
网络(信息)安全的基本目标:
保密性:确保信息不被泄露。
完整性:确保数据一致性,防止未经授权修改数据。
可用性:确保合法用户正常访问和使用资源。
合法使用:确保资源不被非法或非授权用户使用。
2.安全威胁
安全威胁主要分为三类:
基本威胁
主要的可实现威胁
潜在威胁
1.基本威胁
信息泄露(保密性)
完整性破坏(完整性)
拒绝服务(可用性)DDOS
非法使用(合法使用)
2.主要的可实现威胁
渗入威胁
假冒
旁路控制(利用漏洞)
授权侵犯(使用授权达成非授权目的,内部攻击)
植入威胁
特洛伊木马
陷门
3.潜在威胁
窃听
流量分析
信息泄露
3.安全防护措施
物理安全
人员安全
管理安全
媒体安全
辐射安全
生命周期控制
4.网络安全策略
网络安全策略是指在某个安全域内,施加给所有与安全活动相关活动的一组规则。
1.网络安全策略的分类级别
安全策略目标:诉求—————宪法
机构安全策略:大范围————法律
系统安全策略:小范围————规章
2.访问控制策略
访问控制策略使计算机和网络自动地执行授权。有以下三种不同的访问控制策略:
基于身份的策略
基于任务的策略
多等级策略
5.安全攻击的分类
X.800和RFC 2828对安全攻击进行了分类,它们把攻击分为两类:
主动攻击
伪装攻击
重放攻击
消息篡改
拒绝服务
被动攻击
窃听攻击
流量分析
网络攻击的常见形式
口令窃取、欺骗攻击、后门攻击、指数攻击、DDOS等。
6.开放系统互联网安全体系结构
1.X.800定义的安全服务
为保证系统或数据传输的安全性,开放系统通信协议所提供的服务。
ISO安全框架X.800将这些服务分为5类:
1.认证
2.访问控制
3.数据保密性
4.数据完整性
5.不可否认性
2.X.800定义的安全机制
X.800定义的安全机制可分成两类:
一类在特定的协议层实现,又被称为特定安全机制,共有8种
加密
数字签名
访问控制
数据完整性
认证交换
流量填充
路由控制
公证
另一类不属于任何协议层或安全服务,又被称为普遍安全机制,共有5种
可信功能度
安全标志
事件检测
安全审计跟踪
安全恢复
网络安全模型
一类广泛使用的网络安全模型通常由6部分组成:
消息的发送方(信源)
消息的接收方(信宿)
安全变换
信息通道
可信的第三方
攻击者
![](https://i-blog.csdnimg.cn/blog_migrate/e4b6388ca82d37736375bbf50ba99a5c.png)
二.TCP/IP协议族的安全性
1.基本协议
1.网际协议IP
网络层。IP数据包,源地址,目的地址,内容等。
2.地址解析协议ARP
IP地址→网卡MAC地址,实现主机硬件间通信。
3.传输控制协议TCP
保证数据的正确可靠传递。
三次握手
1.客户端→服务器 SYN,CSEQ
2.服务器→客户端 SYN,ACK(CSEQ+1),SSED
3.客户端→服务器 ACK(SSED+1)
4.用户数据报协议UDP
UDP与TCP的区别
UDP面向报文,TCP面向字节流。
UDP无源和目的地址、广播不可靠,TCP端到端可靠。
UDP没有TCP的一些重传机制。
5.Internet控制消息协议ICMP
用来处理传输错误,向信源发送ICMP报文,报告错误信息,是一种差错和控制报文协议,既传输差错报文也传输控制报文。
2.网络地址和域名管理
1.路由协议
在网络上动态寻找恰当传输路径的机制。
路由协议的两通道
第一条:主叫主机→目标主机
第二条:目标主机→主叫主机
如果第二条通道不是第一条通道的逆通道时,就成为非对称路由。
路由协议的攻击与防范
攻击方式:攻击者自封包或修改IP地址冒充可信节点
防范方法:抛弃外网报文,关闭路由器的源路由功能
2.边界网关协议BGP
BGP通过TCP连接在路由器之间分配路由信息,为核心路由生成路由表。
3.动态主机配置协议DHCP
DHCP端口号:67,68
动态为主机分配IP地址,还提供启动计算机或唤醒网络的一些信息。
4.域名系统DNS
DNS端口号:53
实现域名和IP地址的互相映射。
5.网络地址转换NAT
将内部局域网的本地IP地址转换为唯一外部全球IP地址,缓解IP地址紧张。
3.IPv6
IPv4:32bit IPv6:128bit
IPv6的地址缩写
可以删除前导0,4个0可以省略为1个0,全0用两个冒号::代替。
4.电子邮件协议
1.简单邮件传输协议SMTP
SMTP是一组用于从源地址到目的地址传输邮件的规范,具体功能包括:
控制邮件的中转方式
提供系统间邮件信息传递功能
提供来信通知
SMTP端口号:25
2.邮局协议POP3
POP是一个邮件接受协议,POP3是其第三个版本,规定了如何将个人计算机连接到邮件服务器来下载网络邮件,是第一个离线协议标准。
POP端口号:110
3.Internet消息访问协议IMAP
IMAP直接从邮件服务器上下载邮件。
IMAP端口号:143
4.多用途网际邮件扩充协议MIME
告知浏览器或客户接收到数据的类型。
5.消息传输协议
1.简单文件传输协议TFTP
TFTP提供开销小不复杂的文件传输服务,承载在UDP上,采用超时重传。
TFTP使用UDP上的67号端口。
2.简单文件传输协议FTP
FTP承载在TCP上,相对安全。
FTP的控制连接服务使用21号端口。
FTP的数据连接服务使用20号端口。
3.网络文件传输系统NFS
网络文件系统NFS用于提供文件共享服务。2049号端口。
6.其他类型协议
1.远程登陆协议
1.远程登陆协议Telnet
使用TCP的23号端口。
2.安全壳协议SSH
用于安全会话,支持身份认证和数据加密。
使用TCP的22号端口。
2.简单网络管理协议SNMP
控制路由器、网桥等读写各种设备的信息。
使用UDP的161号端口。
3.网络时间协议NTP
在分布式服务器和客户端进行时间同步。
使用UDP的123号端口。
三.数字证书与公钥基础设施
1.PKI基本概念
公钥基础设施是一种提供安全服务的基础设施,PKI最主要的任务是确立可信任的数字证书。
PKI的主要组成部分包括:
证书机构(CA)
注册机构(RA)
证书撤销
证书发布库
密钥备份与恢复
PKI应用接口
1.证书机构
证书机构CA,其作为具有权威性、公正性的第三方可信任机构,是PKI体系的核心构件,负责生成、撤销、颁发数字证书、密钥恢复等。
2.注册机构
注册机构RA在逻辑上与CA是一个整体,按照政策规范对用户规则进行审查,并执行是否给申请者发放证书、撤销证书等操作。
2.数字证书
数字证书将建立用户身份和其所持公钥的关联。
数字证书主要包括:
主体名
序号
有效期
签发者名
公钥
版本
签名算法标识符
1.数字证书的生成
数字证书生成与管理主要涉及的参与方包括:证书机构、注册机构、最终用户。
数字证书生成的步骤:
密钥生成 → 注册 → 验证 → 证书生成
特定软件/RA → RA → RA(杂凑算法) → CA
X.509规定,用户的私钥不能出现在数字证书中,且数字证书的最后一个字段是证书机构的数字签名。
2.数字证书的撤销
数字证书撤销的常见原因有:
证书持有者报告证书的指定公钥对应的私钥被破解。
CA签发数字证书时出错。
证书持有者离职,而证书是在在职期间签发。
证书撤销列表
证书撤销列表CRL是脱机证书撤销状态的主要方法,他只列出来在有效期内的因故被撤销的证书,而不是所有。
联机证书撤销状态检查
联机证书状态协议OCSP令证书检验者可以实时检查证书状态,与CRL不同,该方式无需下载证书。
3.PKIX模型
PKIX工作组,对X.509标准的扩展,指定Internet中如何部署数字证书。
4.授权管理设施PMI
PMI即权限管理基础设施或授权管理基础设施。
PMI主要包括:
AA即属性权威。用来生成并签发属性证书AC的机构,并负责管理属性证书的整个生命周期。
AC即属性证书。绑定一个实体的权限,由属性权威签发并管理,包括一系列机制。
PKI和PMI的区别
PMI主要进行授权管理,证明该用户有什么权限
PKI主要进行身份认证,证明用户身份
四.网络加密与密钥管理
1.网络加密的方式
网络数据常见的加密方式包括:
链路加密
节点加密
端到端加密
混合加密
1.链路加密
链路加密对网络中的两个相邻节点之间传输的数据进行加密保护。受保护的任意一对节点和相应的调制解调器之间都安装有相同的密码机、相同的密钥。
链路加密的特点:
报头以密文传输,中间节点存在明文。
开销大,需要对链路两端的加密设备进行系统同步。(到一个节点就加解密)
2.节点加密
节点加密的过程类似于链路加密,其特点是:
报头以明文传输。中间节点不存在明文。
开销大。需要对链路两端的加密设备进行系统同步。
3.端到端加密
端到端加密可对一对用户之间的数据连续地提供保护。它要求各对用户采用相同的密码算法和密钥。对于传送通路上的各中间节点,数据是保密的。
特点:
报头以明文传输,中间节点不存在明文。
开销小,不需系统同步。(用户之间直接通讯,忽略节点)
4.混合加密
混合加密首先使用端到端方式对报文加密,然后利用链路加密方式对报头加密。
特点:
报头以密文传输,中间节点不存在明文。
开销大,需要系统同步。
2.密钥管理
密钥管理是处理密钥从产生到最终销毁的整个过程中的有关问题,包括系统的初始化及密钥的产生、存储、备份/恢复、装入、分配、保护、更新、控制、丢失、撤销和销毁等内容。
密钥的种类
一般通信网的应用中的密钥主要包括:
基本密钥kₚ:由用户选定或系统分配,可在较长时间内由一对用户专用的秘密钥
会话密钥kₛ:两个通信终端用户在一次通话或交换数据时使用的密钥
密钥加密密钥kₑ:用于对传送的会话或文件密钥进行加密时的密钥
主机主密钥kₘ:对密钥加密密钥进行加密的密钥,存于主机处理器中
3.密钥分配
密钥分配是使用一串数字或密钥对通信双方所交换的秘密信息进行加密、解密、传送等操作,以实现保密通信或认证签名等。
1.密钥分配的基本方法
通信双方可以通过三种基本方法实现秘密信息的共享:
利用安全信道实现密钥传递。(面议/信使递送)
利用双钥体制建立安全信道传递。
利用量子技术实现密钥传递。
2.密钥分配的基本模式
点-点密钥分配
密钥分配中心KDC
密钥传递中心KTC
3.可信第三方
可信第三方TTP,可按协调、联机、脱机三种方式参与密钥分配。
4.密钥交换协议
密钥交换协议负责将用于特定的通信会话的会话密钥分发到会话者手中,常用的密钥交换协议有:
采用单钥机制的密钥建立协议
采用双钥机制的密钥交换协议
连锁协议(可抵挡中间人攻击)
采用数字签名的密钥交换
密钥和消息广播
Diffle-Hellman密钥交换协议
5.密钥认证
使参与通信的双方确信没有其他人可以共享该秘密,密钥认证分为以下三种:
隐式密钥认证
显式密钥认证
密钥确证
6.密钥的保护
终端密钥的保护
主机密钥的保护
密钥分级管理保护法
五.防火墙原理与设计
1.静态包过滤防火墙
直接使用路由器软件作为过滤器。静态包过滤防火墙采用一组过滤规则对每个数据包进行检查,根据检查结果确定转发或者丢弃该数据包。
工作层次:网络层
优点:对网络性能影响小,成本低
缺点:安全性较低,容易受欺骗攻击,创建访问控制规则较困难。
2.动态包过滤防火墙
在静态包过滤防火墙的基础上发展而来,将连接的状态记录于RAM中一个表单中,后续数据包与此进行比较,具有“状态感知”能力。
工作层次:传输层
优点:对网络性能影响小,安全性更高,具有状态感知能力
缺点:容易受欺骗攻击,创建访问控制规则较困难。
3.电路级网关
当两个主机首次建立TCP连接时,电路级网关在两个主机之间建立一道屏障。
电路级网关的作用类似一台中继计算机,此方案采用C/S架构,网关充当了服务器的角色,而内部网络中的主机充当了客户机。电路级网关切断了数据在端到端的流动。
除了进行基本的包过滤检查,还增加了对连接建立过程中的握手信息及序列号合法性的验证。
工作层次:会话层
优点:安全性高,切断了外部网络直接连接防火墙后的服务器。
缺点:对网络性能有一定影响,设计理论上存在局限性,代码需经常修改。
4.应用级网关
应用级网关与包过滤防火墙不同,应用级网关只对特定服务的数据流进行过滤。应用级网关必须为特定的应用服务编写特定的代理程序,这些程序被称为“服务代理”,在网关内部分别扮演客户机代理和服务器代理的角色。当各种类型的应用服务通过网关时,它们必须经过客户机代理和服务器代理的过滤。
工作层次:应用层
优点:安全性高,认证功能强,日志功能强,规则配置简单。
缺点:灵活性差,性能不高,容易造成网络瓶颈。
*5.状态检测防火墙
状态检测技术采用的是一种基于连接的状态检测机制,将属于同一连接的所有包作为一个数据流的整体看待,构成连接状态表,通过规则表与状态表的共同配合,对表中的各个连接加以识别。与传统包过滤防火墙的静态过滤规则表相比,它具有更好的灵活性和安全性。
工作层次:网络层(理论全层次)
6.切换代理
切换代理是动态包过滤器和一个电路级代理的集合。切换代理首先工作于会话层,起到电路级网关的作用。当连接完成后,再切换到动态包过滤模式,工作在网络层。
工作层次 启动时:会话层 连接完成后:网络层
*7.空气隙防火墙
俗称“安全网闸”,可以进行物理隔离。安全性非常高,缺点多。
六.入侵检测系统
所有能够执行入侵检测任务和实现入侵检测功能的系统都可称为入侵检测系统(IDS)。
1.IDS的任务
信息收集
日志文件、异常改变、异常行为
信息分析
模式匹配(与已知入侵数据库比较,误报率小,但只能发现已知攻击)
统计分析(观察值与正常值比较)
完整性分析(检查某个文件是否被修改、杂凑函数)
安全响应
主动响应(系统本身自动执行,采取终止连接,修正系统环境)
被动响应(发出告警信息和通知)
2.IDS使用的两种方法
1.异常检测
异常检测技术又称为基于行为的入侵检测技术,根据使用者的行为或资源使用情况来判断是否入侵。
异常检测利用统计或者特征分析来检测系统的异常行为,假设任何对系统的入侵都会导致系统异常。
2.误用检测
误用检测技术又称为基于知识的入侵检测技术,假设所有入侵行为和手段都是一种模式或者特征,通过对比已知的入侵行为,进行规则匹配来判断是否有入侵行为。
3.各种入侵检测技术
基于概率统计的检测(推荐系统)
基于神经网络的检测
基于模型推理的检测(攻击者建模)
基于专家系统的检测
3.IDS的结构
事件产生器
事件分析器
响应单元
事件数据库
4.IDS的分类
IDS的类型可以从两个方面进行分类:
按照数据来源分类
按照入侵检测策略分类
1.按照数据来源分类
1.基于网络的入侵检测系统NIDS
数据来自网络的数据流。
优点:侦测速度块,不容易受到攻击,对主机资源消耗少。
缺点:来自服务器本身的攻击不经过网络,误报率高。
关键技术:蜜罐技术、IP碎片重组技术、TCP流重组技术
工作原理:将IPS产品放在重要的网段,如果数据包与产品内置规则吻合就发出警报或切断连接。
2.基于主机的入侵检测系统HIDS
数据来自系统审计记录和日志文件。
优点:不同操作系统捕获应用层入侵,误报少
缺点:依赖主机及其子系统,实时性差
工作原理:扫描OS和应用程序日志,查看敏感文件是否被篡改;检验进出主机的网络传输流发现攻击。
3.分布式入侵检测系统DIDS
数据来自系统审计记录和网络数据流。
2.按照入侵检测策略分类
1.滥用检测
优点:只收集相关数据集合,减少系统负担
缺点:需要不断升级
原理:将收集到的信息与已知网络入侵数据库比对
2.异常检测
优点:可检测出未知的入侵和更复杂的入侵
缺点:误报漏报率高
原理:统计正常使用的测量属性,若观察值超过正常范围则认为有入侵行为。
3.完整性分析
优点:只要攻击导致某个文件改变就可以发现
缺点:不容易实时响应
原理:关注某个文件是否被修改
5.蜜罐技术
蜜罐技术是NIDS的一项关键技术。
蜜罐是一个吸引潜在攻击者的陷阱,它的作用是:
把潜在入侵者的注意力从关键系统上移开
收集入侵者的动作信息
设法让攻击者停留一段时间,使管理员能检测到它并采取相应的措施
七.VPN技术
1.VPN概述
虚拟专网(VPN),是指将物理上分布在不同地点的网络通过公用网络连接而构成逻辑上的虚拟子网。
2.VPN分类
1.按照访问方式
按照访问方式不同,分为两种:
远程访问VPN
网关-网关VPN
1.远程访问VPN
由远程访问的客户机提出连接请求,VPN服务器提供访问服务。此链接中,链路上第一个数据包总是由远程访问客户机发出。
2.网关-网关VPN
由呼叫网关提出连接请求,另一端的VPN网关做出相应。
3.隧道协议
1.VPN隧道
隧道是通过一个公用网络建立的一条穿过公用网络的安全的、逻辑上的隧道。在隧道中数据包被重新封装发送,封装操作也称为IP封装化。
2.隧道传输数据的封装加密
隧道必须对数据包进行封装,现有的封装协议主要包括两类:
第2层隧道协议
第3层隧道协议
1.第2层隧道协议
该类协议是对数据链路层的数据包进行封装,故称为第2层隧道协议。
第2层隧道协议主要用于构建远程访问VPN,包括:
点对点隧道协议PPTP
第2层转发协议L2F
第2层隧道协议L2TP
2.第3层隧道协议
该类协议是对网络层的数据包进行封装,故称为第3层隧道协议。
第3层隧道协议主要用于构建LAN-to-LAN型VPN,包括:
IPSec协议族
路由封装协议GRE
多协议标签交换MPLS
4.IPSec VPN
IPSec协议族在IPv6的制定过程中产生,用于提供IP层的安全性。
1.工作模式
传输模式:未封装真正的IP包头
隧道模式:隐藏了真正的IP包头
2.工作原理
IPSec的工作原理与包过滤防火墙类似:根据规则判断IP数据包是丢弃还是转发。
IPSec通过查询安全策略数据库(SPD)来完成这个功能。但是IPSec与包过滤防火墙不同,除了可以对IP数据包丢失或者转发,还可以对其进行IPSec处理(对IP数据包进行加密和认证),从而保证来自内部网络的数据包不被截取,进入内部网络的数据包未被修改。
3.IPSec的主要协议
AH(认证首部协议)
ESP(封装净荷安全协议)
IKE(Internet密钥交换协议)
三者使用安全关联SA结合起来
1.AH
只负责认证,不涉及加密
可以对 IP净荷和IP头进行认证
长度可变,是32bit数据包长度的倍数
序列号域提供了AH的抗重放功能
2.ESP
主要对 IP数据包进行加密
支持各种对称密钥加密算法
3.IKE
用于动态建立安全关联SA
4.安全关联SA
当两个网络节点在IPSec的保护下进行通信时必须协商SA(1个用于认证,2个用于认证和加密),安全双工通信需要为每个方向建立一个SA。
SA的标识构成
安全参数索引(SPI) *32bit,唯一表示SA
IP目的地址
安全协议表示(AH或者ESP)
4.IPSec的整体构成
IPSec VPN由管理模块、密钥分配和生成模块、身份认证模块、数据加/解密模块、数据分组封装/分解模块和加密函数库等几部分组成。
八.身份认证
1.身份认证的基本分类
身份验证(你是否是你所声称的你)
身份识别(我是否知道你是谁)
2.实现身份证明的基本途径
所知:个人所知道的或掌握的东西,密码、口令等。
所有:个人具有的东西,身份证、钥匙等。
个人特征:指纹、虹膜、笔迹、动作特征等。
*3.口令认证系统
1.口令的选取原则
易记、难猜、抗暴力破解
2.口令的控制措施
限制试探次数
口令有效期
Root口令保护
系统生成口令
3.口令的检验
反应法
支持法
4.口令的安全存储
一般方法:加密、单向HASH
UNIX系统口令存储
智能卡令牌一次性口令
4.一次性口令认证
一次性口令是在登录过程中加入不确定性因素,通过某种运算,如SHA,使每次登录时用户使用的密码都不相同。
1.一次性口令的类型
挑战/响应机制
口令序列机制
时间同步机制
事件同步机制
1.挑战响应机制
用户发起登录请求,客户端将认证请求发往服务器,服务器返回一个挑战值(不确定因素),用户得到挑战值后把挑战者输入到一次性口令产生设备中得出一次性口令,将口令输入客户端,传向服务器,服务器通过计算比对接收到的口令来进行下一步操作。
2.口令序列机制
基于HASH算法,用户输入第一个口令后,系统会自动计算下一个口令,并提示用户输入该口令,以此类推,直到使用完整个口令序列。这种机制可以抵御多种攻击,例如钓鱼攻击和中间人攻击。
3.时间同步机制
把当前时间作为不确定因素,产生一次性口令。客户端基于时间戳和密钥生成一次性口令,服务器也会在同样的时间内使用相同的密钥生成期望的口令用于认证。
4.事件同步机制
把不断变化的计数器值作为不确定因素,产生一次性口令。用户注册时服务器会产生一个KEY,当用户需要认证时,触发令牌按钮COUNT+1,与KEY值一起作为HASH的输入生成一个口令交于服务器进行验证。认证成功服务器端Count+1反之不变。
服务器端设置了一个窗口值,当用户使用令牌产生一次性口令登录服务器时,服务器会在此窗口范围内逐一匹配用户发送过来的口令,只要在窗口内的任何一个值匹配成功,服务器就会返回认证成功信息,并且更改数据库中的计数器值,使服务器和令牌再次同步。