笔记 | 2022本科_计算机安全
2022年春 计算机安全期末复习 目录
第一章 计算机安全综述
1.1 安全的含义、概念与安全威胁
绝对化的安全并不存在,安全通常指 客观事物的危险程度能够被人们普遍接受的状态。
安全不是技术问题,是人和管理的问题。
一个真正的安全系统应该整体布局于 软件、硬件、网络、人、财物 与 企业活动。
人的因素是信息安全中 最薄弱的环节,社会工程学 定位在计算机信息安全工作链路的这个最脆弱的环节上。
安全是一种 攻防对抗 ,攻防对抗之间的较量将会一直进行下去。
1.2 计算机安全的威胁
主要体现在:
- 泄露服务
- 破坏信息
- 拒绝服务
分类(根据威胁的来源)
- 内部威胁(大多数):系统的合法用户以非授权方式访问系统。
保护方法:- 对工作人员进行仔细审查
- 自己检查硬件、软件、安全策略和系统机制,以便在一定程度上保证运行的正确性
- 审计跟踪以提高测出这种攻击的可能性
- 外部威胁:也称远程攻击。
可使用方法:- 搭线(主动、被动)
- 截取辐射
- 冒充为系统授权用户,或冒充为系统组成部分
- 为鉴别和访问控制机制设置旁路
具体五大类威胁:
- 环境安全构成的威胁:接收电磁波辐射造成信息泄露、辅助保障系统中断或不正常、自然因素危害。
- 计算机的软硬件故障:电源不稳、设备环境等使计算机或网络部分设备暂时或永久失效。一般为突发。
- 人为的无意失误:包括程序设计错误、误操作、无意中损坏和无意中泄密。
- 人为的恶意攻击
- 主动攻击:以各种方式有选择地破坏信息(如:修改、删除、伪造、添加、重放、乱序、冒充等)。
- 被动攻击:在不干扰网络信息系统正常工作的情况下进行侦收、截获、窃取、破译和业务流量分析及电磁泄漏等。
- 计算机病毒与恶意软件
★ 1.3 CIA 三元组目标——计算机安全的目标
保证系统资源的保密性(Confidentiality)、完整性(Integrity)和可用性(Availiability)。
保密性 是指确保信息不暴露给未授权的实体或进程。即信息的内容不会被未授权的第三方所知。这里所指的信息不但包括国 家秘密,而且包括各种社会团体、企业组织的工作秘密及商业秘 密,个人的秘密和个人私密(如浏览习惯、购物习惯)。防止信
息失窃和泄露的保障技术称为保密技术。
完整性 是指信息不被偶然或蓄意地删除、修改、伪造、乱序、重放、插入等的特性。只有得到允许的人才能修改实体或进程,并且能够判别出实体或进程是否已被篡改。即信息的内容不能被未授权的第三方修改。信息在存储或传输时不被修改、破坏,不出现信息包的丢失、乱序等。
可用性 是指无论何时,只要用户需要,信息系统必须是可用的,也就是说信息系统不能拒绝服务。网络最基本的功能是向用户提供所需的信息和通信服务,而用户的通信要求是随机的,多方面的(话音、数据、文字和图像等),有时还要求时效性。网络必须随时满足用户通信的要求。攻击者通常采用占用资源的手段阻碍授权者的工作。可以使用访问控制机制,阻止非授权用户进入网络,从而保证网络系统的可用性。增强可用性还包括如何有效地避免因各种灾害(战争、地震等)造成的系统失效。
CIA 概念的阐述源自信息技术安全评估标准(Information Technology Security Evaluation Criteria,ITSEC),它也是信 息安全的基本要素和安全建设所应遵循的基本原则。除此之外还有 不可抵赖性、可鉴别性、真实性、可靠性、可控性等。它们之间是
相互联系的。
1.4 可信计算机系统评价准则(TCSEC 桔皮书)
是什么:对信息安全产品或系统进行安全水平测定、评估的一类标准。
为什么:安全评估是普通用户信任一种安全产品的唯一选择。
- D 级:最低保护
无需任何安全措施。
操作系统:DOS、Windows、苹果的 Mac System 7.1 - C1级:自主的安全保护
系统能够把用户和数据隔开,用户可以根据需要采用系统提供的访问控制措施来保护自己的数据,系统中必有一个防止破坏的区域,其中包含安全功能。用户拥有注册账号和口令,系统通过此来判断用户是否合法,并决定访问权。 - C2 级:访问控制保护
控制粒度更细,使得允许或拒绝任何用户访问单个文件成为可能。系统必须对所有的注册、文件的打开、建立和删除进行记录。审计跟踪必须追踪到每个用户对每个目标的访问。
操作系统:UNIX系统、Win NT系统。 - B1 级:有标签的安全保护
系统中每个对象都有一个敏感性标签而每个用户都有一个许可级别。许可级别定义了用户可处理的敏感性标签。系统中的每个文件都按内容分类并标有敏感性标签,任何对用户许可级别和成员分类的更改都受到严格控制。
操作系统:OSF/1。 - B2 级:结构化保护
系统的测试和实践要经过彻底的测试和审查。系统应结构化为独立而明确的模块,实施最少特权原则。必须对所有的目标和实体实施访问控制。政策要有专职人员负责实施,要进行隐蔽信道分析。系统必须维护一个保护域,保护系统的完整性,防止外界干扰。
操作系统:国内自主开发的UnixWare 2.1/ES - B3 级:安全域
系统的关键安全部件必须理解所有客体到主体的访问,必须是防窜扰的,必须足够小以便分析测试。 - A1 级:系统保护
系统的设计者必须按照一个正确的设计规范来分析系统。对系统分析后,设计者必须运用核对技术来确保系统符合设计规范。所有安装操作都要由管理员进行;每一步安装操作要有正式文档。
安全等级由低至高依次为 D、C1、C2、B1、B2、B3 和 A 级
通用安全评价准则(CC)
CC 的重要概念:
- PP(Protection Profile)及其评估:
PP 是一类 TOE 基于其应用环境定义的一组安全要求,不管这些要求如何实现,实现问题交由具体 ST 实现,PP 确定在安全解决方案中的需求。 - ST (Security Target)及其评估:ST 是依赖于具体的 TOE 的一组安全要求和说明,用来指定 TOE 的评估基础。ST 确定在安全解决方案中的具体要求。
- TOE (Target of Evaluation)及其评估:TOE 评估对象,作为评估主体的 IT 产品及系统以及相关的管理员和用户指南文档。
CC 的组成:
- 第 1 部分:简介和一般模型,定义 IT 安全评估的一般概念与原则,并提出一个评估的一般模型;描述 CC 的每一部分对每一目标读者的用途;附录中还详细介绍了保护轮廓 PP(Protect Profile)、安全目标 ST(Security Target)的结构和内容。
- 第 2 部分:安全功能要求,包含良好定义的且较易理解的安全功能要求目录,它将作为一个表示 IT 产品和系统安全要求的标准方式。该部分按“类一子类一组件”的方式提出安全功能要求。
- 第 3 部分:安全保证要求,包含建立保证组件所用到的一个目录,它可被作为表示 IT 产品和系统保证要求的标准方式。第 3 部分也被组织为与第 2 部分同样的“类一子类一组件”结构。
我国的安全标准
1999 年,GB17895-1999《计算机信息系统安全保护等级划分准则》,于 2001 年 1 月 1 日实施。等级由高到低分为:
- 自主保护级:相当于 C1 级
- 系统审计保护级:相当于 C2 级
- 安全标记保护级:相当于 B1 级,属于强制保护
- 结构化保护级:相当于 B2 级
- 访问验证保护级:相当于 B3 ~ A1 级
实际应用中主要考核的安全指标:身份认证、访问控制、数据完整性、安全审计、隐蔽信道分析等。
2. 安全模型
指在特定环境中为保证提供一定级别安全保护所奉行的基本思想。
采用动态防御模型的原因:
- 防御思想的转变
- 安全威胁、安全漏洞都具有动态的特性
- 能正确评价系统安全的风险
★ 重要的动态防御模型:PPDR 和 PDRR 安全模型
PPDR(P2DR) 与 PDRR 为计算机安全模型的动态防御体系模型,防御思想为预防—检测—攻击响应—恢复相结合。
PPDR 模型
包含 4 个主要部分:
- 安全策略 Policy
- 所有的防护、检测、响应都是依据安全策略实施的。
- 为安全的管理提供指导方向和支持手段。
- (模型核心)安全策略体系的建立:策略制定、评估、执行。
- 保护 Protection
- 信息保护技术:对计算机软、硬件加密保护技术,网络保护技术。
- 信息传输保护:对传输信道保护,对传输信息保护。
- 检测 Detection
- 动态响应和加强防护的依据、强制落实安全策略的工具。
- 对象:只针对系统自身的脆弱性及外部威胁。
- 响应 Response
- 在检查到安全漏洞后必须及时做出正确响应,将系统调整到安全状态。
- 分为紧急响应和异常响应。
- 提高响应实时性,制定紧急响应方案。
特点:
- 防御的动态性:强调了系统安全的动态性和管理的持续性,以入侵检测、漏洞评估和自适应调整为循环来提高网络安全。
- 基于时间的特性:引入实时检测的概念。
安全目标:尽可能地增大保护时间,尽量减少检测时间和响应时间。
理论体系与数学公式
论述基础:基于时间的安全理论(Time Based Security)数学模型
用时间衡量一个体系的安全性和安全能力(不管是攻击行为、防护行为、检测行为和响应行为等等都要消耗时间)。
- 入侵:攻击成功花费的时间(即安全体系提供的防护时间)Pt。
- 检测系统:检测到入侵行为花费时间 Dt,检测到入侵后系统做出响应动作(将系统调整到正常状态)时间 Rt。
数学公式表达安全要求
- 公式 1:Pt > Dt + Rt,针对于需要保护的安全目标,如果上述数学公式满足即防护时间大于检测时 间加上响应时间,也就是在入侵者危害安全目标之前就能够被检测到并及时处理。
- 公式 2:Et = Dt + Rt ,若 Pt = 0,Dt与Rt的和就是该安全目标系统的暴露时间 Et。针对于需要保护的安 全目标,如果 Et 越小系统就越安全。
PDRR 模型
包含 4 部分:
- 防护 Protection(最重要部分):可以减少大多数入侵事件。
- 常用保护技术:
① 缺陷扫描
② 访问控制及防火墙
③ 防病毒软件与个人防火墙
④ 数据加密
⑤ 鉴别技术
- 常用保护技术:
- 检测 Detection:如果入侵发生则被检测出来。
- 阻止利用新的系统缺陷、新的攻击手段的入侵。
- 工具:入侵检测系统(IDS),一个硬件系统和软件程序,主要特征为检测环境与检测算法。
- 响应 Reaction:已知一个攻击(入侵)事件发生之后,进行处理。
- 负责部门(大规模网络中):计算机响应小组。
- 入侵事件的报警:
① 入侵检测系统报警
② 通过其他方式汇报 - 响应的主要工作:
① 紧急响应:当安全事件发生时采取应对措施
② 其他事件处理:包括咨询、培训和技术支持
- 恢复 Recovery:事件发生后,把系统恢复到原来的状态或比原来更安全的状态。
- 恢复的两个方面:
① 系统恢复:
1)修补该事件所利用的系统缺陷,不让黑客再次利用这样的缺陷入侵。包括系统升级、软件升级和打补丁等。
2)除去后门。
② 信息恢复
- 恢复的两个方面:
与 PPDR 模型的不同:
- 把信息的安全保护作为基础,将保护视为活动过程
- 用检测手段来发现安全漏洞,及时更正
- 同时采用应急响应措施对付各种入侵
- 在系统被入侵后,要采取相应的措施将系统恢复到正常状态
- 强调的是 自动故障恢复能力
APPDRR 网络安全模型
6 个组成部分:
- 风险评估(Assessment)
- 安全策略(Policy)
- 系统防护(Protection)
- 动态检测(Detection)
- 实时响应(Reaction)
- 灾难恢复(Restoration)
★ 为什么要进行风险评估
风险评估是计算机安全建设的基础和前提,它从风险管理的角度,运用科学的方法和手段,系统地分析网络与信息系统所面临的威胁及存在的脆弱性,并为防范和化解信息安全风险,保障网络和信息安全提供科学依据。
风险评估的 目的 就是了解系统目前与未来的风险所在,评估这些风险可能带来的安全威胁与影响程度,为安全策略的确定信息系统的建立及安全运行提供依据。
风险分析和评估是一个复杂的过程,一个完善的信息安全风险评估架构应该 具备 相应的标准体系技术体系组织架构业务体系和法律法规。
第二章 实体安全及其可靠性
★ 数据备份的三种策略
完全备份
每次都对自己的系统进行完全备份。
当发生数据丢失的灾难时,只需要用最近一次的备份数据,就可以恢复丢失的数据。
特点:增加存储成本,备份时间较长。
增量备份(Incremental Backup)
开始进行一次完全备份,接下来只对新的或被修改过的数据进行备份。
特点:节省了时间和空间,但是数据恢复比较麻烦。
差分备份(Differential Backup)
管理员定期(周、月)进行一次系统完全备份。
在接下来的几天里,管理员再将当天所有与周、月不同的数据(新的或修改过的)备份到磁带上。
三种备份方式比较
★ 双机热备与双机互备的定义
双机集群基本原理
一个集群包含两台拥有共享数据存储空间的服务器(工作机与备份机)。任何一台服务器运行一个应用时,应用数据被存储在共享的数据空间内。每台服务器的操作系统和应用程序文件存储在其各自的本地储存空间上。
后台应用为客户端提供一个逻辑的虚拟主机或IP,客户端用户只需要用到这一地址。当后台服务有一台服务器出现故障点,另一台服务器就自动将本机地址或IP替换为逻辑的主机或IP,从而保证客户端用户的前台操作不出现问题。
双机热备 定义
正常 时:工作机为信息系统提供支持,备份机监视工作机的运行情况。
异常 出现:工作机不能支持信息系统运营时,备份机主动接管工作机的工作,继续支持信息的运营,从而保证信息系统能够不间断地运行。
缺点:正常时备份机空转,不提供服务。
双机互备 定义
正常 时:两台工作机均为信息系统提供支持,并互相监视对方的运行情况。
异常 出现:一台服务器不能支持信息系统正常运营,另一服务器则主动接管异常机的工作,继续支持信息的运营,从而保证信息系统能够不间断地运行。而达到不停机的功能。
缺点:当一台服务器故障时,正常运行服务器的负载会有所增加,客户机的响应会变慢。
★ RAID 0-5 大体上是如何实现的
廉价冗余磁盘阵列 RAID(Redundant Array of Inexpensive Disks)提供了服务器中接入多个磁盘(专指硬盘)时,以磁盘阵列方式组成一个超大容量、响应速度快、可靠性高的存储子系统的方案。
RAID 0 冗余无校验的磁盘阵列
数据 同时分布 在各个磁盘驱动器上,分块无校验,无冗余存储,不提供真正容错性。带区化至少需要 2 个硬盘,可支持 8/16/32 个磁盘。读写速度在 RAID 中最快,但任何一个磁盘驱动器损坏都会使整个 RAID 系统失效。一般用在对数据安全要求不高,但对速度要求很高的场合。
优点:允许多个小区组合成一个大分区,更好地利用磁盘空间,延长磁盘寿命,多个硬盘并行工作,提高了读写性能。
缺点:不提供数据保护,任一磁盘失效,数据可能丢失,且不能自动恢复。
RAID 1 镜像磁盘阵列
每一组盘至少两台,数据同时以 同样的方式 写到两个盘上,两个盘 互为镜像。磁盘镜像可以是分区镜像、全盘镜像。容错方式以空间换取,实施可以采用镜像或者双工技术。主要用在对数据安全性要求很高,而且要求能够快速恢复被损坏的数据的场合。
优点:具有最高可靠性,策略简单,恢复数据时不必停机。
缺点:有效容量只有总容量的 1/2,利用率 50%。由于磁盘冗余,硬件开销较大,成本较高。
RAID 0+1
RAID 0+1 结合了 RAID 0 的性能和 RAID 1的可靠性。它不是成对地组织磁盘,而是把按照 RAID 0 方式产生的磁盘组全部映象到另一备份磁盘组中。
RAID 2 并行海明纠错阵列
在 RAID 0 的基础上增加了纠错能力。存储型 ECC 纠错类,采用海明冗余纠错码(Hamming Code Error Correction)、跨接技术和存储纠错数据方法,数据按位分布到磁盘上。磁盘台数由纠错码和数据盘数决定。磁盘驱动器组中的第一个、第二个、第四个……第
2
n
2^n
2n 个磁盘驱动器是专门的校验盘,用于校验和纠错,例如七个磁盘驱动器的 RAID 2,第一、二、四个磁盘驱动器是纠错盘,其余的用于存放数据。使用的磁盘驱动器越多,校验盘在其中占的百分比越少。
优点:对大数据量的输入输出有很高的性能。
缺点:少量数据的输入输出时性能不好。
RAID 2 很少实际使用。
RAID 3 奇偶校验并行位交错阵列
RAID 3 是在 RAID 2 基础上发展而来的,主要的变化是用相对简单的异或逻辑运算(XOR,exclusive OR)校验代替了相对复杂的汉明码校验,从而也大幅降低了成本。
RAID 3 至少需要3块磁盘,其一为校验盘。数据与 RAID 0 一样是分成条带(Stripe)存入数据阵列中,条带深度的单位为字节而不再是 bit。在数据存入时,数据阵列中处于同一等级的条带的 XOR 校验编码被即时写在校验盘相应的位置,所以彼此不会干扰混乱。读取时,则在调出条带的同时检查校验盘中相应的 XOR 编码,进行即时的 ECC。
优点:由于在读写时与RAID 0很相似,所以RAID 3具有很高的数据传输效率,适合较大的单位数据的读写。
缺点:不适合小单位数据的读写;校验磁盘没有冗余,若校验磁盘失效,数据很难恢复。
RAID 4 独立的数据硬盘与共享的校验硬盘
与 RAID 3 相比,RAID 4 则是一种相对独立的形式,这也是它与 RAID 3 的最大不同。
RAID 4 是 按数据块为单位存储 的,一个数据块是一个完整的数据集合,比如一个文件就是一个典型的数据块。RAID 4 这样按块存储可以保证块的完整,不受因分条带存储在其他硬盘上而可能产生的不利影响。
优点:只读一个扇区,只需访问一个磁盘。写一个扇区,只访问一个数据盘和一个校验盘。各磁盘可独立工作(扇区读写),读写并行。
缺点:奇偶盘单独,出错后数据很难恢复。校验在一个磁盘上,产生写性能瓶颈。
RAID 5 循环奇偶校验阵列
与 RAID 4 类似,但校验数据不固定在一个磁盘上,而是循环地依次分布在不同的磁盘上,也称 块间插入分布校验。RAID 5 即无独立校验盘的奇偶校验磁盘阵列,同样采用奇偶校验来检查错误,但没有独立的校验盘,校验信息分布在各个磁盘驱动器上。RAID 5 对大小数据量的读写都有很好的性能,它是目前采用最多、最流行的方式,至少需要 3 个硬盘。
优点:校验分布在多个磁盘中,写操作可以同时处理。为读操作提供了最优的性能。一个磁盘失效,分布在其他盘上的信息足够完成数据重建。
缺点:数据重建会降低读性能;每次计算校验信息,写操作开销会增大,是一般存储操作时间的 3 倍。
第四章 身份认证与访问控制
★ 给出口令,判定是否安全
不安全的口令有如下几种情况:
- 使用用户名(账号)作为口令。
- 使用用户名(账号)的变换形式作为口令。
- 使用自己或者亲友的生日作为口令。
- 使用常用的英文单词作为口令。
- 使用 5 位或 5 位以下的字符作为口令。
加强口令安全的措施
- 禁止使用缺省口令(即初始口令)。
- 定期更换口令。
- 保持口令历史记录,使用户不能循环使用旧口令。
- 用口令破解程序测试口令。(弱/中/强)
★ 动态口令认证中,挑战-响应认证的工作机制
Step 1. 登录请求:客户机首先向服务器发出登录请求,服务器提示用户输入用户 ID 和 PIN。
Step 2. 挑战:服务器通过一个随机串 X(Challenge)给插在客户端的智能卡作为验证算法的输入,服务器则根据用户 ID 取出对应的密钥 K 后,利用发送给客户端的随机串 X,在服务器上用加密引擎进行计算,得到运算结果 RS。
Step 3. 响应:智能卡根据 X 与内在密钥 K 使用硬件加密引擎运算,也得到一个运算结果 RC,并发送给服务器。
Step 4. 验证:比较 RS 和 RC。
优点:
- 没有同步的问题。
- 网络上传输的是加密信息,安全性较高。
缺点:
- 使用者必须按较多的按钮,操作较繁复。
- 比较多输入的失误。
★ 动态口令认证中,时间同步认证的工作机制
Step 1. 用户 向服务器 发出登录请求,服务器提示用户输入 用户 ID 和 PIN(双因素口令)。
Step 2. 服务器 根据用户 ID 取出对应的密钥 K,使用 K 与服务器时间 T 计算动态密码 RS。
Step 3. 智能卡 根据内在的密钥 K 与客户机时间 T 使用相同的专用算法 计算动态密码 RC,并发送给服务器。
Step 4. 服务器比较 RS 和 RC,如果相同则用户合法。
完整的双因素口令是 PIN 码(客户首次使用令牌时设定)和令牌码组合而成的。
优点:易于使用。
缺点:
- 时间同步困难,可能造成必须重新输入新密码。软体认证卡采用 PC 的试可,很可能需要随时被修改。常常需要与服务器重新对时。
- 不如挑战/响应认证更安全。
★ 自主访问控制和强制访问控制的定义与区别
自主访问控制 定义
自主访问控制,又称任选访问控制(Discretionary Access Control, DAC)。“自主”意为一个拥有一定访问权限的主体,被看作是一定资源的所有者(也往往是创建者),在其拥有的资源范围内,所有者可以自主地直接或间接地将权限传给(分发给)主体,即可以自主地决定谁可以访问这些资源。
特点:授权的实施主体自主负责赋予和回收其他主体对客体资源的访问权限。
优点:应用灵活。
缺点:
- 信息在移动过程中其访问权限关系会被改变。
如用户 A 对客体 O 具有访问权限,而 B 没有。当 A 将对 O 的访问权限传递给 B 后,B 就有了对 O 的访问权限。从而使不具备对 O 访问权限的 B 可访问 O。 - 安全级别比较低,不太适合网络环境。
强制访问控制 定义
强制访问控制(Mandatory Access Control, MAC)是“强加”给访问主体的,即系统强制主体服从访问控制政策。
特征:对所有主体及其所控制的客体(如:进程、文件、段、设备)实施强制访问控制。为这些主体及客体指定敏感标记,这些标记是等级分类和非等级分类的组合,它们是实施强制访问控制的依据。系统通过比较主体和客体的敏感标记来决定一个主体是否能够访问某个客体。
用户级别:
- 最高秘密级(Top Secret)
- 秘密级(Secret)
- 机密级(Confidential)
- 无级别级(Unclassified)
级别为 T>S>C>U
访问模式:
- 下读(read down):用户级别 > 文件级别的读操作
- 上写(write up):用户级别 < 文件级别的写操作
- 下写(write down):用户级别 > 文件级别的写操作
- 上读(read up):用户级别 < 文件级别读操作
二者区别
DAC 的访问权限控制由拥有一定权限的访问主体传递,信息移动过程中访问权限关系可能改变。有利于信息共享,适于大规模应用。
MAC 的访问权限控制由系统“强加”,通过对主客体分别进行敏感标记,使主体根据级别高低访问客体。有利于信息保密,适于专用或简单系统应用
★ 进行访问控制的基本原则
最小权限原则:指“应限定网络中每个主体所必须的最小特权,确保可能的事故、错误、网络部件的篡改等原因造成的损失最小”。
多人负责原则:及授权分散化,对于关键的任务必须在功能上进行划分,由多人来共同承担,保证没有任何个人具有完成任务的全部授权或信息。
职责分离原则:不同的责任分派给不同的人员以期达到相互牵制,消除一个人执行两项不相容工作的风险。
★ 基于身份(角色)的访问控制的定义
基于角色的访问控制(Role Based Access Control, RBAC)是目前国际上流行的先进的安全访问控制方法,它通过分配和取消角色来完成用户权限的授予和取消,并且提供角色分配规则。安全管理人员根据需要定义各种角色,并设置合适的访问权限,而用户根据其责任和资历再被指派为不同的角色。这样,整个访问控制过程就分成两个部分,即 访问权限与角色关联,角色再与用户关联。从而实现了用户和访问权限的逻辑分离,是目前公认的解决大型企业的统一资源访问控制的有效方法。