电子科技大学《计算机系统安全》复习,内容主要来自于ppt,本科最难受的一门课。。。。
第一章
计算机安全定义:保证信息系统资产的机密性、完整性和可用性的措施和控制方法。
(判断)安全违规所造成影响的级别:低级 --- 有限的负面影响 中级 --- 严重... 高级 --- 灾难性...
计算机系统资源包括:硬件、软件、数据、通信线路与网络
脆弱性分类:损坏(完整性缺失)、泄露(机密性缺失)、不可用
攻击分类
- 被动攻击 --- 试图从系统中学习或利用信息,但不影响系统资源
- 主动攻击 --- 试图改变系统资源或影响其运行
- 内部攻击 --- 由安全边界内部的实体(内部人)发起的攻击
- 外部攻击 --- 由安全边界外部的非授权用户或非法使用者发起的攻击
应对攻击的手段:阻止、检测、恢复
非授权泄露分类:
- 暴露:敏感数据被直接泄露给非授权实体。
- 截获:非授权实体直接访问在授权的源和目的地之间传输的敏感数据。
- 推理:非授权实体通过基于特征的推理或通信产品间接访问敏感数据(但不一定是包含在通信中的数据)。
- 入侵:非授权实体通过躲避系统安全保护措施来获得对敏感数据的访问。
被动攻击:消息内容泄露、流量分析
主动攻击:重放、冒充、篡改消息、拒绝服务
攻击面是由系统中可到达的和可被利用的脆弱点构成的。
第二章
对称加密:为传输和存储数据提供机密性的一种技术。要求:加密算法必须是足够强的;发送者和接收者必须在某种安全的形式下获得秘密密钥的副本并且必须保证密钥的安全。
攻击对称加密:密码分析、蛮力攻击
密钥长度:DES:56 3DES:112/168 AES:128/192/256
分组密码、流密码 概念 p15
消息认证:防止主动攻击;允许通信者验证所接收或存储的数据是否可信(消息内容是否被篡改、信源是否可信、消息的时效性以及传输消息流的相对顺序);可以简单地使用对称加密(双方共享一个密钥)
利用单向散列函数进行消息认证:对称加密、公钥加密、秘密值。
散列函数H性质:
- 可应用于任意大小的数据块
- 产生固定长度的输出
- 对任意的x,计算H(x)容易
- 单向性:对任意h,找到满足H(x)=h的x在计算上是不行的
- 弱抗碰撞:对任意x,找到满足y!=x且H(y)=H(x)的y在计算上是不行的
- 强抗碰撞:找到任何满足H(x)=H(y)的偶序对(x,y)在计算上是不行的
数字信封:如何实现(用公钥加密加密对称密钥)
第三章
用户身份认证的方法:
- 个人所知道的信息
- 所持有的物品(令牌)
- 生理特征(静态生物特征)
- 行为特征(动态生物特征)
与用户认证相关的三个独立概念:置信等级、潜在影响、风险范围
潜在影响三个等级:低、中、高
用户ID:决定了用户是否被授权访问系统、决定了该用户所拥有的访问权限、还可应用在自主访问控制机制中。
彩虹表攻击:
- 预计算潜在的散列值
- 产生的结果是一个巨大的散列值表
- 通过设置足够大的"盐值"以及设置较长的散列值来进行对抗
口令选择策略:用户教育-->计算机生成口令-->后验口令检查-->先验口令检查
用户认证中的安全问题:窃听、主机攻击、重放、客户端攻击、特洛伊木马攻击、拒绝服务。
第四章 访问控制
访问控制定义:
- 授予或拒绝下列特定要求的过程:(1)获得并使用信息及相关信息处理服务;(2)进入特定物理设施
- 实现依据安全策略对使用系统资源进行控制,且仅许可授权实体依据该策略使用该系统资源。
访问控制策略:
- 自主访问控制(DAC):基于请求者身份和访问规则控制访问,规定请求者可以做什么。
- 强制访问控制(MAC):通过比较具有安全许可的安全标记来控制访问,
- 基于属性的访问控制(ABAC):基于用户、被访问资源及当前环境条件来控制访问。
- 基于角色的访问控制(RBAC):基于用户在系统中所具有的角色和说明各种角色用户享有哪些访问权的规则来控制访问。
主体:能够访问客体的实体
客体:外界对其访问受到控制的资源
访问权:描述了主体可以访问客体的方式
自主访问控制方案是指一个实体可以被授权按其自己的意志使另一个实体能够访问某些资源。矩阵中一维是主体,另一维是客体。矩阵中的每项表示一个特定主体对一个特定客体的访问权。
保护域:一组客体及对这些客体的访问权。
RBAC约束:约束提供了一种令RBAC适应组织中的管理和安全策略细节的手段,约束是在角色之间定义的关系或与角色相关的条件。 类型:互斥角色、基数、先决条件角色
ABAC模型:主体属性、客体属性、环境属性
ABAC逻辑架构 判断 (允许无限数量属性组合起来以满足任何访问控制规则)
第五章 数据与云安全
数据库是存储一个或多个应用所用数据的结构化数据集合。
查询语言:为用户和应用提供了访问数据库的统一接口。
数据库管理系统:它是创建、维护数据库的程序套件;为多个用户和应用提供特定的查询服务。
关系数据库的基本构件是数据表。关系数据库的结构使得多个表通过在所有表中都出现的唯一标识符联系在一起。
SQL是能够对关系数据库中的数据进行定义、操纵和查询的标准语言。
SQL能用于:创建表、插入和删除表中的数据、创建视图、通过查询语句检索数据。
SQL注入攻击(SQLi)是一类针对数据库的最普遍和最危险的基于网络的安全威胁。利用的是Web应用程序页面的性质。通过发送恶意的SQL命令到数据库服务器。 攻击目标:从数据库中批量提取数据
SQLi攻击的方法是在SQL语句中提前终止文本串,随后附加新的命令。
SQLi攻击途径:用户输入、服务器变量、二阶注入、Cookies、物理用户输入
攻击类型:
- 带内攻击:使用同样的通信信道来完成SQL代码注入和结果返回。包括重言式(永真)、行尾注释、捎带查询
- 推理攻击:没有实际数据传输,但可以发送特定请求然后观察服务器响应行为来重新构造信息。 包括非法/逻辑错误查询、盲SQL注入。
- 带外攻击:检索数据使用不同的通信信道。
应对措施:防御性编码、检测、运行时阻断
## 第六章 恶意软件
定义:一种被植入系统中,以损害受害者数据、应用程序或操作系统的机密性、完整性或可用性,抑或对用户实施骚扰或妨碍的程序。
分类(还可依据 传播机制 和 恶意软件一旦到达目标系统,其将表现出的有效载荷的行为 进行分类):
- 需要宿主程序的(寄生代码,如病毒)
- 独立的、自包含的程序(蠕虫、木马和机器人)
- 不能复制的恶意软件(木马和垃圾邮件)
- 复制的恶意软件(病毒和蠕虫)
高级持续性威胁(APTs):具有充足资源、应用大量入侵技术和恶意软件的持续性应用程序。
APT特征:高级、持续性、威胁
原理:利用恶意软件,通过多种传播机制和有效载荷感染目标;一旦获取了系统初始权限,攻击者会利用更多的攻击工具来维持和提升他们的访问权限。
病毒:通过修改正常程序而进行感染的软件。
病毒分类:(依照目标分类) 感染引导扇区病毒、感染可执行文件病毒、宏病毒、多元复合型病毒。
蠕虫如何发现目标:随机式探索、黑名单、拓扑式探索、本地子网
客户端漏洞和路过式下载:利用程序中的缺陷来安装恶意软件。使得当用户浏览一个受攻击者控制的Web页面时,该页面包含的代码会攻击该浏览器的缺陷并在未允许的情况下向系统安装恶意软件。
水坑式攻击(只针对目标系统):攻击者通过研究他们攻击的目标,确定他们可能浏览的Web站点,然后扫描这些站点找出能让他们植入夹带式下载的漏洞。
恶意软件对抗手段:预防(四个要素:规则、警惕性、弥补弱点、缓解威胁)、检测、识别、清除
沙箱分析:在沙箱或虚拟机中运行恶意代码。
边界扫描处理(判断):局限性,只能扫描恶意软件内容。
P61 习题
第七章 DOS
本质:一种通过耗尽CPU、内存、带宽以及磁盘空间等系统资源,来阻止或削弱对网络、系统或应用程序的授权使用的行为。
攻击对象资源:网络带宽、系统资源、应用资源
泛洪攻击:占据所有到目标组织的网络连接的容量。
TCP SYN泛洪:是通过发送TCP数据包给目标系统。攻击的对象是数据包的总量而不是目标系统上的网络处理程序。 防范措施
反射攻击:将目标系统地址作为数据包源地址,发给中间媒介上的已知网络服务,然后中间媒介就会把大量响应数据包发给目标系统。 措施:过滤数据包
DNS放大攻击:将DNS服务器作为中间媒介。 措施:防止使用虚假地址
防范:
- 限制主机系统发送带有虚假源地址数据包的能力
- 可以使用过滤器来确认源地址所指向的返回路径是否是当前数据包发送过来所使用的路径
- 使用改进版本的TCP连接处理程序来专门抵御SYN欺骗攻击
- 限制或阻塞流向可疑服务、源端口和目的端口组合的网络流量
- 抵御广播放大攻击的最好措施是屏蔽IP定向广播的使用
第八章 入侵检测
入侵者行为:目标获取和信息收集、初始访问、权限提升、信息收集或系统利用、维持访问权限、覆盖痕迹。
入侵检测定义:一种硬件或软件功能,该功能用于收集和分析计算机或网络中各个区域的信息,以识别可能的安全入侵。
入侵检测系统(IDS):基于主机的IDS、基于网络的IDS、分布式或混合式IDS 包含三个逻辑组件:传感器、分析器、用户接口
分析方法:异常检测、特征或启发式检测(仅仅可以用来识别有模式或者有规则的已知攻击)
异常检测:统计法、基于知识法、机器学习法
入侵检测技术:适用异常检测(拒绝服务攻击、扫描、蠕虫);适用基于特征检测(应用层、网络层、传输层侦察和攻击)
蜜罐功能:
- 转移攻击者对重要系统的访问
- 收集有关攻击者活动的信息
- 引诱攻击者在系统中逗留足够长的时间,以便于管理员对此攻击做出响应
第九章 防火墙与入侵防御系统
防火墙设置在驻地网和Internet之间,以建立二者间的可控链路。防火墙可以是单机系统,也可以是协作完成防火墙功能的两个或多系统。
设计目标:
- 所有从内部到外部的流量都必须通过防火墙,反之亦然
- 只有经过授权的网络流量,例如符合本地安全策略定义的流量,防火墙才允许其通过
- 防火墙本身不能被渗透
访问策略特征:IP地址和协议、应用层协议、用户身份、网络活动
类型:包过滤防火墙、状态检测防火墙、应用代理防火墙、电路级代理防火墙(传输)
包过滤防火墙:根据一组规则来检查每个接受和发送的IP包,包过滤器设置成基于与IP和TCP头域匹配的规则列表。 优点:简单;对用户是透明的,处理速度快 缺点:不能阻止利用了特定应用的漏洞或功能的攻击;日志记录功能有限;大多数不支持高级的用户认证机制。
状态检测防火墙:创建一个出站TCP连接目录来收紧TCP通信规则;查看包信息,同时记录TCP连接信息。
应用级网关:起到应用级流量中继器的作用;必须为特定应用程序实现代理代码;比包过滤器安全;缺点是带来了对每条连接的额外处理开销。
堡垒主机共同特征:
- 堡垒主机的硬件平台上运行操作系统的安全版本
- 在用户被允许访问代理服务之前,堡垒主机可能需要对其进行附加认证
- 每个代理被配置为只允许对指定系统进行访问
- 每个代理模块是专门为网络安全设计的非常小的软件包
- 在堡垒主机中每一个代理都独立于其他的代理
- 除了读自己的初始配置文件以外,代理通常不进行磁盘读取操作
基于主机的防火墙优点:
- 过滤规则可以根据主机环境定制
- 保护功能独立于网络的拓扑结构
- 应用于单机防火墙之间的联合处,基于主机的防火墙提供了一个额外的保护层
第十章 缓冲区溢出
缓冲区溢出:缓冲区溢出是指接口的一种状况,此时大量的输入被放置到缓冲区或者数据存储区,超过了其所分配的存储能力,覆盖了其他信息。攻击者利用这样的状况破坏系统或者插入特别编制的代码,以获得系统的控制权。
如何识别:通过检查源代码;在程序处理过长的输入时跟踪程序的执行;使用一些工具,例如fuzzing技术。
防御:编译时防御;运行时防御(guard页)