访问量 ...
访客数 ...
总文章数 187 篇
博客已运行 2007 天

软考高级架构师-信息安全基础

2025.04.24

信息安全基础

信息安全的5个基本要素:

  1. 机密性(C):机密性是指网络信息不泄露给非授权的用户、实体或程序,能够防止非授权者获取信息。
  2. 完整性(I):完整性是指网络信息或系统未经授权不能进行更改的特性。
  3. 可用性(A):可用性是指合法许可的用户能够及时获取网络信息或服务的特性。
  4. 可控性:可控性是指可以控制授权范围内的信息流向及行为方式。
  5. 可审查性:可审查性是指对出现的信息安全问题提供调查的依据和手段

信息安全的范围包括:设备安全、信息安全、内容安全、行为安全。

网络安全漏洞,安全隐患主要表现如下:

  1. 物理安全性。
  2. 软件安全漏洞。
  3. 不兼容使用安全漏洞。
  4. 选择合适的安全哲理。

网络安全威胁主要表现形式如下:

  1. 非授权访问。
  2. 信息泄露或丢失。
  3. 破坏数据完整性。
  4. 拒绝服务攻击。
  5. 利用网络传播病毒。

安全措施的目标如下:

  1. 访问控制。
  2. 认证。
  3. 完整性。
  4. 审计。
  5. 保密。

信息加解密技术(重点)

信息加解密技术是为了解决信息在网络中传输过程中的机密性问题。一个密码系统的安全性是由秘钥来决定的。

对称加密

加密与解密使用同一把密钥。加密强度不高,但效率高,容易破解,秘钥分发困难。

核心特点:

  • 高效:算法简单,计算速度快,适合加密大量数据(如文件传输、数据库加密)。
  • 密钥管理难:通信双方需预先安全共享密钥,一旦泄露则安全性崩溃。
  • 密钥数量多:若多用户通信,需为每对用户分配独立密钥,管理复杂度高。

主要用做对消息明文进行加密传送,常用算法有:

  • AES(高级加密标准):主流选择,支持128/192/256位密钥。
  • DES(数据加密标准):56位秘钥,64位数据块,速度快、秘钥易产生。但已淘汰,因56位密钥易被暴力破解。
  • 3DES:DES的改进版,两个秘钥进行了三重加密,安全性提升但效率低。
  • ChaCha20:适用于移动设备的流加密算法。
  • RC-5、IDEA

非对称加密

使用公钥和私钥配对,公钥加密的数据需私钥解密,反之亦然。加密强度高,秘钥分发容易,但效率低。 实际场景使用对称加密传输数据,但是对称加密秘钥用非对称加密方式传输,以此来解决传输效率和安全性问题,这种技术被称为数字信封技术

核心特点:

  • 安全性高:解决了密钥分发问题,公钥可公开,私钥无需传输。
  • 计算复杂:算法基于数学难题(如大数分解、椭圆曲线离散对数),速度比对称加密慢1000倍以上。
  • 用途多样:支持加密、数字签名、身份认证等。

非对称加密常用做对秘钥加密,做数字签名,常见算法有:

  • RSA:2048或1024位秘钥。
  • Elgamal:安全性依赖于计算有限域上离散对数这一难题。
  • ECC:椭圆曲线算法。
  • Diffie-Hellman:密钥交换协议,不直接加密数据。

数字签名技术(重点)

数字签名技术是一种基于非对称加密的电子签名方法,用于验证数字信息的真实性、完整性不可否认性。 数字签名技术是为了解决信息在网络中传输过程中的完整性问题、身份的真实性问题、不可抵赖性问题,但是没有解决机密性问题。

数字签名过程:

  1. 首先用户生成一对数学关联的密钥,私钥(严格保密,用于签名),公钥(公开分发,用于验证);
  2. 对原始数据生成唯一的信息摘要,然后发送方用私钥加密该摘要,生成数字签名。将签名与原始数据一起发送给接收方;
  3. 接收方收到信息后,用签名者的公钥解密签名,得到原始摘要,并对收到的数据生成新摘要。若新旧摘要完全一致,则验证通过。

信息摘要为单向散列函数(hash函数)不可逆,有固定长度的散列值;摘要的用途是确保信息的完整性,防止篡改。 常用的消息摘要算法有MD5,SHA等,市场上广泛使用的MD5,SHA算法的散列值分别为128和160位,由于SHA通常采用的密钥长度较长,因此安全性高于MD5。

