第1章 信息安全基础知识
1.信息安全定义
一个国家的信息化状态和信息技术体系不受外来的威胁与侵害
2.信息安全(网络安全)特征(真保完用控审靠去掉第1个和最后一个)
- 保密性(confidentiality):信息加密、解密;信息划分密级,对用户分配不同权限,对不同权限的用户访问的对象进行访问控制;防止硬件辐射泄露、网络截获、窃听等
- 完整性(integrity):严格控制对系统中数据的写访问。只允许许可的当事人进行更改
- 可用性(availability):可以保证合法用户在需要时可以访问信息及相关资产。在坚持严格的访问控制机制的条件下,为用户提供方便和快速的访问接口。提供安全性的访问工具。即使在突发事件下,依然能够保障数据和服务的正常使用,例如可防范病毒及各种恶意代码攻击包括DDos攻击,可进行灾难备份
3.网络安全4层含义
- 运行系统安全:系统本身
- 网络上系统信息的安全:系统权限
- 网络上信息传播的安全:防止有害信息传播
- 网络上信息内容的安全:防止利用安全漏洞进行窃听,冒充和诈骗
4.网络安全结构层次
- 物理安全
- 安全控制
- 安全服务
5.网络信息安全策略(物访防信安)
- 物理安全策略:保护计算机系统等硬件设备面手攻击,验证身份和使用权限
- 访问控制策略:网络安全防范和保护的主要策略。保证网络资源不被非法使用和访问
- 入网访问控制
- 网络权限控制
- 目录级安全控制
- 属性安全控制
- 网络服务器安全控制
- 网络检测和锁定控制
- 网络端口和节点的安全控制
- 防火墙控制
- 信息加密策略:保护网上传输的数据
- 网络安全管理策略
6.ISO/OSI安全体系3个组成
ISO:国际标准化组织
OSI:开放系统互连通信参考模型
- 安全服务:5类,认证,访问控制,数据保密性,数据完整性,不可否认性
- 安全机制:8类,加密,数字签名,访问控制,数据完整性,鉴别交换,业务填充,路由控制,公证
- 安全管理:3类,系统安全管理,安全服务管理,安全机制管理
7.网络安全体系2个模型
-
PDRR
Protection, Detection, Response, Recovery
保护,检测,响应,恢复
-
P 2 D R P^2DR P2DR
Policy, Protection, Detection, Response
安全策略,防护,检测,响应
8.信息系统安全5个等级(自系安结访)
- 自主保护级
- 系统审计保护级
- 安全标记保护级
- 结构化保护级
- 访问验证保护级
9.安全评测认证体系
TCSEC(可信任计算机标准评估准则):现行的网络安全准则,分为3个部分
-
简介和一般模型
-
安全功能要求
-
安全保证要求
7种评估保证级:(功结功系半半形)
- 评估保证级别1(EAL1):功能测试
- EAL2:结构测试
- 3:功能测试和校验
- 4:系统地设计,测试和评审
- 5:半形式化设计和测试
- 6:半形式化验证的设计和测试
- 7:形式化验证的设计和测试
第2章:密码学基本理论
1.密码体制5部分
明文空间P,密文空间C,密钥空间K,加密算法E,解密算法D
2.对称密码体制
**优点:**加密,解密速度快,保密度高
缺点:
- 对称密码算法的密钥分发过程十分复杂,代价高
- 多人通信时密钥组合数量急剧加大,密钥分发更加复杂
- 只有通信双方统一密钥才能互相发送保密的消息
- 数字签名难(接收双方均可伪造签名)
**代表算法:**DES,3DES,IDEA(国际数据加密算法),AES
3.非对称密码体制
优点:
- 密钥少,便于管理
- 密钥分配简单,不需秘密的通道和复杂的协议
- 可以实现数字签名
**缺点:**加密,解密速度慢,同等安全强度下公钥密码体制的密钥位数要求多一些
**代表算法:**RSA(基于分解大整数的困难性假定),Diffie-Hellman密钥交换协议,EIGamal公钥密码技术
第3章:密钥管理技术
1.密钥类型
-
会话密钥
保护传输数据,称为数据加密密钥
保护文件,称为文件密钥
供通信双方使用,称为专用密钥
使用对称密码算法生成
-
密钥加密密钥
对会话密钥或下层密钥进行保护,也称为次主密钥,二级密钥
-
主密钥
-
基本密钥(初始密钥/用户密钥)
用户选定或系统分配,可在较长时间内由一对用户所专用
2.密钥分配
以下仅考虑在对称密码技术中的密钥分配
-
集中式密钥分配体制
需要密钥分配中心(KDC)或密钥转递中心(KTC)
典型代表是Kerboros协议
K a K_a Ka :A和KDC的共享密钥
K b K_b Kb :B和KDC的共享密钥
K s K_s Ks:A和B希望通过KDC获得的会话密钥
-
A->KDC: I D A ∣ ∣ I D B ∣ ∣ N 1 ID_A \ || \ ID_B || \ N_1 IDA ∣∣ IDB∣∣ N1
A向KDC发出会话密钥请求。 N 1 N_1 N1指时间戳,计数器或随机数,防止攻击者对 N 1 N_1 N1的猜测
-
KDC->A: E K a [ K s ∣ ∣ I D A ∣ ∣ I D B ∣ ∣ N 1 ∣ ∣ E K b [ K s ∣ ∣ I D A ] ] E_{K_a}[K_s \ || \ ID_A \ || \ ID_B \ || \ N_1 \ || \ E_{K_b}[K_s \ || \ ID_A]] EKa[Ks ∣∣ IDA ∣∣ IDB ∣∣ N1 ∣∣ EKb[Ks ∣∣ IDA]]
使用 K a K_a Ka加密,保证了只有A才能对这一消息解密,且A相信这一消息是KDC发送的
-
A->B: E K b [ K s ∣ ∣ I D A ] E_{K_b}[K_s \ || \ ID_A] EKb[Ks ∣∣ IDA]
首先B可以获得 K s K_s Ks,并且通过 E K b E_{K_b} EKb可以确定 K s K_s Ks确实来自KDC,最后通过 I D A ID_A IDA可以验证对方为A
-
B->A: E K s [ N 2 ] E_{K_s}[N_2] EKs[N2]
作用是告诉A,B当前是可以通信的
-
A->B: E K s [ f ( N 2 ) ] E_{K_s}[f(N_2)] EKs[f(N2)]
A对B的消息进行响应,告知B,A已经知道B可以通信了
前3步已经完成了密钥的分配,后2步是认证的过程,使B确定收到的信息不是重放
-
-
分布式密钥分配体制
M K m MK_m MKm:A与B之间共享的主密钥
K s K_s Ks:A和B之间的会话密钥
-
A->B: I D A ∣ ∣ N 1 ID_A \ || \ N_1 IDA ∣∣ N1
A向B发送一个要求会话密钥的请求,请B产生一个会话密钥用于安全通信
-
B->A: E M K m [ K s ∣ ∣ I D A ∣ ∣ I D B ∣ ∣ f ( N 1 ) ∣ ∣ N 2 ] E_{MK_m}[K_s \ || \ ID_A \ || \ ID_B \ || \ f(N_1) \ || \ N_2] EMKm[Ks ∣∣ IDA ∣∣ IDB ∣∣ f(N1) ∣∣ N2]
f ( N 1 ) f(N_1) f(N1)感觉是对A的请求的一个响应,主要是把会话密钥 K s K_s Ks传递给了A
-
A->B: E K s [ f ( N 2 ) ] E_{K_s}[f(N_2)] EKs[f(N2)]
在集中式分配中,A把ks给了B,B确定了一次,A又确定了一次,但在分布式中,B把ks给了A,A确定了,但B却没再确定一次
-
第4章:数字签名与认证技术
1.信息摘要概念&特点&常见算法
概念:
明文相同时,经过相同的消息摘要算法可以得到相同且唯一的一组数据,称之为明文的消息摘要
消息摘要只是想保证消息的完整性,不同于数字签名还会对发送者的身份起到验证作用
特点:
-
无论输入消息长度多少,消息摘要长度总是固定的
MD5:128bit,SHA-1:160bit, SHA-256:256bit
-
消息摘要是伪随机的
因为相同的消息经过相同的算法会得到相同的结果,不符合随机的特点
但消息摘要的内容又是毫无规律的,又类似随机,所以是伪随机
-
一般,不同消息的消息摘要不同;相同输入必定相同输出
-
消息摘要是单向函数
只能进行正向的消息摘要,无法从摘要值恢复到原消息
-
找到两条具有相同摘要值的不同消息是不可行的
常见消息摘要算法:
MD2, MD4, MD5, SHA
2.数字签名
数字签名解决的问题:
解决通信双方在通信时的欺骗或伪造行为
消息摘要只是为了保证消息的完整性,但数字签名在保证消息完整性的同时还会对发送方的身份起到验证作用,同时具有不可抵赖性,如果加上了加密算法还可以起到保密性
加上了消息摘要和加密算法的数字签名流程
设发送方为A,接收方为B,A的私钥为 S K A SK_A SKA,A的公钥为 P K A PK_A PKA,B的私钥为 S K B SK_B SKB,B的公钥为 P K B PK_B PKB,待发送消息为M
加密算法为E()(既可以实现数字签名,又可以实现消息加密),解密算法为D()(既可以实现签名验证,又可以实现消息解密)
进行消息摘要的哈希算法为H()
- A计算签名:计算消息的摘要值H(M),计算签名 E S K A ( H ( M ) ) E_{SK_A}(H(M)) ESKA(H(M))
- A进行加密:将签名和消息用B的公钥加密 E P K B ( M ∣ ∣ E S K A ( H ( M ) ) E_{PK_B}(M \ || \ E_{SK_A}(H(M)) EPKB(M ∣∣ ESKA(H(M))
- A向B发送结果:将上述计算结果发送给B
- B解密:首先对A发送过来的消息进行解密 D S K B ( E P K B ( M ∣ ∣ E S K A ( H ( M ) ) ) D_{SK_B}(E_{PK_B}(M \ || \ E_{SK_A}(H(M))) DSKB(EPKB(M ∣∣ ESKA(H(M)))获得 M ∣ ∣ E S K A ( H ( M ) ) M \ || \ E_{SK_A}(H(M)) M ∣∣ ESKA(H(M))
- B验证签名:使用A的公钥对签名进行解密 D P K A ( E S K A ( H ( M ) ) D_{PK_A}(E_{SK_A}(H(M)) DPKA(ESKA(H(M))获得H(M)
- B计算消息摘要:获得H(M)’
- B进行比较:如果 H ( M ) = = H ( M ) ′ H(M) == H(M)' H(M)==H(M)′,说明M未被篡改,保证了消息的完整性,同时根据数字签名,保证了发送方的不可否认性,由于加上了加密算法,所以同时具有了保密性
常用算法
RSA
3.身份认证
要解决的问题
保证操作者的物理身份与数字身份相对应
身份认证的4种方法
- 所知:个人所知道的或所掌握的知识,如密码、口令等
- 所有:个人所具有的东西,如身份证、信用卡、钥匙等
- 个人生物特征:如指纹,声音,视网膜等
- 上下文信息:认证实体所处的环境信息,地理位置,时间等,例如IP地址
4.Kerberos技术
用途
对网络上通信的实体进行相互身份认证(还能阻止旁听和重放)
细节
包含一个认证服务器(Authentication Server-AS) ,一个票据许可服务器(Ticket Granting Server-TGS),一个应用服务器(Application Server)。从加密算法上来讲,其验证是建立在对称加密(DES)的基础上的
-
用户通过向AS发送请求,获得票据许可票据TGT(Ticket Granting Ticket),用来向TGS表明身份
-
TGS为用户分发到目的服务器(就是上面所说的应用服务器)的服务许可票据(Service granting ticket)
-
用户使用服务许可票据与目的服务器进行通信
AS和TGS统称为KDC(Key Distribution Center-密钥分发中心)
注:图中的 T i c k e t t g s Ticket_{tgs} Tickettgs是票据许可票据, T i c k e t v Ticket_{v} Ticketv是服务许可票据
优点
使用AS和TGS两重认证的2点优点:
- 减少用户密钥中密文的暴露次数,减少攻击者对有关用户密钥中密文的积累
- Kerberos认证过程具有**单点登录(Single Sign-On:SSO)**的优点。所谓单点登录是指只要用户拿到了TGT且尚未过期,那么用户可以使用该TGT通过TGS完成到任一服务器的认证而不需要重新输入密码
缺点
需要解决 各主机节点时间同步 和 抗拒服务攻击的问题
第5章:PKI技术
1. 基础知识
概念
PKI(Public Key Infrastructure):公钥基础设施,支持公开密钥管理并提供真实性,保密性,完整性和可追究性服务的基础设施
PKI提供的几种安全服务及对应的技术:向一个实体确认另一个实体是自己。使用数字签名实现
- 完整性:向一个实体确保数据没有被修改。使用数字签名和消息认证码(MAC),MAC使用对称分组密码或密码杂凑函数
- 机密性:向一个实体确保除了接收者,无人可读懂数据的关键部分。采用对称密码加密,需要建立密钥交换和密钥传输协议
- 不可否认性:使用数字签名实现
应用PKI的几种协议
- IPSec:处在网络层,架设VPN
- S/MIME:处在应用层,安全的电子邮件协议
- SSL:处在传输层,保证浏览器和服务器之间的加密通信
2.获取用户公钥的流程(包含CA)
- Bob生成公私钥对,向注册机构(Register Authority-RA)提出公钥注册申请
- RA审查Bob,若通过审查,RA向证书颁发机构(Certificate Authority-CA)提出证书申请
- CA为Bob签发证书,内容包括:Bob的身份信息和公钥,CA对证书的签名结果
- Alice需要与Bob通信时,在证书发布系统查找Bob的证书,使用CA的公钥验证证书上的数字签名是否有效
- 验证证书后,Alice即可使用证书上的公钥与Bob进行通信
3.证书撤销列表(CRL)
CA签发证书为用户的身份和公钥进行解绑
撤销证书的原因:用户身份姓名的改变,私钥被窃或泄露,用户与其所属企业关系变更等
4.数字证书
由于数字证书本身应由CA颁发,所以数字证书本身应有CA的签名
标准
数字证书是 X . 509 X.509 X.509公钥证书的同义词,符合 I T U − T X . 509 V 3 ITU-TX.509V3 ITU−TX.509V3协议
内容
- 证书版本号(Version)
- 证书序列号(Serial Number)
- 签名算法标识符(Signature)
- 签发机构名(Issuer)
- 有效期(Validity)
- 证书用户名(Subject)
- 证书持有者公开密钥信息(Subject Public Key Info)
- 签发者唯一标识符(Issuer Unique Identifier)
- 证书持有者唯一标识符(Subject Unique Identifier)
- 签名值(Issuer‘s Signature)
证书认证过程
- 证书拆封:使用CA的公钥验证证书的数字签名,验证证书是否为CA所颁发
- 序列号验证:验证证书的真伪
- 有效期验证
- 撤销列表查询
证书的更新序列号会发生改变,同时私钥公钥对也会发生改变,并非仅修改一个有效期
第6章:网络攻击与防御技术
攻击的第1步:漏洞与信息收集(扫描技术和嗅探技术)
1.扫描技术
3个目的
- 查看哪些主机存活:Ping命令(IP扫描),SING(发送定制的ICMP数据包的命令行工具),Nmap(网络连接端口扫描软件)
- 查看存活的主机有哪些开放的端口(或者说运行了哪些服务):TCP扫描,UDP扫描
- 查看主机提供的服务是否存在漏洞:具有漏洞的应用程序对一些请求作答时,与无漏洞应用程序不同。常用工具:Nessus,OpenVAS,X-Scan
2.嗅探技术
需要将网卡调至混杂模式
HUB与交换机的区别
HUB(多端口转发器):把接收到的数据帧直接发送到除数据源以外的所有端口(暴力转发)
交换机:交换机中存储有接口与主机物理地址MAC之间的端口映射表,只允许目标物理地址匹配的数据包通过
ARP欺骗
交换型网络最常用的一种嗅探技术
ARP协议:根据IP地址找MAC地址
分类:1.对路由器ARP cache表的欺骗(截获网关数据);2.对内网PC的网关欺骗(伪造网关)
欺骗实现原因:1.ARP协议没有安全性保证,任何计算机均可发送ARP数据包;2.ARP协议是无状态的;3.ARP cache需要定时更新,攻击者有了可乘之机
欺骗实现条件:局域网,攻击者必须先获得进入局域网的合法身份才能进行欺骗
常用的嗅探工具:TcpDump嗅探器软件,Wireshark网络数据包分析工具
3.口令攻击
攻击方式
- 字典攻击(主动攻击)
- 暴力破解(主动攻击)
- 窃听(被动)
- 重放(被动)
防范措施(选防设采使)
- 选择安全密码
- 防止口令猜测攻击
- 设置安全策略
- 采用加密的通信协议
- 使用软键盘输入口令
4.缓冲区溢出攻击
概念
用户输入的数据长度超出了程序为其分配的内存空间,这些数据会覆盖程序为其他数据分配的内存空间,形成缓冲区溢出
3种类型
-
栈溢出
特点:缓冲区在栈中分配,拷贝数据过长覆盖了函数的返回地址,其他一些重要数据结构或函数指针
-
堆溢出
特点:缓冲区在堆中分配,拷贝数据过长覆盖了堆管理结构
-
其他溢出类型
最典型是整数溢出
5.拒绝服务攻击
概念
服务:系统提供的,用户需求的一些功能
拒绝服务(DoS):对服务的干涉,使其可用性降低或失去可用性
拒绝服务攻击:造成DoS的攻击行为,目的是使计算机或网络无法提供正常服务
分布式拒绝服务攻击(DDoS):不同位置的多个攻击者同时向一个或数个目标发起攻击 || 一个或多个攻击者控制不同位置的多台机器对受害者实施攻击
第7章:恶意代码与防范技术
1.种类
- 计算机病毒:单机病毒,不能独立存在需要依靠宿主,通过复制
- 蠕虫病毒:网络病毒;传播渠道有网络,电子邮件,U盘,移动硬盘,系统漏洞;代表熊猫烧香,莫里斯病毒(首个蠕虫病毒)
- 逻辑炸弹:合法应用程序加入的”恶意功能“;例如:为了版权保护,应用程序在运行后自动删除
- 木马:服务器端和客户端(控制器端),植入到目标机中的属于服务器端(服务器端还是客户端是对于木马所有者而言的);传播方式:捆绑,扫描二维码;代表:特洛伊木马,永恒之蓝
- 下载器病毒:破坏杀毒软件,下载病毒和木马;代表:机器狗,渠道商
- 玩笑程序:打断计算机正常行为,创造令人讨厌的东西;代表:女鬼
2.传播周期
设计-传播-感染-触发-运行-消亡
3.零碎知识点
- 木马侵入步骤: 配置木马-传播木马-运行木马
- 蠕虫病毒发作的阶段:扫描,攻击,复制
- 计算机病毒的特点:隐蔽性,传染性,潜伏性,可触发性,破坏性
4.触发机制
日期,时间,键盘,感染,启动,访问磁盘次数,调用中断功能,CPU型号/主板型号作为触发条件
第8章:访问控制技术
1.分类
- 自主访问控制(基于身份的访问控制)
- 强制访问控制(基于规则的访问控制)
- 基于角色的访问控制
2.防火墙
内网:防火墙内的网络
外网:防火墙外的网络
受信主机和非受信主机分别指内网和外网的主机
内网中需要向外提供服务的服务器放在的网段即为非军事化区
3.NAT
工作在传输层
作用:解决IP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机
4.防火墙结构
-
屏蔽路由器
-
双宿主防火墙
-
屏蔽主机防火墙
-
屏蔽子网防火墙
5.防火墙类型
分类
数据包过滤路由器,代理网关(应用层网关),状态检测
包过滤是在网络层拦截所有信息流,代理在应用层实现防火墙的功能
代理服务安全性>包过滤,应用层的防火墙性能会有明显下降,故代理服务性能<包过滤
*写过滤规则表,表示任意值
例如:一个木马程序,IP地址为4.4.4.4,端口为333,使用协议为TCP,填写防止控制规则表
规则 | 方向 | 操作 | 源IP | 源端口 | 目的IP | 目的端口 | 协议 |
---|---|---|---|---|---|---|---|
A | 进站 | 拒绝 | 4.4.4.4 | 333 | * | * | TCP |
B | 出站 | 拒绝 | * | * | 4.4.4.4 | 333 | TCP |
6.入侵检测系统(IDS)
基于误用(特征)的入侵检测
将入侵行为按照某种方式进行特征编码,与模式数据库中的内容进行模式匹配,从而发现入侵行为
优点:只需要收集相关的数据集合,减小系统负担
缺点:需要不断升级网络入侵和系统误用模式数据库,不能检测未知的入侵方式
基于异常的入侵检测
对计算机或网络资源进行统计分析,定义一组系统正常情况的阈值,将系统运行时的数值与阈值相比较,判断是否被入侵
优点:可检测到未知或更复杂的入侵
缺点:误报,漏报率高,不适应用户行为的突然改变
第9章:虚拟专用网络(VPN)
1.VPN的概念和特点
VPN:虚拟专用网。通过一个公用网络建立一个临时的、安全的连接,是一条穿过混乱的公用网络的安全、稳定的隧道
特点
- 安全保障:在公用网络上建立一个逻辑的,点对点的连接(建立一个隧道),并使用加密技术对隧道加密
- 服务质量保证:流量预测和流量控制策略,防止阻塞发生
- 可扩充性和灵活性:支持通过Intranet和Extranet的任何类型的数据流
- 可管理性
2. 隧道技术
隧道技术是指通过使用互联网络的基础设施在网络之间传递数据的一种方式
被封装的数据包在公共互联网络上传递时所经过的逻辑路径称为隧道
隧道技术包括 数据封装-传输-解包 的全过程
3.不同层的隧道协议
- 数据链路层:PPTP,L2TP,L2F
- 网络层:IPSec
- 运输层:SSL
- 应用层:set
4.VPN的4种建立方式
- Host 对 Host:主机要支持IPSec,VPN网关不需支持
- Host 对 VPN网关:均需支持IPSec
- VPN 对 VPN网关:主机不需支持IPSec,VPN网关需支持
- Remote User 对 VPN网关:均需支持IPSec
第10章:系统安全技术
系统安全技术:操作系统安全 + 数据库系统安全 + 网络系统安全