信息系统基础知识
- 4.1 信息安全基础知识
- 4.1.1 信息安全的概念
- 4.1.2 信息存储安全
- 4.1.3 网络安全
- 4.2 信息系统安全的作用与意义
- 4.3 信息安全系统的组成框架
- 4.3.1 技术体系
- 4.3.2 组织机构体系
- 4.3.3 管理体系
- 4.4 信息加解密技术
- 4.4.1 数据加密
- 4.4.2 对称密钥加密算法
- 4.4.3 非对称密钥加密算法
- 4.5 密钥管理技术
- 4.5.1 对称密钥的分配与管理
- 密钥的使用控制
- 密钥的分配
- 4.5.2 公钥加密体制的密钥管理
- 4.5.3 公钥加密分配单钥密码体制的密钥
- 4.6 访问控制及数字签名技术
- 4.6.1 访问控制技术
- 访问控制的基本模型
- 访问控制的实现技术
- 4.6.2 数字签名
- 数字签名的条件
- 对称密钥签名
- 公开密钥签名
- 4.7 信息安全的抗攻击技术
- 4.7.1 密钥的选择
- 4.7.2 拒绝服务攻击与防御
- 4.7.3 欺骗攻击与防御
- ARP欺骗
- DNS欺骗
- IP欺骗
- 4.7.4 端口扫描
- 4.7.5 强化TCP/IP堆栈以抵御拒绝服务攻击
- 4.7.6 系统漏洞扫描
- 4.8 信息安全的保障体系与评估方法
- 4.8.1 计算机信息系统安全保护等级
- 4.8.2 安全风险管理
4.1 信息安全基础知识
4.1.1 信息安全的概念
信息安全包括5个基本要素:机密性、完整性、可用性、可控性与可审查性。
信息安全的范围包括:设备安全、数据安全、内容安全和行为安全。
4.1.2 信息存储安全
信息的存储安全包括信息使用的安全(如用户的标识与验证、用户存取权限限制、安全问题跟踪等)、系统安全监控、计算机病毒防治、数据的加密和防止非法的攻击等。
4.1.3 网络安全
- 网络安全漏洞
- 网络安全威胁
- 安全措施的目标
4.2 信息系统安全的作用与意义
略
4.3 信息安全系统的组成框架
4.3.1 技术体系
从实现技术上来看,信息安全系统涉及
- 基础安全设备
- 计算机网络安全
- 操作系统安全
- 数据库安全
- 终端设备安全等多方面技术
4.3.2 组织机构体系
组织机构体系是信息系统安全的组织保障系统,由机构、岗位和人事机构三个模块构成。
- 机构分为决策层、管理层和执行层;
- 岗位负责特定安全事务;
- 人事机构负责员工素质教育、业绩考核和安全监管。
这样的体系能有效确保信息系统安全管理的合理性和有效性。
4.3.3 管理体系
管理是信息系统安全的灵魂。信息系统安全的管理体系由
- 法律管理
- 制度管理
- 培训管理
4.4 信息加解密技术
4.4.1 数据加密
明文加密 解密明文
4.4.2 对称密钥加密算法
- DES(Data Encryption Standard)
- IDEA(International Data Encryption Algorithm)
- 高级加密标准 (Advanced Encryption Standard,AES)
4.4.3 非对称密钥加密算法
RSA(Rivest Shamir and Adleman)
4.5 密钥管理技术
4.5.1 对称密钥的分配与管理
密钥的使用控制
在进行保密通信时,控制密钥的安全性至关重要。密钥分配技术直接影响密码系统的强度,以下是两种常见的控制密钥安全性的技术:
- 密钥标签:例如DES中的密钥控制,使用8个校验位来作为密钥的标签。其中前3位分别代表了该密钥的不同信息:主/会话密钥、加密、解密。但是长度受限且需要在解密后才能使用,带来了一定的不便。
- 控制矢量:通过分配若干字段来说明不同情况下密钥的允许使用或不允许使用,其长度可变。在密钥分配中心(KDC)生成密钥时,将控制矢量加入密钥中。恢复会话密钥时,用户需要使用与KDC共享的主密钥以及KDC发送过来的控制矢量才能进行恢复,因此必须确保保留会话密钥和控制矢量之间的对应关系。
这些技术都旨在确保密钥的安全使用,从而提高保密通信的安全性。
密钥的分配
在两个用户A和B之间获得共享密钥的过程中,可以采用以下四种方式:
- 直接发送:用户A选择密钥并通过物理手段直接发送给用户B。
- 第三方选取:一个第三方在物理手段下选择密钥,并分别发送给用户A和B。
- 已有密钥加密:用户A和B事先已拥有一个密钥,当其中一方选择新密钥时,使用已有密钥对新密钥进行加密,然后发送给另一方。
- 三方保密信道:三个用户A、B、C各自拥有一条保密信道,其中用户C选择密钥后,通过各自的保密信道分别发送给用户A和B。
这些方式都是为了在通信过程中安全地分配共享密钥。具体使用哪种方式取决于实际情况和安全需求。
4.5.2 公钥加密体制的密钥管理
公开发布、公用目录表、公钥管理机构和公钥证书是四种公钥加密系统中常用的方法。它们都是为了解决公钥分发和验证的问题,以确保通信的安全性。
- 公开发布:用户将自己的公钥公开发布,其他用户可以获取并使用。但存在公钥被伪造的风险。
- 公用目录表:由可信实体或组织维护的公钥目录表,用户注册自己的公钥并定期更新。但目录管理员秘钥泄露可能导致伪造。
- 公钥管理机构:类似于公用目录表,但更严密控制公钥分配。用户向管理机构发送请求,机构用自己的秘钥加密后发送给用户。缺点是依赖于管理机构,可能成为系统瓶颈。
- 公钥证书:证书由证书管理机构为用户创建,包含用户的公钥、身份和时戳等信息,并用管理机构的秘钥签名。用户通过证书交换公钥,接收方使用管理机构的公钥验证证书,避免了统一机构管理的不便和安全隐患。
公钥证书相对于其他方法具有更高的安全性和便捷性,因为它不需要依赖于中心机构的实时交互。但仍需注意证书管理机构的安全性,防止私钥泄露和证书伪造。
4.5.3 公钥加密分配单钥密码体制的密钥
公钥加密分配单钥密码体制中,密钥的分配是通过使用非对称加密算法实现的。在这种体制中,每个用户都有一对密钥,包括公钥和私钥。
公钥用于加密数据,而私钥则用于解密数据。具体的密钥分配过程如下:
-
密钥生成:每个用户生成一对密钥,包括一个公钥和一个私钥。公钥是公开的,可以被其他用户获得,而私钥必须保持机密,只有拥有者才能知道。
-
公钥分发:用户将自己的公钥发布给其他用户。这可以通过不安全的通信渠道进行,因为公钥本身是不敏感的信息,不会影响系统的安全性。
-
密钥加密:当用户需要向其他用户发送加密信息时,使用目标用户的公钥对消息进行加密。只有拥有对应私钥的用户才能解密该消息。
-
密钥解密:接收到加密消息的用户使用自己的私钥对密文进行解密,从而获取原始的明文信息。
通过公钥加密分配单钥密码体制,密钥的分配和保密问题得到了解决。由于私钥只有拥有者知道,即使公钥被泄露,也不会对通信的安全性产生影响。同时,该体制还具有数字签名和身份认证等功能,进一步增强了通信的安全性和可靠性。
4.6 访问控制及数字签名技术
4.6.1 访问控制技术
访问控制的基本模型
访问控制是指根据控制策略或权限,主体对客体或其资源进行的授权访问。包括主体(用户或进程)、客体(信息、资源)和控制策略。实现访问控制需考虑认证、控制策略实施和审计。认证涉及主体和客体的互相认证,控制策略实施要确保合法用户合理使用信息资源并防止非法使用,审计则记录操作以防止滥用权限。
访问控制的实现技术
访问控制模型和实现访问控制是复杂的行为,需要确保授权用户的权限与其拥有的权限对应,并阻止非授权用户的行为。为了方便讨论,以文件的访问控制为例进行具体说明。
-
访问控制矩阵:通过矩阵形式表示访问控制规则和授权用户权限的方法。每个主体和客体都有对应的访问方式。实现难度较大且存储空间需求大。
-
访问控制表:是最流行和常用的访问控制实现技术。每个客体有一个访问控制表,记录有权访问该客体的主体信息。可以方便地查询特定主体对某客体的访问权限。
-
能力表:与访问控制表相对应,按行保存访问矩阵。每个主体有一个能力表,记录其对系统中每个客体的访问权限信息。可以方便地查询某主体的所有访问权限。
-
授权关系表:对应于访问矩阵中的非空元素。每一行代表某主体对某客体的访问权限信息。可以按主体或客体排序,实现类似能力表或访问控制表的查询效率。
需要注意的是,访问控制矩阵的实现较为复杂且存储空间需求大,而访问控制表和能力表可以方便地查询某主体对某客体的访问权限。授权关系表则可用于安全数据库系统的访问控制安全机制。
4.6.2 数字签名
数字签名的条件
数字签名的条件包括:签名可信、不可伪造、不可重用、文件不可改变、不可抵赖。
但在现实生活和计算机环境中,这些特性并非完全真实,因此数字签名技术应运而生,以解决签名易于复制和文件易于修改等问题。
对称密钥签名
对称密钥签名是一种不常见的签名方式,因为通常对称密钥更适合用于加密而不是签名。在实际应用中,数字签名通常使用公钥加密技术(非对称加密),而不是对称密钥。
举个简单的例子,假设Alice和Bob之间共享一个对称密钥K,并且他们信任Charlie作为仲裁人。如果Alice要向Bob发送一条消息M,并且需要对消息进行签名,可以采用以下步骤:
- Alice将消息M使用对称密钥K进行加密,得到Ciphertext。
- Alice将Ciphertext发送给Charlie。
- Charlie收到Ciphertext后,使用共享的对称密钥K对消息进行解密,得到原始消息M。
- Charlie确认消息M的真实性,并生成一个签名,然后将签名发送给Bob。
- Bob接收到消息和签名后,使用共享的对称密钥K验证签名的有效性。
这种对称密钥签名的方式相对较为简单,但也存在安全性和可信度的问题,因为签名过程中没有使用公钥和私钥来进行加密和解密,容易受到中间人攻击。因此,在实际应用中,对称密钥签名并不常见,而公钥加密技术通常被用于数字签名。
公开密钥签名
公开密钥签名(也称为非对称密钥签名)是一种常见的数字签名方式,它使用了公钥加密技术。下面是一个简单的例子来说明公开密钥签名的过程:
- Alice生成一对密钥:私钥(私有的、保密的)和公钥(公开的)。
- Alice将公钥分享给Bob,以便Bob验证Alice发送的签名。
- Alice要发送一条消息M给Bob,并对该消息进行签名。
- Alice使用私钥对消息M进行加密,生成签名S。
- Alice将消息M和签名S发送给Bob。
- Bob收到消息M和签名S后,使用Alice的公钥解密签名S,得到解密的结果S’。
- Bob使用解密后的签名S’与接收到的消息M进行比较。如果两者匹配,那么说明消息确实是由Alice签名的,且在传输过程中没有被篡改。
公开密钥签名的优势在于,接收方只需要拥有发送方的公钥即可验证签名,而不需要知道私钥。这样可以确保消息的真实性和完整性,同时防止伪造和篡改。
请注意,上述示例仅为了说明公开密钥签名的原理,并不是具体的加密算法实现。在实际应用中,常用的公开密钥签名算法包括RSA、DSA和ECDSA等。
4.7 信息安全的抗攻击技术
4.7.1 密钥的选择
密钥在概念上被分成两大类:数据加密密钥 (DK) 和密钥加密密钥 (KK)。
密钥生成需要考虑3个方面的因素。
- 增大密钥空间
- 选择强钥
- 密钥的随机性
4.7.2 拒绝服务攻击与防御
- 拒绝服务攻击(DoS)是故意使目标系统无法正常工作或无法提供正常服务的行为。传统的DoS攻击包括消耗资源、破坏或更改配置信息、物理破坏或改变网络部件、利用服务程序中的处理错误等方法。
- 分布式拒绝服务攻击(DDoS)是对传统DoS攻击的发展,攻击者控制多个计算机同时向目标发起攻击。
防御拒绝服务攻击可以采取以下措施:
- 加强数据包特征识别
- 设置防火墙监视主机端口
- 统计通信数据量
- 修复系统漏洞等。
4.7.3 欺骗攻击与防御
ARP欺骗
ARP欺骗(Address Resolution Protocol Spoofing) ARP是一种将IP地址映射到MAC地址的协议,用于在局域网中实现通信。ARP欺骗是指攻击者通过发送伪造的ARP相应包来篡改网络中的ARP缓存表,从而实现欺骗其他设备的目的。
攻击者可以发送伪造的ARP响应,宣称自己是另一个设备的MAC地址,使得目标设备将数据发送到攻击者的设备上。这样,攻击者就可以窃取通信数据或者进行中间人攻击,修改、篡改通信内容。
为了防止ARP欺骗攻击,可以采取以下措施:
- 使用静态ARP表,手动维护IP地址和MAC地址的对应关系。
- 启用ARP检测机制,及时检测并报告网络中的ARP欺骗行为。
- 使用网络流量监控工具,检测异常的ARP请求与响应。
DNS欺骗
DNS欺骗(Domain Name System Spoofing) DNS是用于将域名解析为IP地址的系统,它负责将用户输入的域名转换为可以被计算机理解的IP地址。DNS欺骗是指攻击者篡改DNS查询结果,将用户请求的域名解析到错误的IP地址上。
攻击者可以通过多种方式进行DNS欺骗,如中间人攻击、DNS缓存污染等。攻击者可能会修改或篡改DNS服务器的响应,将用户的域名解析到恶意网站上,从而进行钓鱼、间谍、劫持等攻击。
为了防止DNS欺骗攻击,可以采取以下措施:
- 使用可信任的DNS服务器,避免使用未知或不可信的DNS服务器。
- 在本地主机上使用DNS缓存,减少对外部DNS服务器的依赖。
- 定期更新操作系统和应用程序的补丁,以修复可能存在的DNS漏洞。
IP欺骗
IP欺骗(IP Spoofing) IP欺骗是指攻击者伪造IP数据包的源IP地址,使得接收方无法准确识别数据包的真实来源。这种攻击方式经常用于隐藏攻击者的身份、进行分布式拒绝服务(DDoS)攻击等。
通过IP欺骗,攻击者可以伪装成合法的源IP地址发送恶意数据包,迷惑目标主机或网络设备,绕过安全措施,并对目标进行攻击。
为了防止IP欺骗攻击,可以采取以下措施:
- 使用防火墙或入侵检测系统(IDS/IPS)等安全设备,识别和拦截伪造的IP数据包。
- 在网络中使用加密协议(如IPsec)保护通信的机密性和完整性。
- 使用反欺骗技术,比如在路由器上配置反源地址验证(Reverse Path Forwarding,RPF)等机制,检查数据包的源IP地址的合法性。
4.7.4 端口扫描
如果入侵者掌握了目标主机开放了哪些服务,运行何种操作系统,他们就能够使用相应的手段实现入侵。
-
端口扫描原理是基于计算机网络中的端口概念,通过与目标主机的特定端口建立连接来确定端口是否开放。常见的扫描方法包括全TCP连接、半打开式扫描(SYN扫描)、FIN扫描和第三方扫描。
-
全TCP连接是使用标准的TCP连接建立方式,易被目标主机记录。SYN扫描则发送SYN数据段到目标端口,并根据回应判断端口状态,以加快扫描速度并降低被记录的可能性。FIN扫描则通过发送FIN字段来判断端口是否活动,不涉及建立TCP连接部分,因此更安全。第三方扫描利用第三方主机进行扫描,通常使用低安全防御的个人计算机作为"肉鸡"进行代理扫描。
4.7.5 强化TCP/IP堆栈以抵御拒绝服务攻击
- 同步包风暴 (SYN Flooding)
SYN Flood攻击是一种常见的DoS攻击方式,通过发送大量伪造的TCP连接请求至目标主机的TCP服务端口,填满其TCP缓存队列,导致服务器忙于处理伪造连接请求而无法响应正常请求。这种攻击会消耗大量服务器资源,甚至导致堆栈溢出崩溃。攻击者通常会伪装源地址,发送大量的伪造SYN包,以实施攻击。 - ICMP攻击
ICMP协议是TCP/IP协议集中的子协议,用于传递控制信息,如报告错误和交换状态信息。通过发送ICMP回应请求消息并记录回复消息,可以用于故障排查。然而,ICMP协议的特点也使其容易被攻击,例如利用ICMP数据包最大尺寸限制来导致TCP/IP堆栈崩溃和主机死机的攻击。 - SNMP攻击
SNMP是TCP/IP网络中的管理协议,允许各种设备和软件与管理软件通信并报告其状态。然而,SNMP也可以被用于控制设备和产品,改变通信流、数据包优先级甚至断开连接。如果入侵者具备相应能力,就能完全接管网络。
4.7.6 系统漏洞扫描
系统漏洞扫描是对计算机信息系统进行检查,以发现可能被黑客利用的漏洞。根据底层技术,可以将漏洞扫描分为基于网络和基于主机两种类型。
-
基于网络的漏洞扫描通过网络扫描远程计算机中的漏洞。它利用漏洞数据库模块来检测不同操作系统的漏洞信息,并通过用户配置控制台设置扫描目标和漏洞。扫描引擎模块根据设置构造数据包发送到目标系统,并与漏洞数据库进行比较,判断漏洞是否存在。扫描结果存储器和报告生成工具生成扫描报告。基于网络的漏洞扫描器的优点是价格相对低廉、不需要目标系统管理员参与和在目标系统上安装额外软件。
-
基于主机的漏洞扫描器原理类似于基于网络的扫描器,但体系结构不同。基于主机的扫描器在目标系统上安装代理或服务,以访问文件和进程,从而能够扫描更多的漏洞。它具有扫描的漏洞数量多、集中化管理和网络流量负载小的优点。
总之,系统漏洞扫描是评估系统安全性能的重要组成部分,基于网络和基于主机是常用的扫描方法,各自具有不同的优点。
4.8 信息安全的保障体系与评估方法
4.8.1 计算机信息系统安全保护等级
《计算机信息系统安全保护等级划分准则》规定了计算机系统安全保护能力的5个等级:
- 第1级:用户自主保护级。该级别的计算机信息系统通过隔离用户与数据,使用户具备自主安全保护的能力。它提供访问控制,保护用户和用户组信息,防止非法读写与破坏。
- 第2级:系统审计保护级。与用户自主保护级相比,该级别的计算机信息系统实施了更细粒度的自主访问控制,通过登录规程、审计安全相关事件和资源隔离,使用户对自己的行为负责。
- 第3级:安全标记保护级。该级别的计算机信息系统具有系统审计保护级的功能,并提供安全策略模型、数据标记以及主体对客体强制访问控制的描述。它能准确地标记输出信息,并消除测试中发现的错误。
- 第4级:结构化保护级。该级别的计算机信息系统建立在明确定义的形式化安全策略模型之上,要求将自主和强制访问控制扩展到所有主体与客体,并考虑隐蔽通道。它加强了鉴别机制、支持管理员和操作员的职能、提供可信设施管理和增强了配置管理控制。系统具有较强的抗渗透能力。
- 第5级:访问验证保护级。该级别的计算机信息系统满足访问监控器需求,仲裁主体对客体的全部访问。访问监控器本身是抗篡改的,需要足够小、可分析和测试。它排除了不必要的代码,降低复杂性。系统支持安全管理员职能、扩展审计机制并提供系统恢复机制。系统具有很高的抗渗透能力。
4.8.2 安全风险管理
- 安全风险是由系统脆弱性和威胁导致的安全事件影响,信息安全风险评估对其进行科学评价,评估过程中需考虑脆弱性、威胁和负面影响。
- 风险评估需确定范围和目标,建立组织结构,采用系统性的评估方法,并获得最高管理者批准。
- 风险评估形式分为自评估和他评估,前者由信息系统拥有者进行,后者由上级主管机关或业务主管机关进行具有强制性的检查。
- 风险评估要素包括脆弱性、资产、威胁、风险和安全措施,评估工作围绕这些要素展开,需要考虑业务战略、资产价值、安全事件和残余风险等因素。
- 对资产进行分类和赋值,考虑资产对业务的重要性,以及可能的安全事件影响。
- 安全威胁包括人为因素和环境因素,通过威胁识别和分析,进行风险评估。
- 脆弱性评估涉及技术和管理两个方面,需要考虑各个层面的安全问题,采用问卷调查、人员问询、工具扫描、手动检查、文档审查、渗透测试等方法。
- 风险计算模型包含信息资产、弱点/脆弱性、威胁等要素,计算过程包括资产识别、威胁分析、脆弱性识别、安全事件可能性计算,以及最终的风险值计算。