访问控制技术(重点)

访问控制的目标有两个:

  1. 防止非法用户进入系统:
  2. 阻止合法用户对系统资源的非法使用,即禁止合法用户的越权访问。

访问控制的三要素:

  1. 主体:可以对其他实体施加动作的主动实体,记为S;对客体如何操作,可理解为用户;
  2. 客体:是接受其他实体访问的被动实体,记为O;被主体操作,可理解为资源;
  3. 控制策略:是主体对客体的操作行为集和约束条件集,记为KS;理解为主体如何操作(读、写、执行)客体;

访问控制技术:

  1. 访问控制矩阵(ACM):矩阵中的每一格表示所在行的主体对所在列的客体的访问授权。 软考
  2. 访问控制列表:访问控制矩阵按列分解,具体如下: 软考
  3. 能力表:访问控制矩阵按行分解,具体如下: 软考
  4. 授权关系表:对应访问矩阵中每一个非空元素的实现技术。像安全数据库系统通常用授权关系表来实现其访问控制安全机制。

秘钥管理技术-数字证书

数字证书是密钥管理技术的核心载体,通过权威机构认证将用户身份与公钥绑定,建立网络信任体系。

数字证书内容:
软考

  1. 证书的版本信息:
  2. 证书的序列号,每个证书都有一个唯一的证书序列号;
  3. 证书所使用的签名算法;
  4. 证书的发行机构名称,命名规则一般采用X.500格式;
  5. 证书的有效期,现在通用的证书一般采用UTC时间格式,它的计时范围为1950-2049;
  6. 证书所有人的名称,命名规则一般采用X.500格式;
  7. 证书所有人的公开密钥;
  8. 证书发行者对证书的签名;

PKI公钥体系:
软考

  • CA(Certificate Authority)认证中心:负责颁发证书
  • RA(Registration Authority)注册审批机构:辅助CA处理证书,但是不能签发证书
  • 证书受理点
  • 秘钥管理中心

数字证书申请流程:

  1. 网站生成秘钥对,公钥(提交给CA)、私钥(自存);
  2. 网站向CA提交证书签名请求 (CSR),包含服务器公钥、域名等信息,并用服务器私钥签名证明所有权;
  3. CA用网站提交的公钥验证网站身份;
  4. CA用CA私钥对网站信息签名,生成数字证书;

数字证书验证:

  1. 当访问网站时,网站将数字证书发送给浏览器。浏览器从证书中提取网站信息和CA的数字签名。
  2. 浏览器用预置的CA公钥解密证书中的CA签名,得到原始摘要A(CA签发时计算的哈希值)。
  3. 浏览器重新计算证书中网站信息的哈希值,生成新摘要B。
  4. 对比摘要。若摘要A == 摘要B,则验证通过(证书完整且CA可信);若不一致则证书被篡改或伪造。

信息安全的保障体系

计算机信息系统安全保护等级划分准则(GB17859-1999):
软考

  1. 用户自主保护级:适用于普通内联网用户。 系统被破坏后,对公民、法人和其他组织权益有损害,但不损害国家安全社会秩序和公共利益。
  2. 系统审计保护级:适用于通过内联网或国际网进行商务活动,需要保密的非重要单位。 系统被破坏后,对公民、法人和其他组织权益有严重损害,或损害社会秩序和公共利益,但不损害国家安全。
  3. 安全标记保护级:适用于地方各级国家机关、金融机构、邮电通信、能源与水源供给部门、交通运输、大型工商与信息技术企业、重点工程建设等单位。 系统被破坏后,对社会秩序和公共利益造成严重损害,或对国家安全造成损害。
  4. 结构化保护级:适用于中央级国家机关、广插电视部门、重要物资储备单位、社会应急服务部门、尖端科技企业集团、国家重点科研机构和国防建设等部门。 系统被破坏后,对社会秩序和公共利益造成特别严重损害,或对国家安全造成严重损害。
  5. 访问验证保护级:适用于国防关键部门和依法需要对计算机信息系统实施特殊隔离的单位。 系统被破坏后,对国家安全造成特别严重损害。

安全架构设计

信息安全所面临的威胁主要分为四类:

  1. 人为蓄意破坏:被动攻击、主动攻击
  2. 灾害性攻击:水灾、火灾、地震、战争
  3. 系统故障:硬件故障、软件故障、供电故障
  4. 人员无意识行为:编程错误、操作错误、无意识泄密

