计算机网络与系统安全笔记
第一章 计算机系统安全概述
安全服务 提供数据处理和数据传输安全性的方法。
- 认证
- 访问控制
- 数据保密
- 数据完整性
- 非否认。
安全机制 保护信息与信息系统安全措施的总称。
- 加密。
- 数字签名机制。
- 访问控制机制。
- 数据完整性机制。
- 认证交换机制。
- 业务填充机制:通过发送额外的数据来掩盖正常通信流量特征,从而达到保护业务流机密性的目的。
- 路由控制。
- 公正机制:利用可信第三方。
安全服务与安全机制的关系(重点) 安全服务由安全机制实现;一种安全机制可以实现一种或多种安全服务;一种安全服务可以由一种或多种安全机制实现。
网络安全攻击与威胁
被动攻击:在未经用户同意和认可的情况下将信息或数据文件泄露给系统攻击者,但不对数据信息做任何修改。
•常见手段:搭线监听、无线截获和其它截获
主动攻击。涉及某些数据流的篡改或虚假流的产生。
•常见手段:重放、篡改消息和拒绝服务
物理访问攻击。
内部人员攻击。
软硬件配装攻击。
第二章 TCP/IP协议族及其安全隐患
TCP/IP协议
协议栈
网络层的安全威胁
- 集线器网络容易被窃听。
TCP连接
- 建立过程:
- 释放过程:
- 特点:全双工;面向连接;可靠性(自动分片,自动过滤);面向字节流。
- 安全威胁:
- SYN Flood:建立半连接,不回复。
- ACK Flood:已建立的连接发送大量ACK,使对方主机不断查表,占用资源。
- 序列号预测攻击。
UDP协议
- 特点:无连接;不可靠;不保序。
- 安全威胁:
- UDP假冒。
- UDP劫持。
DNS协议
- 安全威胁:
- DNS劫持(缓存毒化)
- DNS ID欺骗
- 基于DNS的DDoS攻击。
HTTP协议的安全威胁
1. XSS:持久性,非持久性,DOM。
第三章 网络安全隔离技术
网络隔离
同轴电缆:物理层;
集线器:物理层。
交换机:链路层。
虚拟子网VLAN:在交换机上实现划分。基于端口、MAC、网络层、IP组播。
路由器:比交换机、集线器更高层次的安全功能。常用作屏蔽设备。
防火墙
用一个或一组网络设备,在两个或多个网络间加强网络控制,以保护一个网络不受其他网络攻击的安全技术。
分类
- 分组过滤防火墙(网络层):也称包过滤,根据包头信息对网络流量进行处理。
- 应用代理防火墙(应用层):防火墙代理客户端进行连接,但客户端认为是自身连接。
- 状态检测防火墙(传输层):
防火墙的典型体系结构
- 包过滤路由器模型:
- 单宿主堡垒主机模型:
- 双宿主堡垒主机模型:
- 子网屏蔽模型:
防火墙的作用
- 通过过滤不安全的服务而降低风险,提高内部网络安全性
- 保护网络免受基于路由的攻击
- 强化网络安全策略
- 对网络存取和访问进行监控审计
- 利用防火墙对内部网络的划分,实现内部网重点或敏感网段的隔离
网络地址转换
- 概念:将每个局域网节点的地址转换成一个IP地址,反之亦然。
- 客户端在同一个NAT之后:
- 客户端在不同NAT之后:
第四章 网络安全技术
网络安全模型
PDR:Protection, Detection, Response.
P2DR: Police, protection, detection, response.
**PDRR: **Protection, detection, response, restoration
APPDRR: Assessment, Policy, Protection, detection, reaction, restoration.
PADIMEE: Police, Assessment, Design, Implementation, Management/Monitor, Emergency Response, Education.
安全预警技术
- 概念:通过监控有敏感数据需要保护的网络,对分布于不同网段的入侵检测传感器所采集的信息数据进行有效、合理的分析,发现潜在的安全威胁和入侵倾向,并预测潜在的攻击目标或攻击发展方向的技术。
- 模型:
- 基于入侵事件的预警模型。
- 基于攻击过程的预警模型。
- 基于流量监控的预警模型。
入侵检测
- 概念:对入侵行为(任何企图破坏资源的完整性、保密性和有效性的行为)的发觉。
- 分类:
- 根据入侵检测的数据源:基于主机、网络、混合型。
- 按照检测方法:异常检测、误用检测。
- 按时间:实时、定时(事后)。
- 按照系统体系结构:集中式IDS,分布式IDS。
漏洞检测
- 安全扫描技术。
- 源代码扫描技术。
- 反汇编扫描技术。
- 环境错误注入技术。
- 工具:ISS,Nessus,X-Scan。
第五章 协议安全技术
安全协议
- 概念:在消息处理过程中采用了若干密码算法的协议。
- 分类:秘钥交换、认证、认证和密钥交换、电子商户协议。
协议攻击方法
- 消息重放攻击:由于新鲜性不能保证。例:Needham-Schroeder协议(对策:挑战-应答,时间戳,序列号)
- 中间人攻击:
- 例:Diffie-Hellman密钥协商协议:
- 例:一次性口令协议S/Key:
- 预言机:主题无意地为攻击者执行了一个密码运算。可能被攻击者诱导执行一些步骤,从而帮助攻击者得到某些原来不能得到的信息。
- 交错攻击:将某个协议的两个或多个实例交错运行。
- Wiener攻击:
- 平行回话攻击:在攻击者的安排下一个协议的两个或多个运行并发执行。从一个运行中得到另一个运行中困难性问题的答案。
- 例:Woo-Lam单向认证协议:
- 反射攻击:将消息反射给发送方(不一定原封不动)。欺骗消息发送者提供预言服务。
- Woo-Lam改进的单向认证协议:
- 归因于类型缺陷的攻击:由于协议中消息部分的类型信息不明确,使得攻击者将其他信息嵌入秘钥。
- Neuman-Stubblebine协议:
- Otway-Rees密钥交换协议:
- 密码服务滥用攻击:利用之前保存的密码和认证时没有身份信息进行攻击。
认证协议
身份认证
- 定义:声称者向验证者证明自己身份,验证者证实其身份。
- 目的:是获得系统服务的第一道关卡。
- 分类:本地,远程;单向,双向。
Kerberos认证协议
MIT开发,身份鉴别服务。集中式的认证服务器结构,功能是实现用户与其访问的服务器间的互相鉴别。采用对称密钥加密。
目标:
- 安全性:有效防止攻击者假冒合法用户。
- 可靠性:分布式服务器体系结构,提供相互备份。
- 对用户透明
- 可伸缩:能够支持大数量的客户和服务器。
设计思路:
V4协议描述:
- 设计思路:
- 协议交互过程:
协议的缺陷:
- 依赖性:对加密系统(DES)、IP协议、时间的依赖性。
- 字节顺序:没有遵循标准。
- 票据有效期:最小5分钟,最大21小时,往往不能满足要求。
- 认证转发能力:不允许签发给一个用户的鉴别证书转发给其他工作站或用户使用。
- 领域之间鉴别困难。
- 加密操作缺陷:非标准形式的DES(传播密码分组链接PCBC),易受攻击。
- 会话密钥:存在重放攻击可能性。
- 口令攻击:未对口令提供额外的保护。
V5的改进:
- 加密系统:支持任意加密系统。
- 通信协议:除了IP外还支持其他协议。
- 报文字节顺讯:采用抽象语法表示和基本编码规则。
- 票据有效期:允许任意大小。
- 鉴别转发能力。
- 口令攻击:提供预鉴别机制,使得口令攻击更加困难。
- 远程服务访问的认证过程:
SSL/TLS
SSL
- 概念:Secure Sockets Layer Protocol 安全套接层协议。是在应用层与传输层之间的安全协议,为不安全网络提供加密通信。
- 目标:
- 加密:使用TCP提供一个可靠的端到端安全服务。为通信实体之间提供保密性,完整性,验证和密钥交换服务。
- 可扩展性:新的密钥算法可以容易的加入。
- 高效性:减少CPU的使用。
- 透明性:对应用层透明。
- 密码学特征:对称加密数据,公钥加密验证身份,摘要保证完整性。
SSL的结构
- 握手层协议:(SSL HandShake Protocol)、SSL密码参数修改协议(SSL Change Cipher Spec Protocol)、应用数据协议(Application Data Protocol)和SSL告警协议(SSL Alert Protocol)。握手层的这些协议用于SSL管理信息的交换,允许应用协议传送数据之间相互验证,协商加密算法和生成密钥等。SSL握手协议的作用是协调客户和服务器的状态,使双方能够达到状态的同步。
- 记录层协议:用来安全传输数据。
- Key Terms
- SSL会话:是客户和服务器之间的一个关联。通过握手协议创建;定义了一套加密参数;可以被多个SSL连接共享
- SSL连接:是一种通信实体具有对等关系的通信连接;与一个SSL回话关联;连接是瞬时的,用后消失。
- 连接与会话的关系:
- 会话用来协商安全参数如算法。
- 连接用来安全传输数据。
- 通信双方可能有多个安全连接。
- 每个连接只和一个回话相关。
- SSL会话状态:表示一个具体的SSL会话的信息。
- SSL连接与连接状态:
- 记录层协议:
- 建立在TCP上。
- 使用对称加密提供保密性,HMAC提供完整性。
- 步骤:压缩,加密,MAC计算及相反。
- 用来封装高层协议:握手层。
SSL工作流程
- 发送方:
- 分片
- 压缩
- MAC计算
- 加密
- 封装发送。
- 握手协议:允许客户端和服务器相互认证、协商加密和MAC算法,保护数据使用的密钥通过SSL记录传递。在传递应用数据之前使用。
- 功能:客户和服务器相互鉴别,协商密钥交换算法,协商加密算法和密钥,协商压缩算法,生成密钥,完成密钥交换。
- 三个协议:Handshake:核心协议;Change Cipher Spec:改变参数时使用;Alert:出现错误时使用。
- Handshake协议:建立或恢复一个会话;每次握手都生成新的密钥等。连接一定是新的,但会话可能是存在的。
- 本质:密钥交换协议。
- 过程:
- 建立安全能力
- 服务器认证和密钥交换。
- 客户端认证和密钥交换。
- 完成。
- 2,3步因为SSL在同一个连接的两个方向采用不同密钥。
- 报文总结:
TLS
- 概念:安全传输层协议用于在两个同心应用程序之间提供保密性和数据完成性。
- 组成:TLS握手协议。TLS记录协议。
公钥证书链
- 如三级证书:root-intermediates-end user。
- root:根CA对自己签发。
- intermediates:根CA生成一对公钥、私钥,并用私钥将中间 CA 的信息和公钥进行“加密”生成签名,并封装得到 intermediates 证书。上一级 CA 也是按照这个逻辑给下一级 CA 进行签发证书。
- end-user 证书:最后的 CA 生成公钥私钥,并私钥将用户信息、公钥进行“加密”得到 end-user 证书
- 为何需要:根CA需要与数不清的其他安全层次分开,。可以保证中间CA公开的公钥安全。中间CA私钥泄露也不影响根CA。