信息安全支撑技术
- 密码学
- 密码学发展
- 古典密码
- 近代密码学
- 现代密码学
- 基本保密通信模型
- 密码系统的安全性
- 密码学技术在信息安全中的应用
- 对称密码算法
- 非对称密码算法
- 其他密码服务
- 哈希函数
- 消息认证码
- 数字签名
- 公钥基础设施(PKI)
- CA:认证权威
- RA:注册权威
- 证书库/CRL
- 终端实体
- PKI体系工作流程
- PKI/CA技术的典型应用
- 身份鉴别
- 身份鉴别的概念
- 标识与鉴别
- 鉴别的基本概念
- 基于实体所知的鉴别
- 密码暴力破解安全防护
- 木马窃取密码安全防护
- 密码嗅探攻击安全防护
- 密码嗅探及重放攻击防护
- 基于实体所有的鉴别方法
- 基于实体特征的鉴别方法
- 基于实体特征的鉴别-指纹、掌纹、静脉
- 基于实体特征的鉴别-虹膜,视网膜
- 基于实体特征的鉴别-语音、面部
- 基于实体特征的鉴别
- kerberos体系
- 单点登录基本概念
- Kerberos协议
- Kerberos体系构成
- Kerberos认证过程-三次通信
- Kerberos工作过程
- Kerberos工作过程-获得TGT
- Kerberos工作过程-获得ST
- Kerberos工作过程-获得服务
- 认证、授权和计费
- 访问控制
- 访问控制基本概念
- 访问控制基本概念-访问控制模型
- 访问控制模型的分类
- 自主访问控制模型
- 什么是自主访问控制模型(DAC)
- 自主访问控制模型实现方式
- 自主访问控制的特点
- 强制访问控制模型(MAC)
- 强制访问控制模型-BLP
- BLP模型的构成
- 强制访问控制模型-Biba
- Biba模型的构成
- 强制访问控制模型-Clark-Wilson
- Chinese Wall模型示例
- 基于角色的访问控制
- RBAC模型构成
- 特权管理基础设施
- PMI的体系架构
- PKI和PMI对比
密码学
密码学发展
古典密码学( 20世纪初之前)
▪ 主要特点:数据的安全基于算法的保密 【凯撒密码】
▪ 转轮机成为古典密码学成熟
❖近代密码学(1949年到1975年)
▪ 主要特点:密码学真正成为一门科学
▪ 信息论引入密码学
❖现代密码学( 1949年到1976年)
▪ 密码学的新方向—公钥密码学
▪ 主要特点:解决了密钥分发和管理的问题
古典密码
❖安全性在于保持算法本身的保密性
▪ 不适合大规模生产
▪ 不适合较大的或者人员变动较大的组织
▪ 用户无法了解算法的安全性
❖主要分类
▪ 替代密码
▪ 置换密码
▪ 替代密码与置换密码的组合
❖例如:凯撒密码
❖例如:ENIGMA
▪ ENIGMA是由Arthur Scherbius于1919年发明了密码转轮机,使用机电代
替手工。在二次世界大战期间, Enigma曾作为德国陆、海、空三军最高级密码机
近代密码学
1949年,Shannon(香农)发表论文“The Communication Theory of Secret Systems”,将信息论引入了密码,从而把已有数千年历史的密码学推向了科学的轨道,奠定了密码学的理论基础
密码学从此开始成为一门科学
现代密码学
解决了密钥分发、管理问题,并提供更多服务
▪ 1976年,Diffie & Hellman的“New Directions in Cryptography”提出了非对称密钥密码
密码学真正广泛在商业中应用
基本保密通信模型
基本概念
▪ 明文、密文
▪ 加密、解密、加密密钥、解密密钥
密码系统的安全性
影响密码系统安全性的基本因素
▪ 密码算法复杂度、密钥机密性、密钥长度
▪ 科克霍夫(Kerckhoff)原则:密码体制应该对外公开,仅需对密钥进行保密;如果一个密码系统需要保密的越多,可能的弱点也越多
❖评估密码系统安全性
▪ 无条件安全、计算安全性、可证明安全性
❖密码系统实际安全需要满足的准则:
▪ 破译该密码系统的实际计算量无法实现
▪ 破译该密码系统所需计算时间超过信息的生命周期
▪ 破译该密码系统的费用超过被加密信息本身的价值
密码学技术在信息安全中的应用
对称密码算法
加密密钥和解密密钥相同,或实质上等同
❖典型算法:DES、3DES、AES、IDEA等
❖优点:高效
❖不足:安全交换密钥问题及密钥管理复杂
非对称密码算法
❖密钥成对 (公钥, 私钥)
▪ 公钥加密私钥解、私钥加密公钥解
❖典型算法:RSA、ECC、 ElGamal、【SM2、SM9】
❖优点:解决密钥传递问题、密钥管理简单、提供
数字签名等其他服务
❖缺点:计算复杂、耗用资源大
其他密码服务
哈希函数
❖哈希函数是能将任意长度的数据映射成为一个定长的字段的函数
❖作用:数据完整性检查
❖典型算法:MD5、SHA-1
❖数学性质
▪ 单向性
▪ 弱抗碰撞性
▪ 强抗碰撞性
消息认证码
❖基本特点
▪ 也称消息鉴别码(Message Authentication Code,MAC)
▪ 利用密钥来生成一个固定长度的短数据块,并将该数据块附加在消息之后
❖作用:完整性校验、时间和顺序验证
❖实现算法
▪ 分组链消息鉴别码(CBC-MAC)
▪ 基于哈希函数的MAC(HMAC)
数字签名
❖基本特性
▪ 不可伪造性
▪ 不可否认性
▪ 完整性
❖应用示例
▪ 发送过程
▪ 接收过程
公钥基础设施(PKI)
定义
▪ PKI是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能
❖PKI架构
▪ CA(认证权威)
▪ RA(注册权威)
▪ 证书存放管理(目录服务)
▪ 终端实体(证书持有者和应用程序)
CA:认证权威
❖签发证书
❖更新证书
❖管理证书
▪ 撤销、查询
▪ 审计、统计
❖验证数字证书
▪ 黑名单认证(CRL)
▪ 在线认证 (OCSP)
CA是PKI体系的核心
RA:注册权威
❖受理用户的数字证书申请
▪ 对证书申请者身份进行审核并提交CA制证
▪ 类似于申请身份证的派出所
❖提供证书生命期的维护工作
▪ 受理用户证书申请
▪ 协助颁发用户证书
▪ 审核用户真实身份
▪ 受理证书更新请求
▪ 受理证书吊销
证书库/CRL
❖证书存放管理
▪ 信息的存储库 ,提供了证书的保存,修改,删除和获取的能力
▪ 采用LDAP标准的目录服务存放证书,其作用与数据库相同,优点是在修改操作少的情况下,对于访问的效率比传统数据库要高
❖CRL(Certificate Revocation List):证书撤销列表,也称“证书黑名单”
▪ 被撤销证书的序列号
▪ 证书有效期期间因为某种原因(人员调动、私钥泄漏等)导致证书不再真实可信,因此需要进行证书撤销
终端实体
❖数字证书
▪ 经证书权威机构CA签名的、包含拥有者身份信息和公开密钥的数据体
▪ 国际标准X.509定义了电子证书的规范格式
❖拥有公私密钥对和相应公钥证书的最终用户,可以是人、设备、进程等
PKI体系工作流程
PKI/CA技术的典型应用
身份鉴别
身份鉴别的概念
标识与鉴别
❖标识的概念:标识是实体身份的一种计算机表达,每个实体与计算机内部的一个身份表达绑定
❖鉴别:确认实体是它所声明的,提供了关于某个实体身份的保证,某一实体确信与之打交道的实体正是所需要的实体
❖标识与鉴别的作用
▪ 作为访问控制的一种必要支持,访问控制的执行依赖于确知的身份
▪ 作为数据源认证的一种方法
▪ 作为审计追踪的支持
鉴别的基本概念
鉴别系统的构成
▪ 验证者、被验证者、可信赖者
❖鉴别的类型
▪ 单向鉴别、双向鉴别、第三方鉴别
❖鉴别的方式
▪ 基于实体所知(知识、密码、PIN码等)
▪ 基于实体所有(身份证、钥匙、智能卡、令牌等)
▪ 基于实体特征(指纹,笔迹,声音,视网膜等)
▪ 双因素、多因素认证
基于实体所知的鉴别
❖使用最广泛的身份鉴别方法
▪ 实现简单、成本低
▪ 提供弱鉴别
❖面临的威胁
▪ 暴力破解
▪ 木马窃取
▪ 线路窃听
▪ 重放攻击
密码暴力破解安全防护
❖暴力破解防护
▪ 使用安全的密码(自己容易记,别人不好猜)
▪ 系统、应用安全策略(帐号锁定策略)
▪ 随机验证码
• 变形
• 干扰
• 滑块
• 图像识别
木马窃取密码安全防护
❖使用密码输入控件
▪ 安全的输入框,避免从输入框中还原密码
▪ 软键盘,对抗击键记录
▪ 随机排列字符,对抗屏幕截图重现
密码嗅探攻击安全防护
加密:单向函数
❖攻击者很容易构造一张q与p对应的表,表中的p尽可能包含所期望的值
▪ 解决办法:在口令中使用随机数
一次性口令:每次鉴别中所使用的密码不同
▪ 有效应对密码嗅探及重放攻击
❖实现机制
▪ 两端共同拥有一串随机口令,在该串的某一位置保持同步
▪ 两端共同使用一个随机序列生成器,在该序列生成器的初态保持同步
▪ 使用时间戳,两端维持同步的时钟
密码嗅探及重放攻击防护
挑战机制
▪ 客户端:请求登录
▪ 服务器:给出随机数作为挑战请求
▪ 将登录信息(用户名、密码)与随机数合并,使用单向函数(如MD5)生产字符串,作为应答返回服务器
▪ 服务认证后返还结果
基于实体所有的鉴别方法
❖采用较多的鉴别方法
▪ 使用用户所持有的东西来验证用户的身份
▪ 用于鉴别的东西通常不容易复制
❖鉴别物体
▪ IC卡(Integrated Circuit Card)是将一个微电子芯片嵌入符合卡基,做成卡片形式的信息载体
• 内存卡
• 逻辑加密卡
• CPU卡
❖特点
▪ 难以复制、安全性高
安全威胁及防护
▪ 损坏
• 封装应坚固耐用,承受日常使用中各种可能导致卡片损坏的行为
▪ 复制
• 保证IC卡中存储和处理的各种信息不被非法访问、复制、篡改或破坏PIN码甚至其他技术实现对数据的安全防护
• 确保逻辑安全措施得到落实
基于实体特征的鉴别方法
使用每个人所具有的唯一生理特征
鉴别的方式
▪ 指纹、掌纹、静脉
▪ 虹膜、视网膜
▪ 语音
▪ 面部扫描
基于实体特征的鉴别-指纹、掌纹、静脉
指纹
▪ 手指上一些曲线和分叉以及一些非常微小的特征
手掌
▪ 手掌有折痕,起皱,还有凹槽
▪ 还包括每个手指的指纹
▪ 人手的形状(手的长度,宽度和手指)表示了手的
几何特征
静脉
▪ 个人静脉分布图(指静脉、掌静脉)
基于实体特征的鉴别-虹膜,视网膜
虹膜
▪ 使用环绕在瞳孔四周有色彩的部分作为识别特征
▪ 出生6~18个月成型后终生不变
❖视网膜
▪ 使用视网膜上面的血管分布作为识别特征
基于实体特征的鉴别-语音、面部
语音
▪ 使用语音、语速、语调等作为识别特征
❖面部
▪ 人都有不同的骨骼结构,鼻梁,眼眶,额头和下颚形状
❖特点
▪ 易于实现
▪ 安全性不高
基于实体特征的鉴别
鉴别系统的有效性判断
▪ 错误拒绝率(FRR)【第一类错误】
▪ 错误接受率(FAR)【第二类错误】
▪ 交叉错判率(CER):FRR=FAR的交叉点,CER用来反映系统的准确度
kerberos体系
单点登录基本概念
❖单点登录概念
▪ 单一身份认证,身份信息集中管理,一次认证就可以访问其授权的所有网络资源
▪ 单点登录实质是安全凭证在多个应用系统之间的传递或共享
❖单点登录的安全优势
▪ 减轻安全维护工作量,减少错误
▪ 提高效率
▪ 统一安全可靠的登录验证
Kerberos协议
❖什么是Kerberos协议
▪ 1985年由美国麻省理工学院开发,用于通信实体间的身份认证,1994年V5版本作为Internet标准草案公布
▪ 基于对称密码算法为用户提供安全的单点登录服务
▪ 包含可信第三方认证服务
❖Kerberos协议的优点
▪ 避免本地保存密码及会话中传输密码
▪ 客户端和服务器可实现互认
Kerberos体系构成
❖运行环境构成
▪ 密钥分发中心(KDC)
• 系统核心,负责维护所有用户的账户信息
• 由AS和TGS两个部分构成
– 认证服务器(AS:Authentication Server)
– 票据授权服务器(TGS:Ticket Granting Server)
▪ 应用服务器
▪ 客户端
❖其他概念
▪ 票据许可票据(TGT)
▪ 服务许可票据(ST)
Kerberos认证过程-三次通信
❖认证过程由三个阶段组成,例如需要访问OA
▪ 第一次:获得票据许可票据(TGT)
▪ 第二次:获得服务许可票据(ST)
▪ 第三次:获得服务
Kerberos工作过程
Kerberos工作过程-获得TGT
客户机向AS发送访问TGS请求(明文)
▪ 请求信息:用户名、IP地址、时间戳、随机数等
▪ AS验证用户(只验证是否存在)
❖AS给予应答
▪ TGT(包含TGS会话密钥),使用KDC密码加密
▪ 其他信息(包含TGS会话密钥),使用用户密码加密
Kerberos工作过程-获得ST
客户机向TGS发送访问应用服务请求
▪ 请求信息使用TGS会话密钥加密(包含认证信息)
▪ 包含访问应用服务名称(http)
❖TGS验证认证信息(包含用户名等)后,给予应答
▪ TGS
▪ 客户机与应用服务器之间的会话密钥
Kerberos工作过程-获得服务
客户机向应用服务器请求服务
▪ TGS(使用http服务器密码加密)
▪ 认证信息
❖应用服务器(验证认证信息)
▪ 提供服务器验证信息(如果需要验证服务器)
认证、授权和计费
❖RADIUS协议
▪ 最初为拨号用户进行认证和计费,现为通用的认证协议
▪ 协议实现简单,传输简捷高效
▪ 仅对传输过程中的密码本身进行加密
❖TACACS+协议
▪ 运行于TCP协议,具有较高的可靠性
▪ 对包头外所有数据加密,安全性较高
▪ 大型网络中实时性较差
访问控制
访问控制基本概念
什么是访问控制
▪ 为用户对系统资源提供最大限度共享的基础上,对用户的访问权进行管理,防止对信息的非授权篡改和滥用
❖访问控制作用
▪ 保证用户在系统安全策略下正常工作
▪ 拒绝非法用户的非授权访问请求
▪ 拒绝合法用户越权的服务请求
访问控制基本概念-访问控制模型
什么是访问控制模型
▪ 对一系列访问控制规则集合的描述,可以是非形式化的,也可以是形式化的。
❖组成
访问控制模型的分类
自主访问控制模型
什么是自主访问控制模型(DAC)
▪ 客体的属主(创建者)决定该客体的访问权限
▪ 灵活,具有较好的易用性和可扩展性
▪ 安全性不高
❖实现机制
▪ 访问控制表/矩阵
自主访问控制模型实现方式
访问控制表
▪ 权限与客体关联
▪ 在客体上附加一个主体明细表的方法来表示访问控制矩阵的
访问能力表
▪ 权限与主体关联
▪ 为每个用户维护一个表,表示主体可以访问的客体及权限
自主访问控制的特点
❖优点:
▪ 根据主体的身份和访问权限进行决策
▪ 具有某种访问能力的主体能够自主地将访问权的某个子集授予其它主体
▪ 灵活性高,被大量采用
❖缺点:
▪ 安全性不高
▪ 信息在传递过程中其访问权限关系会被改变
强制访问控制模型(MAC)
❖什么是强制访问控制(MAC)
▪ 主体和客体都有一个固定的安全属性,系统用该安全属性来决定一个主体是否可以访问某个客体
❖特点
▪ 安全属性是强制的,任何主体都无法变更
▪ 安全性较高,应用于军事等安全要求较高的系统
强制访问控制模型-BLP
❖BLP模型概念
▪ 由D. Elliott Bell和Leonard J. LaPadula于1973年提出的一种模拟军事安全策略的计算机访问控制模型,简称为BLP模型
▪ 第一个严格形式化的安全模型
▪ 多级访问控制模型,用于保证系统信息的机密性
❖BLP模型访问控制策略
▪ 包括自主安全策略与强制安全策略
▪ 强制安全策略为每一个主体和客体都分配了安全级,根据安全级进行访问控制
BLP模型的构成
❖安全级
▪ 密级:绝密、机密、秘密、公开
▪ 范畴:军事,外交,商务…
❖安全级之间支配关系(密级高于或等于、范畴包含)
▪ 例如L=<机密,{外交,商务}>,L’=<秘密,{商务}>,则L支配L’
❖安全策略【不能向上读】
▪ 简单安全规则(向下读)
▪ *-规则(向上写)
强制访问控制模型-Biba
❖Biba模型概念
▪ 1977年由Biba提出,与BLP模型数学上对偶的完整性保护模型
▪ 多级访问控制模型,保护数据完整性
❖Biba模型的访问控制策略
▪ 强制安全策略为每一个主体和客体都分配了完整级,根据完整级进行访问控制
Biba模型的构成
❖完整级:安全级和范畴
▪ 安全级:极为重要,非常重要,重要,…
▪ 范畴:军事,外交,商务…
❖完整级存在支配关系
▪ 与BLP类似,安全级高于或等于,范畴包含
❖安全策略【不能向下读】
▪ 向上读:主体可以读客体,当且仅当客体的完整级别支配主体的完整级
▪ 向下写:主体可以写客体,当且仅当主体的完整级别支配客体的完整级
强制访问控制模型-Clark-Wilson
❖Clark-Wilson模型概念
▪ 由计算机科学家David D. Clark和会计师David R. Wilson发表于1987年
▪ 确保商业数据完整性的访问控制模型,侧重于满足商业应用的安全需求
❖ Clark-Wilson模型的访问控制策略
▪ 每次操作前和操作后,数据都必须满足这个一致性条件
Chinese Wall模型示例
若干有竞争关系数据集构成了利益冲突类
▪ 银行COI类(银行a、银行b、银行c)
▪ 石油公司COI类(公司W、公司x、公司u、公司v)
基于角色的访问控制
❖基于角色的访问控制(RBAC)模型
▪ 系统内置多个角色,将权限与角色进行关联
▪ 用户必须成为某个角色才能获得权限
❖基于角色访问控制模型访问控制策略
▪ 根据用户所担任的角色来决定用户在系统中的访问权限
▪ 用户必须成为某个角色,且还必须激活这一角色,才能对一个对象进行访问或执行某种操作
RBAC模型构成
❖RBAC模型四种类型
▪ RBAC0,基本模型,规定了所有RBAC的基本内容,四种要素,用户(U)、角色®、会话(S)和权限§
▪ RBAC1:包含RBAC0,加入安全等级及角色继承关系
▪ RBAC2:包含RBAC0,加入约束条件,例如财务和会计不能为同一人
▪ RBAC3:结合了RBAC1、RBAC2
特权管理基础设施
❖PMI是什么
▪ 与应用相关的授权服务管理
▪ 建立在PKI提供的可信的身份认证服务的基础
▪ 采用基于属性证书的授权模式
❖PMI的主要功能
▪ 对权限管理进行了系统的定义和描述
▪ 系统地建立起对用户身份到应用授权的映射
▪ 支持访问控制等应用
PMI的体系架构
PMI是属性证书、属性权威、属性证书库等部件的
集合体,用来实现权限和属性证书的产生、管理、存储、分发和撤销等功能
▪ SOA:信任源点
▪ AA:签发属性证书
▪ ARA:证书签发请求
▪ LDAP:属性证书发布查询
❖属性证书
▪ 以证书形式给出用户和权限的关系
PKI和PMI对比
PKI
▪ “你是谁”
▪ 身份与公钥绑定
▪ 身份鉴别(护照)
▪ RCA-CA-RA,LDAP,CRL
❖PMI
▪ “你能做什么”
▪ 身份(角色)与角色(属性、权限)绑定
▪ 授权管理(签证)
▪ SOA-AA-ARA,LDAP,ACRL