其中人为蓄意破坏是重点,需要掌握。

  1. 被动攻击:收集信息为主,破坏保密性。
  2. 主动攻击:主要类别有:中断(破坏可用性)、篡改(破坏完整性)、伪造(破坏真实性)。

被动攻击主要有

  1. 窃听(网络监听):用各种可能的合法或非法的手段窃取系统中的信息资源和敏感信息。
  2. 业务流分析:通过对系统进行长期监听,利用统计分析方法对诸如通信频度、通信的信息流向、通信总量的变化等参数进行研究,从而发现有价值的信息和规律。
  3. 非法登录:有些资料将这种方式归为被动攻击方式。

主动攻击主要有

  1. 假冒身份:非法用户冒充成合法用户,特权小的用户冒充成为特权大的用户。
  2. 抵赖:否认自己曾经发布过的某条消息、伪造一份对方来信等。
  3. 旁路攻击:密码学中是指绕过对加密算法的繁琐分析,利用密码算法的硬件实现的运算中泄露的信息。如执行时间、功耗、电磁辐射等,结合统计理论快速的破解密码系统。
  4. 重放攻击:所截获的某次合法的通信数据拷贝,出于非法的目的而被重新发送。加【时间戳】能识别并应对重放攻击。
  5. 拒绝服务:破坏服务的可用性,对信息或其他资源的合法访问被无条件的阻止。
  6. XXS跨站脚本攻击:通过利用网页【开发时留下的漏洞】,通过巧妙的方法注入恶意指令代码到网页。
  7. CSRF跨站请求伪造攻击:攻击者通过一些技术手段欺骗用户的浏览器与访问一个自己曾经认证过的网站并执行一些操作(如转账或购买商品等)。
  8. 缓冲区溢出攻击:利用【缓冲区溢出漏洞】所进行的攻击。在各种操作系统、应用软件中广泛存在。
  9. SQL注入攻击:攻击者把SQL命令插入到Web表单,欺骗服务器执行恶意的SQL命令。

安全模型(重点)

安全模型分类:

  1. 基本模型:HRU
  2. 机密性模型:BLP(下读上写)、Chinese Wall
  3. 完整性模型:Biba(上读下写)、Clark-Wilson

BLP模型全称Bell-LaPadula模型是符合军事安全策略的计算机安全模型,简称BLP模型。 BLP模型的安全规则如下:

  • 简单安全规则:安全级别低的主体不能读安全级别高的客体;(不能上读)
  • 星属性安全规则:安全级别高的主体不能往低级别的客体写;(不能下写)
  • 强星属性安全规则:不允许对另一级别进行读写;
  • 自主安全规则:使用访问控制矩阵来定义说明自由存取控制。

BiBa模型主要用于防止非授权修改系统信息,以保护系统的信息完整性。该模型同BLP模型类似,采用主体、客体、完整性级别描述安全策略要求。 BiBa模型能够防止数据从低完整性级别流向高完整性级别,其安全规则如下:

  • 星完整性规则:表示完整性级别低的主体不能对完整性级别高的客体写数据;(不能上写)
  • 简单完整性规则:表示完整性级别高的主体不能从完整性级别低的客体读取数据;(不能下读)
  • 调用属性规则:表示一个完整性级别低的主体不能从级别高的客体调用程序或服务。

ChineseWall模型的安全策略的基础是客户访问的信息不会与当前他们可支配的信息产生冲突。 其访问客体控制的安全规则如下:

  • 与主体曾经访问过的信息属于同一公司数据集合的信息,即墙内信息可以访问;
  • 属于一个完全不同的利益冲突组的可以访问;
  • 主体能够对一个客体进行写的前提是主体未对任何属于其他公司数据集进行过访问。

软考

  • 定理1:一个主体一旦访问过一个客体,则该主体只能访问位于同一公司数据集的客体或在不同利益组的客体。
  • 定理2:在一个利益冲突组中,一个主体最多只能访问一个公司数据集

信息安全整体架构设计

需掌握WPDRRC模型。WPDRRC模型包括6个环节和3大要素。

  • 6个环节包括:预警、保护、检测、响应、恢复和反击。 模型蕴涵的网络安全能力主要是预警能力、保护能力、检测能力、响应能力、恢复能力和反击能力。
  • 3大要素包括人员、策略和技术。

