一、网络安全概述
1.1 网络中的“安全”问题
- 信息安全经历两大变革:
- 从物理和管理方法 转变成 自动化工具保护信息安全
- 终端普遍使用网络传输数据并保证数据安全
- 网络中的“安全”问题
1.2 网络安全定义
- 网络安全是一个跨多门学科的综合性科学,包括:通信技术、网络技术、软硬件设计技术、密码学等;
- 在理论上,网络安全是建立在密码学以及协议设计的基础上的;
- 在技术上,网络安全取决于两个方面:网络设备硬件和软件的安全,以及设备的访问控制;
- 常见“安全因素”
- 物理因素:物理设备的不安全,电磁波泄漏、能源消耗泄漏等;
- 系统因素:系统软、硬件漏洞,病毒感染,入侵;
- 网络因素:网络协议漏洞,会话劫持,网络拥塞,拒绝服务;
- 管理因素:安全意识淡漠,误操作,内部人操作;
- 安全原由
- 自身的缺陷:系统软硬件缺陷,网络协议的缺陷。
- 开放性
- 系统开放:通信系统是根据行业标准规定的接口建立起来的。
- 标准开放:网络运行的各层协议跟其标准的制定是开放的。
- 业务开放:用户可以根据需求开展业务。
- 黑客攻击:基于兴趣的入侵,基于利益的入侵,信息战。
- 常用攻击手段
- 社会工程:攻击者可通过各种社交渠道获得有关目标的结构、使用情况、安全防范措施等有用信息从而提高攻击成功率;
- 口令破解:攻击者可通过获取口令文件,然后运用口令破解工具获得口令,也可通过猜测或窃听等方式获取口令;
- 地址欺骗:攻击者可通过伪装成被信任的IP 地址,邮件地址等方式来骗取目标的信任;
- 网络窃听:网络的开放性使攻击者可通过直接或间接窃听获取所需信息;
- 数据篡改:攻击者可通过截获并修改数据或重放数据等方式破坏数据的完整性;
- 恶意扫描:攻击者可编制或使用现有扫描工具发现目标的漏洞,进而发起攻击;
- 基础设施破坏:攻击者可通过破坏DNS或路由信息等基础设施,使目标陷于孤立;
- 数据驱动攻击:攻击者可通过施放病毒、特洛伊木马、数据炸弹等方式破坏或遥控目标;
- 拒绝服务:攻击者可直接发动攻击,也可通过控制其它主机发起攻击,使目标瘫痪,如发送大量的数据洪流阻塞目标;
- 攻击事例
- 商业机密的泄露(破坏了计算机系统安全的保密性)
- 网站被篡改 (破坏了计算机系统安全的完整性)
- 大型网站遭受拒绝服务攻击(破坏了计算机系统安全的可用性)
- 账户密码被盗
- 信用卡被盗刷
- 被别人蹭网
- 电脑染上病毒
- 钓鱼网站
1.3 常用攻击总结
-
正常通路
-
中断(Interruption)〈-〉可用性(Availability)
-
窃听(Interception)〈-〉机密性(Confidentiality )
-
篡改(Modification) 〈-〉完整性(Integrity)
-
伪造(Fabrication) 〈-〉真实性(Authenticity)
二、计算机安全
2.1 定义(CIA三元组)
计算机安全是指:对某个自动化信息系统的保护措施,其目的在于实现信息系统资源的完整性、可用性以及机密性(包括硬件、软件、固件、数据)
核心安全概念:CIA 三元组
一定要理解这三个概念!!
- 机密性(Confidentiality)
- 数据机密性:保证私有的或机密的信息不会被泄露给未经授权的个体
- 隐私性:保证个人可以控制和影响之与相关的信息
- 完整性(Integrity)
- 数据完整性:保证只能通过某种特定的、授权的方式来更改信息;
- 系统完整性:保证系统正常实现其预期功能;
- 可用性(Availability)
- 两个额外的概念
2.2 影响等级
安全事件发生后,按照影响,可分为三个等级:
- 低级: 对于组织的运转、资产或者个人带来负面影响损失有限;(保密性 – 学生成绩 )
- 中级:给组织的运转、资产或者个人带来严重的负面影响;
- 高级: 给组织的运转、资产或者个人带来灾难性的负面影响;(可用性 – 认证服务,完整性 – 病人信息)
2.3 例子
- 某离职IT人员了解前公司的管理员账户和密码规则,想获得目前公司的一些核心代码做为求职筹码,于是他生成了67GB的暴力密码字典,再找来一台四核服务器,以每秒破解22,000,000组密码的速度疯狂的拆解密码,几天之后密码终于告破,拿到了公司的核心代码。这是攻击CIA那一个属性?(保密性)
- 某制造型企业最近一段时间网络运转十分异常,服务器经常性的假死机,但死机时间并不固定。通过日志和其他分析软件得知,系统死机时待处理任务中存在大量的TCP连接任务,很明显这就是分布式拒绝服务攻击。这是攻击CIA那一个属性?(可用性)
- 2017年5月12日,一个称为“想哭”(WannaCry)的蠕虫式勒索病毒在全球大范围爆发并蔓延,100多个国家的数十万名用户中招,其中包括医疗、教育等公用事业单位和有名声的大公司。这款病毒对计算机内的文档、图片、程序等实施高强度加密锁定,并向用户索取以比特币支付的赎金。这是攻击CIA那一个属性?(完整性、可用性)
-
如果这个软件用于打印公司尚未公开、敏感的信息,那么它必须确定高级别的 A
-
如果这个软件用于打印公司的一些规章制度,那么它必须确定高级别的 B
-
如果这个软件用于打印每天公司的考勤情况,那么它必须确定高级别的 C
A.机密性 B. 完整性 C. 可用性
- 理解CIA三元组(保密性、完整性、可用性)的安全等级,讨论以下系统所需的安全等级(低中高)并说明理由。
- 一个在网络上发布每日最新新闻的网站。(完整性、可用性;)
- 一个存储公司重要财务信息、核心代码的系统。(保密性、完整性、可用性)
- 一个控制并显示公司电力供应的系统,其中电力供应非常重要,不能中断,否则会引起数据丢失。(完整性、可用性)
2.4 计算机安全面临的挑战
- 保障安全不容易做到的
- 必须考虑潜在攻击
- 保障方法可能和直觉相违背
- 需要算法和秘密信息
- 需要确定在哪里部署安全机制
- 需要在攻击者、系统设计者之间反复研究
- 难于引起人们的重视,直到安全事件发生
- 需要例行监测
- 通常设计后才会思考系统的安全性
- 人们通常认为:安全性和易用性存在冲突
三、OSI安全体系结构
ITU-T X.800 “Security Architecture for OSI”提供了安全的系统性定义,为我们提供了一种抽象的安全概念,有助理解系统的安全性,信息安全需要考虑的三个因素:
- 安全攻击:任何可能会危及机构的信息安全行为;
- 安全机制:用来检测、防范安全攻击并从中恢复系统的机制;
- 安全服务:用来增强系统安全性和信息传输安全性的服务;
术语:威胁和攻击通常用来表达同一个意思,定义如下
- 威胁: 一种潜在的安全破环;
- 攻击: 一种对系统安全的攻击,试图绕过系统的安全机制;
3.1安全攻击
- 被动攻击:对传输进行窃听与监视,获得传输信息,难以检测。有窃听攻击、流量分析两种形式。只是监听,较难检测到。
- 主动攻击:更改数据流或者发送假数据流。可以划分为4类:假冒、重放、篡改、拒绝服务。
- 以下那一种攻击方式更难以检测?
A. 被动攻击 B. 主动攻击 - 以下那一种攻击方式更难以防范?
A.被动攻击 B. 主动攻击 - 以下那种攻击方式属于被动攻击?
A.假冒 B.窃听 C. 重放 D. 中断
3.2 安全服务
使用了一种或多种安全机制,用于抵抗安全攻击,保障数据处理与传输的安全性。通常和现实世界的方法类似,例如,使用签名、时间戳、公证等方法(需要能抵抗数据泄漏、损坏等攻击)。
常见的安全服务(需要安全机制实现)
- 认证:提供某个实体的身份保证(对等实体认证、数据源认证)
- 访问控制:保护资源,防止对它的非法使用和操纵
- 数据机密性:保护信息不被泄露(连接保密性、无连接保密性、流量保密性)
- 数据完整性:保护信息以防止非法篡改
- 不可否认性:防止参与通信的一方事后否认(源点的不可否认性、信宿的不可否认性)
3.3 安全机制
安全机制一种方法,用于检测、阻止安全攻击,并从攻击中恢复。注意:不存在单一的安全机制,可以用于所有的安全服务。不同安全机制都使用了密码学技术。
常见的安全机制:
- 加密:用加密算法对信息加密,保护信息的机密性。
- 数字签名:用签名算法对信息进行计算,计算结果附加于信息单元。用于身份认证、数据完整性和非否认服务。
- 访问控制:用于实施资源访问权限的机制。
- 数据完整性:用于确保信息的完整性。
- 认证交换:确保信息交换的实体是所声称的实体,通过信息交换以确保实体身份,包括密码、特征、位置信息等。
- 流量填充:填充信息,防止流量分析。
- 路由控制:能够为特定数据选择特定路由。
- 公证:采用可信任的第三方以确保一些信息交换的性质。
- 还包括:可信功能、安全标签、事件检测、安全审计跟踪、安全恢复。
安全服务与安全机制关系(重要)
四、网络安全模型(重要)
- 所有用于提供安全性的技术都包含以下两个主要部分:
- 发送信息的安全转换
- 两个主体共享秘密信息
- 这个通用模型表明,设计特定的安全服务时有如下 4 个基本的任务。
- 安全转换算法
- 生成秘密信息
- 共享秘密信息方法(第三方进行秘密分发)
- 主体通讯协议
- 为保障网络通信安全,我们需要:
- 设计算法,保障安全变换(security transformation)
- 生成算法的秘密信息
- 分发该秘密信息,使得通信双方共享
- 设计协议,使得通信双方可以进行安全通信
我们的重点在于介绍符合图 1.2 所示模型的安全机制和服务类型。然而,还有一些其他的与安全相关的情形,它们不能完全适合该模型,对于这些其他情形的通用模型在图 1.3 中示出,该图反映了对于保护信息系统免遭有害访问所做的考虑。
- 安全机制的两大范畴:
- 看门人功能(基于口令的登录过程)
- 屏蔽逻辑,检测和拒绝蠕虫、病毒以及其它类似的攻击
- 为保障网络访问安全,我们需要:
- 设计访问控制功能单元,对用户鉴别身份
- 实施安全控制,仅允许授权用户访问