1 信息系统安全的基本概念
信息安全事关国家安全,事关社会稳定。
新一代计算机取得突破:光计算机、生物计算机(DNA计算机)、量子计算机。
信息安全问题严重:
- 敌对势力的破坏;
- 黑客入侵;
- 利用计算机进行经济犯罪;
- 计算机病毒严重危害信息安全;
- 信息战;
- 我国基础信息技术受控于国外;
- 信息安全人才培养建设。
信息安全问题的技术根源:
- 微机的安全结构过于简单:
- 去掉许多成熟的安全机制:存储器隔离保护、程序校验;
- 程序执行不经过认证;
- 执行程序可随意修改;
- 系统区域数据可随意修改;
- 信息技术发展使微机变成公用计算机;
- 网络技术发展使微机变成网络中的一部分;
- 操作系统存在安全缺陷。
计算机系统的安全服务功能(ISO 7498-2):
- 身份认证服务;
- 访问控制服务;
- 数据加密服务;
- 数据完整性服务;
- 不可否认服务;
- 安全审计。
信息系统安全 = 设备安全 + 数据安全 + 内容安全 + 行为安全:
- 安全 = Security(人为破坏安全) + Safety(非人为破坏安全);
- 设备安全 = 稳定性 + 可靠性 + 可用性;
- 数据安全 = 秘密性 + 真实性 + 完整性;
- 内容安全 = 政治健康 + 合法合规 + 符合道德规范;
- 行为安全 = 秘密性 + 完整性 + 可控性。
信息安全措施包括法律措施、教育措施、管理措施和技术措施等。
- 技术措施:硬件系统和操作系统安全是基础,密码、网络安全等是关键技术。
- 管理措施:对信息设备和机房的安全管理、对人的安全管理(主要);
理论上信息安全问题是一个不可判定问题,安全研究本质上是人与人的斗争。
密码学的理论基础是信息论和计算复杂性理论。
2 物理安全与容错
物理安全(实体安全),保护计算机设备、设施(网络和通信线路)免遭地震、水灾、火灾、有害气体和其他环境事故(如电磁污染等)破坏的措施和过程。
物理安全 = 环境安全 + 电源系统安全 + 设备安全 + 通信线路安全:
- 环境安全:消防报警、安全照明、不间断供电、温湿度控制、防盗报警;
- 电源系统安全:电力能源供应、输电线路安全、保持电源的稳定;
- 设备安全:硬件设备保持良好工作状态、设备运行日志、存储媒体安全;
- 通信线路安全:抗电磁泄漏、抗线路截获、抗电磁干扰。
失效(Failure):硬件物理特性异变,或软件不能完成规定功能。
故障(Fault):硬件或软件的错误状态,是失效在逻辑上的等效。故障可以用种类、值、影响范围和发生时间来描述。故障可按照逻辑性划分(逻辑/非逻辑),也可以按照时间划分(永久性/间隔性/偶然性)。
错误(Error):程序或数据结构中的故障表现形式,是故障和失效造成的后果。
容错设计软件可以有规定数目的故障但不失效,无容错设计软件故障即失效。
可靠性的含义:
- 广义:一切旨在避免、减少、处理、度量软/硬件故障的分析、设计、测试等方法、技术和实践活动;
- 狭义:软/硬件无效运行的定量量度。
容错(Fault Tolerant):故障一旦发生能自动检测并使系统恢复正常运行;当出现某些指定的硬件故障或软件错误时,系统仍能执行规定的一组程序,执行结果不包含系统中故障所引起的差错。
容错 -> 容错计算机系统 -> 容错技术。
容错技术从系统结构出发,提高系统的可靠性,与排错技术相补充,构成高可信度的系统。
容错技术的发展:
- 第一代计算机(晶体管):运算结果表决、存储器奇偶校验、双机比较配合恢复技术;
- 第二代计算机(电子管):避错技术、诊断程序;
- 第三代计算机(集成电路):容错计算机;
- 第四代计算机(大规模集成电路):商用容错计算机、分布式容错计算机系统、人工智能应用故障诊断专家系统。
容错技术的主要内容:
- 故障检测和诊断技术:
- 检测:联机(系统运行期间)、脱机(系统非运行期间);
- 定位;
- 测试。
- 故障屏蔽技术:故障效应达到模块输出以前利用冗余资源将故障影响掩盖。
- 元件级(二倍冗余、四倍冗余、桥接冗余);
- 逻辑级(超大规模集成电路设计);
- 系统级(均分负载系统、主备用系统、双机协同系统、紧耦合多处理机系统、分布式系统)。
- 冗余容错技术:
- 硬件冗余:常规设计的硬件之外附加备份硬件;
- 静态冗余:逻辑重叠技术;
- 动态冗余:辅助系统作主系统的热备份。
- 时间冗余:重复地执行指令或一段程序而附加额外的时间;
- 信息冗余:增加信息的冗余度,使其具有检错和纠错的能力;
- 软件冗余:用于测试、检测的附加程序。
- 动态冗余:程序回卷、多道程序表决法、模块恢复法;
- 静态冗余:把关键的系统程序和应用程序在系统中多点存储在主存或高速辅助存储器。
- 硬件冗余:常规设计的硬件之外附加备份硬件;
- 容错中的信息保护技术:防止信息被不正当存取或破坏,分为编码化与密码化、访问控制、内存保护、外存保护。
- 容错技术的发展和应用:电子商务、超大规模集成电路设计、设备端、智能化、开放化、标准化。
3 操作系统安全
操作系统的安全性在计算机信息系统的整体安全性中具有至关重要的作用。没有操作系统的安全性,信息系统的安全性是没有基础的。
国外安全操作系统的发展:Multics -> Adept-50 -> 形式化访问控制 -> 隐蔽通道 -> 引用监视器(Reference Monitor)、引用验证机制(Reference Validation Mechanism)、安全内核(Security Kernel) -> BLP模型 -> PSOS(Provably Secure Operating System) -> KSOS(Kernelized Secure Operating System) -> UCLA Secure Unix -> LINVS IV实验安全操作系统 -> Secure Xenix(安全通路) -> Tmach -> TUNIS(改进BLP) -> ASOS(Army Secure Operating System) -> OSF/1 -> Unix SVR4.1ES -> DTOS(Distributed Trusted Operating System) -> Flask。
国内安全操作系统的发展:Unix SVR4.2/SE安全增强包 -> COSIX V2.0安全子系统 -> 军用计算机安全评估准则 -> UnixWare V2.1安全增强包 -> 国标《计算机信息系统安全保护等级划分准则》 -> 国标第三级SecLinux -> 强林Linux -> SoftOS -> 红旗Linux -> 国标《信息技术安全技术 信息技术安全性评估准则》 -> 国产操作系统(中标麒麟、银河麒麟、中科方德、华为欧拉、华为鸿蒙、深度Deepin、统信UOS、工控嵌入式科银京成DeltaOS)。
安全策略:有关管理、保护和发布敏感信息的法律、规定和实施细则。
安全模型:对安全策略表达的安全需求的简单、抽象和无歧义的描述,描述了需要用哪种机制。
引用监视器(Reference Monitor)机制:
- 具有自我保护能力;
- 始终处于活跃状态;
- 设计的足够小以便于分析和测试,证明其实现的正确性;
- 不可旁路,所有系统调用(访问行为)必须经其检查。
安全内核:系统中与安全性实现有关的部分,包括引用验证机制、访问控制机制、授权机制和管理机制等。
- 完整性原则:主体引用客体必须通过安全内核;
- 隔离性原则:安全内核具有防篡改能力;
- 可验证性原则:软件工程、接口简单化、内核小型化、代码检查、安全测试、形式化描述和验证。
可信计算基(Trusted Computing Base,TCB):操作系统的安全性基于一些具体实施安全策略的可信软件和硬件,它们和负责系统安全管理的人员一起组成系统的可信计算基。
- 操作系统安全内核;
- 具有特权的程序和命令;
- 处理敏感信息的程序,如系统管理命令;
- 与TCB实施安全策略有关的文件;
- 其他相关的硬件、固件、软件;
- 负责系统安全管理的人员;
- 保障硬件和固件正确的程序和诊断软件。
操作系统的安全目标:
- 对用户进行身份识别;
- 根据安全策略,进行访问控制,防止对计算机资源的非法访问;
- 标识系统中的实体;
- 监视系统的安全运行;
- 确保自身的安全性和完整性。
操作系统的基本安全机制:
- 硬件安全机制:
- 存储保护:分段、分页;
- 运行保护:运行域/等级域机制、可信执行环境(TEE、ARM TrustZone、Intel SGX);
- I/O保护。
- 标识和鉴别:
- 标识:用户标识符,唯一且不可伪造;
- 鉴别:将用户标识符和用户联系的过程,往往通过口令(空间、加密、长度)和生物认证等技术。
- 访问控制:三大任务(授权、确定访问权限、实施访问权限)‘
- 自主访问控制(Discretionary Access Control,DAC):客体的属主可以自主地将权限转授给其他主体;
- 强制访问控制(Mandatory Access Control,MAC):客体的属主不可将权限转授给其他主体,主体对客体的权限根据安全规则确定;
- 基于角色的访问控制(Role Based Access Control,RBAC):根据用户在组织中的角色确定其权限,仍是强制的,不允许权限的转授。
- 最小特权管理:系统不应给用户超过执行任务所需特权以外的权限;
- 可信路径:用户通过不可信中间应用层和操作系统相互作用,需要保障用户和内核的通信;
- 安全审计:对系统中有关安全的活动进行记录、检查和审核;
- 密码技术:重要保障方法。
安全操作系统设计和开发:
- 虚拟机法:操作系统和硬件之间增加安全内核;
- 改进/增强法:在现有操作系统基础上对内核和应用程序进行面向安全策略的分析,加入安全机制;
- 仿真法:在现有操作系统基础上对内核和应用程序进行面向安全策略的分析,加入一层仿真程序。
操作系统安全的核心是访问控制:主体对客体的访问只能是授权的,且授权策略是安全的。
访问控制:身份识别、权限控制、行为监控、安全审计。
BLP模型–机密性:军事安全策略。
- 下读:主体S对客体O有读访问权,当且仅当S支配O;
- 上写:主体S对客体O有写访问权,当且仅当O支配S。
Biba模型–完整性:
- 上读:主体S对客体O有读访问权,当且仅当O支配S;
- 下写:主体S对客体O有写访问权,当且仅当S支配O。
RBAC模型:
- 基本概念:用户、角色、权限、用户分配、权限分配、激活角色、会话;
- 基本机制:
- 授权机制:最小特权原则、职责分离原则、角色互斥原则、角色激活限制原则;
- 会话:用户要访问系统资源首先要建立会话,一次会话对应一个用户,角色激活需要满足安全约束;
- 角色分级:一个角色可以直接或间接继承另一个角色的权限;
- 安全约束:角色互斥约束、最小特权约束、角色激活约束。
- RBAC96模型:
- RBAC0:基础模型;
- RBAC1:增加角色分级;
- RBAC2:增加安全约束;
- RBAC3:融合RBAC1和RBAC2。
中国墙模型(Chinese Wall Model,CWM)–混合策略:又叫BN模型,主要用于解决商业中的利益冲突。主体S对客体O有读访问权限,当且仅当O不在S访问过的竞争客体集合中。
信息流模型(Information Flow Model,IFM):通过观察y得到x的相关信息,则称从对象x到对象y的状态变迁引起信息流动,安全的信息流系统不存在非法信息流。
克拉克威尔逊模型(Clark Wilson Model,CW)–完整性:主体必须被识别和认证,只能执行一组规定的程序;客体只能通过一组规定的程序被操作;系统必须维护一个正确的审计日志,能够被证明正确工作。
隐蔽信道:
- 系统中,除了共享内存机制、消息传递机制和管道机制等以外的,泄漏信息的隐形的通信机制称为隐蔽信道。
- 隐蔽通道的特点:通信双方通过隐蔽通道交换信息,带宽越大危害越大,硬件能力的提升潜在提升隐蔽通道的带宽。
- 隐蔽通道与DAC无关,与MAC有关。
- 隐蔽通道举例:客体分配/回收隐蔽信道(多个主体之间通过彼此了解资源占用情况交换信息)、多级目录隐蔽通道(BLP策略下,低密级主体可写但不可删除高密级的目录,高密级主体通过删除/创建文件向低密级主体传递消息)
- 隐蔽通道的分类:
- 存储通道:利用系统中存储信息的变化,编码信号;
- 定时通道:利用系统对事件响应时间的变化,编码信号。
- 隐蔽信道的处理:
- 消除法:消除共享资源,消除导致隐蔽通道的机制和接口;
- 带宽限制法:设法降低通道的最大带宽,故意引入随机噪声、延时;
- 威慑法:通道审计。
4 数据库安全
数据库是重要的应用软件,集中存储和管理着大量重要的军事、政治、金融等数据。
数据库的安全性是指保护数据库以防止不合法使用所造成的数据泄露、更改或损坏。数据库的数据保护主要包括数据的机密性和完整性。
统计数据库是一些数据项的集合,其中每个数据项个体都是保密的,但是访问获得数据项的统计信息是允许的。
5 密码学
新型密码:
- 量子密码:
- 在唯密文攻击下绝对安全的密码;
- 利用量子物理学特性:海森堡测不准原理、单量子不可复制定理;
- 无法被窃听,破译时会留下痕迹;
- 量子密码通信网络可用于密钥分发。
- DNA密码:
- 基于生物学中的某种困难问题;
- 安全性不依赖于计算困难问题,对计算攻击免疫。
我国的密码分级:
- 核心密码;
- 普通密码;
- 商用密码;
- 个人密码。
我国商用密码政策:统一领导、集中管理、定点研制、专控经营、满足使用。
公钥密码的应用:
- 密钥协商;
- 数字签名;
- 公钥基础设施:签证机构CA、注册机构RA、证书目录。
6 可信计算
硬件系统和操作系统安全是基础,密码、网络安全等是关键技术。只有从芯片、主板等底层硬件结构和BIOS、操作系统等底层软件做起,采取综合措施才能有效提高微机系统的安全性。
可信计算的发展:美国防部制定《可信计算机系统评价准则》TCSEC -> 可信数据库解释TDI和可信网络解释TNI -> 彩虹系列出现并成为评价计算机系统安全的主要准则 -> 可信计算会议 -> 可信计算联盟TCPA -> TCPA改组为可信计算组织TCG并提出可信计算平台 -> 可信计算的高级阶段发展出多个流派。
武汉大学观点 —- 可信 = 可靠 + 安全:可信计算机系统是能够提供可信计算服务的计算机软硬件实体,它能够提供系统的可靠性、可用性、主体行为和信息的安全性。
可信计算的基本思想:
- 首先建立一个信任根:信任根的可信性由物理安全和管理安全确保;
- 再建立一条信任链:从信任根开始到硬件平台、到操作系统、再到应用,一级认证一级,一级信任一级。从而把这种信任扩展到整个计算机系统;
- 可信计算的思想源于社会。
信任根技术:
- 信任根是系统可信的基础和出发点;
- 信任根的可信性由物理安全和管理安全确保;
- TCG认为可信计算平台须包含三个可信根:
- 可信测量根RTM:开机首先执行、不可绕过、不可篡改、存储在ROM;
- 可信存储根RTS;
- 可信报告根RTR。
可信平台模块TPM:RTS和RTR,信任链以TPM为根。
可信测量技术:
- 实体访问平台,平台测量实体;
- 实体询问平台,平台提供报告。
支撑软件(TCG Software Stack,TSS):
- 是TPM平台上的支撑软件;
- 为其他软件提供方便和统一使用TPM的接口;
- 支持应用实体调用TPM提供的功能;
- 提供对TPM访问的同步。
可信网络连接技术(TNC):
- 网络访问层:从属于传统网络互联和安全层;
- 完整性评估层:依据一定的安全策略评估访问请求者的完整性状况;
- 完整性测量层:负责搜集和验证访问请求者的完整性信息。
可信执行环境(Trusted Execution Environment,TEE)是一种安全的计算环境,旨在提供一种受到高度信任的区域,用于执行敏感的计算任务和存储敏感的数据。TEE通常是硬件和软件的组合,旨在防止恶意软件、物理攻击和其他安全威胁。
TEE的主要特征包括:
-
隔离性:TEE提供了一个与操作系统和其他应用程序隔离的环境,使得在这个环境中执行的代码和处理的数据对其他部分是不可见的。这种隔离有助于防止恶意软件或攻击者访问敏感信息。
-
完整性:TEE能够验证执行环境的完整性,确保其没有被篡改。这通常涉及硬件和软件方面的安全措施,以检测并防范对TEE的攻击。
-
可信度:TEE本身被设计为一个受到高度信任的计算环境,使其能够执行关键的安全任务,如身份验证、加密和密钥管理。
-
持久性保护:TEE通常能够提供对存储在其中的敏感数据的持久性保护。即使在设备被物理攻击或被非法访问的情况下,敏感数据也应该是安全的。
-
安全输入输出:TEE提供安全的输入和输出通道,以便与其他系统进行交互,同时确保数据的安全性和机密性。
TEEs通常用于移动设备、物联网(IoT)设备、云计算环境等,以确保执行关键安全任务的可信度。Intel的SGX(Software Guard Extensions)和ARM的TrustZone是两个常见的TEE实现的例子。 TEEs对于保护数字版权、进行安全支付、提供安全存储等场景都非常有用。
7 软件安全
软件安全的定义:为计算机软件系统建立和采取的技术和管理安全保护,保护计算机软件、数据不因偶然或恶意原因而遭破坏、更改、显露、盗版、非法复制,保证软件系统能正常运行。
软件安全的内容:
- 自身安全;
- 存储安全;
- 通信安全;
- 使用安全;
- 运行安全。
软件安全保护的指导思想:加密、反跟踪、防非法复制。
软件测试:人工或自动手段运行或测试系统的过程,检验是否满足需求、是否存在错误、找出错误原因。软件测试可以分为黑盒测试(功能)、白盒测试(逻辑)。软件测试步骤:
- 单元测试:针对软件设计的最小单位;
- 集成测试:子功能组合(自顶向下、自底向上);
- 有效性测试:功能、性能是否符合用户要求;
- 系统测试:和计算机系统其他元素一起。
8 内容安全
信息内容:涉及动画、游戏、影视、数字出版、数字创作、数字馆藏、数字广告、信息服务与咨询、移动内容、数字化教育、内容软件等,主要可分为政务型、公益型、商业型。
信息内容安全:
- 政治性:防止国内外反动势力的攻击和诬陷;
- 健康性:剔除色情、淫秽和暴力内容;
- 保密性:防止国家和企业机密被窃取;
- 隐私性:防止个人信息被盗取、盗卖;
- 产权性:防止知识产权被剽窃;
- 防护性:防止病毒、垃圾邮件、网络蠕虫等恶意信息耗费网络资源。
信息内容安全技术:
- 信息获取技术;
- 信息内容识别技术;
- 控制/阻断技术;
- 信息内容分级;
- 图像过滤;
- 信息内容审计。
信息隐藏技术:将签名信号嵌入主信号的过程,掩护媒体经嵌入信息后称为伪装媒体。
- 签名信号不可感知性;
- 签名信号鲁棒性;
- 不增加主信号存储空间和传输带宽。
信息隐藏技术主要方式:
- 隐写术:伪装式保密通信,隐写的信息通常用一些传统的方法进行加密;
- 数字水印:数字水印是永久镶嵌在宿主数据中具有可鉴别性的数字信号或模式,并且不影响宿主数据的可用性。
隐写术和数字水印的区别:
隐写术 | 数字水印 | |
---|---|---|
用途 | 保密通信 | 版权标识 |
前提 | 一般不知道有信息隐藏 | 可公布水印的存在 |
攻击 | 隐写分析 | 水印擦出 |
考核 | 透明性 | 鲁棒性 |
信息隐藏的攻击:
- 被动攻击:监视和破译隐藏的秘密信息;
- 主动攻击:破坏和篡改隐藏的秘密信息;
- 非恶意修改:压缩编码、信号处理、格式转换。
9 网络安全
网络安全包括数据安全和系统安全。
网络威胁的分类:
- 中断威胁:破坏可用性;
- 伪造威胁:破坏真实性;
- 修改威胁:破坏完整性:
- 侦听威胁:破坏机密性。
网络攻击的分类:
- 冒充攻击;
- 重放攻击;
- 修改攻击;
- 拒绝服务攻击。
访问控制技术:
- 入网访问控制:用户鉴别;
- 网络权限控制:控制用户和用户组可以访问哪些目录和文件;
- 目录级控制;
- 属性控制:访问的属性(读写、拷贝、删除等)。
防火墙技术:在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,有效地监控了内部网和Internet之间的任何活动,保证了内部网络的安全。
防火墙控制能力:
- 服务控制;
- 方向控制;
- 用户控制;
- 行为控制。
防火墙分类:
- 数据链路层 -> 包过滤防火墙;
- 传输层 -> 电路级网关;
- 应用层 -> 应用代理防火墙。
入侵检测系统(Intrusion Detection System,IDS):监视系统运行状态,发现攻击企图、攻击行为或攻击结果的软硬件组合。
入侵检测是系统动态安全的核心技术之一。防火墙是静态安全防御技术。
入侵检测系统的分类:
- 基于网络的IDS;
- 基于主机的IDS;
- 基于应用的IDS。
收集 -> 分析 -> 响应。
误报?漏报?特征更新?速度?
虚拟专用网(Virtual Private Network,VPN)是指利用公共网络的一部分来发送专用信息,形成逻辑上的专用网络。提供了安全、可靠的Internet访问通道,为企业进一步发展提供了可靠的技术保障。
病毒:编制或者在计算机程序中插入的破坏计算机功能或者毁坏数据,并自我复制的一组计算机指令或程序代码。常见的有蠕虫、僵尸病毒、逻辑炸弹、木马、后门。
- 传染性;
- 非授权性:
- 隐蔽性;
- 破坏性;
- 不可预见性。
常用的安全工具:
- 防火墙;
- 入侵检测工具snort;
- 端口扫描工具nmap;
- 系统工具netstat、lsof;
- 网络嗅探器tcpdump、sniffer;
- 综合工具X-Scanner。