软考

网络安全体系架构设计

开放系统互联安全体系结构是国际标准化组织(ISO)在ISO 7498-2标准(作为OSI基本参考模型ISO 7498的补充)中定义的一个概念性框架。 它是基于OSI参考模型的7层协议之上的信息安全体系结构,包括5种安全服务机制,8种安全机制。

软考

  • 认证框架:鉴别的基本目的是防止其他实体占用和独立操作被鉴别实体的身份。
    鉴别的方式如下:(1)已知的(用户名口令);(2)拥有的(门禁卡);(3)不改变的特性(指纹);(4)相信可靠的第3方建立的鉴别;(5)环境。 鉴别信息的类型包括交换鉴别信息、申请鉴别信息和验证鉴别信息。

  • 访问控制框架:访问控制决定开发系统环境中允许使用哪些资源,在什么地方适合阻止未授权访问的过程。
    软考

  • 机密性框架:机密性服务的目的是确保信息仅仅是对被授权者可用。 机密性机制:

  1. 通过禁止访问提供机密性;
  2. 通过加密提供机密性。
  • 完整性框架:完整性框架的目的是通过阻止威胁或探测威胁,保护可能遭到不同方式危害的数据完整性和数据相关属性完整性。 完整性机制的类型:
  1. 阻止对媒体访问的机制;
  2. 用以探测对数据或数据项序列的非授权修改的机制。
  • 抗抵赖框架:抗抵赖服务包括证据的生成,验证和记录,以及在解决纠纷时随即进行的证据恢复和再次验证。 抗抵赖由4个独立的阶段组成:证据生成->证据传输、存储及恢复->证据验证->解决纠纷

区块链技术

区块链技术是一种去中心化、分布式账本技术,通过密码学保障数据不可篡改和可追溯,重塑了数据存储与信任建立的方式。 区块链解决了双花问题和拜占庭将军问题。

区块链≠比特币,比特币底层采用了区块链技术。比特币交易在我国定性为非法运用。

区块链的特点:

  • 去中心化:由于使用分布式核算和存储,不存在中心化的硬件或管理机构,任意节点的权利和义务都是均等的,系统中的数据块由整个系统中具有维护功能的节点来共同维护。
  • 开放性:系统是开放的,如:区块链上的【交易信息是公开的】,不过【账户身份信息是高度加密的】。
  • 自治性:区块链采用基于协商一致的规范和协议(比如一套公开透明的算法)使得整个系统中的所有节点能够在去信任的环境自由安全的交换数据,使得对“人”的信任改成了对机器的信任,任何人为的干预不起作用。
  • 安全性(信息不可篡改):数据在多个结点存储了多份,篡改数据得改掉51%结点的数据,这太难。同时,还有其它安全机制,如:比特币的每笔交易,都由付款人用私钥签名,证明确实是他同意向某人付款,其它人无法伪造。
  • 匿名性(去信任):由于节点之间的交换遵循固定的算法,其数据交互是无需信任的(区块链中的程序规则会自行判断活动是否有效),因此交易对手无须通过公开身份的方式让对方自己产生信任,对信用的累积非常有帮助。

区块链核心机制:

  1. 去中心化账本
    • 数据存储在全网多个节点(无中心服务器)
    • 所有节点同步维护相同的交易记录链(分布式数据库)
  2. 防篡改原理
    • 修改数据需控制超过51%的节点(成本极高,近乎不可能)
    • 新数据添加需全网多数节点验证同意
  3. 记账权争夺(以比特币PoW为例)
    • 矿工通过计算区块哈希值(不断尝试随机数Nonce)
    • 找到满足条件的哈希(如前导有多个0)
    • 最先算出者获得记账权,广播新区块
    • 其他节点快速验证后更新账本

区块链是一个分布式账本,一种特殊的分布式数据库。

  1. 链表在多个结点存储,没有中心结点,数据不一致时,以“少数服从多数”原则执行。
  2. 所以要篡改成功,除非篡改51%的结点。

【共识算法(博奔论)/全民记账】一般有:POW(工作量证明)、PoS(权益证明)、DPoS(股份授权证明机制) 比特币采用了POW(工作量证明):争夺记账权=挖矿

计算出来的账单结点哈希值前13个字符为0,则符合规则,得到记账权。 有一个结点计算出结果,则广播消息告知其它结点,其它结点更新数据。