安全与认证Week4

2024-01-02 16:08:30

目录

本章需要理解的问题

? ?

Web Security (TLS/SSL)

关于网络

使用网络会受到的威胁

各层安全协议

S/MIME、PGP(后面和S/MIME一起出现)、Kerberos、TLS/SSL 和 IP/IPSec 分别是:

????????S/MIME (Secure/Multipurpose Internet Mail Extensions):一种安全的电子邮件协议,用于加密和数字签名。

????????PGP (Pretty Good Privacy):加密和数字签名协议。提供电子邮件和文件的加密、数字签名和身份验证。PGP的设计目标是保护通信的保密性、完整性和身份验证。

????????Kerberos:一种网络认证协议,用于通过密钥加密技术安全验证用户身份。

????????TLS/SSL (Transport Layer Security/Secure Sockets Layer):用于在互联网上提供安全通信的协议,通过加密确保数据传输的安全性。

????????IP/IPSec (Internet Protocol/Internet Protocol Security):一种网络层安全协议,用于保护IP数据包,确保网络通信的完整性和保密性。

实际应用例子:

????????S/MIME (Secure/Multipurpose Internet Mail Extensions): 公司A使用S/MIME对其内部和外部传输的电子邮件进行加密,以确保敏感信息(如合同、财务报告等)只能被授权人访问。通过数字签名,接收方也能验证邮件的来源和完整性。

????????PGP (Pretty Good Privacy): 个人用户B使用PGP加密电子邮件和文件,确保只有授权的人能够阅读和理解其内容。

????????Kerberos: 公司C使用Kerberos在其内部网络中实现用户的单一登录(Single Sign-On)身份验证。

????????TLS/SSL (Transport Layer Security/Secure Sockets Layer): 用户D在网上购物时,与电商网站之间的通信通过TLS/SSL协议加密,确保支付信息的安全传输。

?????? IPSec (Internet Protocol Security): 公司E通过IPSec建立VPN连接,以安全地连接不同地点的办事处,员工在远程办公时通过VPN访问公司网络

? ?

Transport Layer Security (TLS)传输层安全性(TLS)

SSL和TLS的联系与区别

????????SSL (Secure Sockets Layer) 和 TLS (Transport Layer Security) 的主要区别:在于它们的版本和安全性。SSL是早期的加密协议,主要用于Web浏览器和服务器之间的安全通信。随着时间的推移,SSL发展成了TLS,TLS是SSL的后继者,提供了更强的加密算法和更好的安全特性。虽然TLS是SSL的改进版,但“SSL”这个名字仍被广泛使用。简单来说,TLS可以看作是SSL的更新和更安全的版本。

TLS 运行在传输控制协议(TCP)之上。

TLS connection&session 连接与会话

????????TLS连接:指的是客户端和服务器之间建立的安全通信通道。这个连接是通过一系列步骤建立的,包括密钥交换、证书验证和加密协议的协商。一旦TLS连接建立,数据就可以在这个加密通道中安全地传输。

????????TLS对话:这是在TLS连接基础上建立的,用于实际的数据交换。对话使用从连接阶段协商的参数(如加密算法和密钥)来保证数据的安全性。一个TLS连接可以有多个对话,每个对话都用相同的安全参数。

????????简而言之,TLS连接是建立安全通信的基础,而TLS对话是在这个安全基础上进行的实际数据交换。

TLS ArchitectureTLS架构(5个协议)

????????Handshake Protocol(握手协议)

????????Record Protocol(记录协议)

????????Change Cipher Spec Protocol(更改密码规范协议)

????????Alert Protocol(警报协议)

????????Heartbeat Protocol(心跳协议)

之前提到的那几个协议,Handshake Protocol(握手协议)比较重要,用了大篇幅来介绍

Handshake Protocol(握手协议)

关于Handshake Protocol的总结:

????????任务概述:协商要在安全通道上使用的密码套件;允许服务器和客户端进行身份验证;建立用于保护通道所需的密钥。

????????密码套件:一个包含加密算法组合的列表。

????????Client Request(客户端请求):会话ID:会话的唯一标识符;伪随机数(nonce)rC:用于提供新鲜性;支持的密码套件列表,包括密钥交换方法。

????????Supported Key Exchange Methods(支持的密钥交换方法):RSA、Fixed Diffie-Hellman、Ephemeral Diffie-Hellman、Anonymous Diffie-Hellman

????????Server Response(服务器响应):会话ID;服务器的nonce rS;服务器决定使用的具体密码套件;服务器的公钥证书的副本;如果选择了Ephemeral Diffie-Hellman,则服务器还生成一组新的参数,并在所选参数上发送公共值以及数字签名。

????????Pre-master Secret Transfer(预主密钥传输):客户端和服务器现在需要就共享密钥KP达成一致(预主密钥)。对于RSA:客户端生成KP并使用服务器的公钥进行加密,然后发送到服务器。对于Ephemeral Diffie-Hellman:客户端生成一组新的临时Diffie-Hellman密钥对,并将公共值发送到服务器,然后客户端和服务器都计算出共享密钥KP。

????????Client and Server Finished(客户端和服务器完成):客户端计算已发送消息的哈希的MAC,然后加密并发送给服务器。服务器检查来自客户端的MAC,然后计算已发送消息的哈希的MAC,加密并发送给客户端。

Handshake Protocol Phases(握手协议阶段):

????????Phase 1: 建立安全能力,包括客户端和服务器的hello消息,协商TLS版本、nonce、会话ID、压缩方法和密码套件等。

????????Phase 2: 身份验证和密钥交换,包括服务器证书、服务器密钥交换、证书请求和服务器hello done消息。

????????Phase 3: 客户端身份验证和密钥交换,包括证书消息、客户端密钥交换和证书验证消息。

????????Phase 4: 完成(Change Cipher Spec),包括客户端和服务器的变更密码规范消息和完成消息,用于验证密钥交换和身份验证过程的成功。

其它几个协议,包括后面的示例

Handshake Protocol(握手协议):

????????作用: 这个协议用于建立连接并进行密钥协商,确保通信双方能够共享加密密钥以保护后续的通信。

????????例子: 当你在浏览器中访问一个安全的 HTTPS 网站时,握手协议负责确保你的浏览器和服务器之间建立了一个安全的连接,以便后续的数据传输可以被加密和保护。

Record Protocol(记录协议):

????????作用: 该协议负责将应用层的数据分割成适当大小的记录,并通过加密、压缩等方式,将这些记录传输到对方。

????????例子: 在握手协议成功建立安全连接后,记录协议负责实际的数据传输。例如,当你通过 HTTPS 下载网页内容时,记录协议负责将网页的数据加密并安全地传输到你的浏览器。

Change Cipher Spec Protocol(更改密码规范协议):

????????作用: 这个协议指示通信的一方从现在开始使用新的加密参数,这是在握手协议中协商得到的。

????????例子: 在握手完成后,通过更改密码规范协议,通信双方告知彼此开始使用刚刚协商好的加密参数,确保数据传输的安全性。

Alert Protocol(警报协议):

????????作用: 警报协议用于在发生错误或安全事件时向对方发送通知。它可以包含严重程度不同的警报,如致命错误或警告。

????????例子: 如果在通信过程中发生了无法处理的错误,例如密钥协商失败,警报协议将发送相应的警报通知,以便通信双方采取适当的措施。

Heartbeat Protocol(心跳协议):

????????作用: 用于在通信双方之间发送心跳消息,以保持连接的活跃状态。

????????例子: Heartbeat 协议可以防止连接因为长时间的空闲而被关闭。例如,在一个长时间的文件传输过程中,心跳协议可以定期发送消息,确保连接保持活跃,防止被中断。

由上,TLS可能收到的攻击类型

??

??

Email Security (PGP, S/MIME,..)

Email Security的基本要求和其它要求

大篇幅讲PGP

?PGP加密流程简介

看这个视频就知道PGP大致流程

PGP的目的

(直接chat了,反正能答到点上就行)

????????保护隐私: PGP的主要目的是保护通信的隐私。通过使用加密技术,PGP可以确保只有授权的人能够读取通信内容,从而防止未经授权的访问和窃听。

????????数字签名: PGP提供数字签名的功能,用于验证消息的发送者身份以及确保消息的完整性。数字签名帮助接收方确认消息确实来自所宣称的发送者,并且在传输过程中没有被篡改。

????????数据完整性: 通过使用哈希函数和数字签名,PGP确保在传输过程中数据的完整性。这意味着即使有人截获了消息,也可以通过验证数字签名来检测是否有任何篡改。

????????防止抵赖: 数字签名还有助于防止发件人在后来否认发送过某个消息,因为数字签名提供了不可抵赖的证据。

????????安全电子邮件通信: PGP最初设计用于安全地传输电子邮件,使得电子邮件通信更加私密和安全。

PGP的五项services

看完上面那个视频就理解下面这个步骤

PGP的Authentication验证&Confidentiality保密

PGP的compatibility兼容性

PGP的Compress压缩

????????由上,如果消息先被压缩,然后再进行数字签名,那么在未来的验证过程中,需要存储压缩版本的文档或在需要验证时重新压缩消息。

????????压缩劣势1:压缩算法是非确定性的,即对同一消息进行压缩可能产生不同的压缩形式,这取决于运行速度与压缩比之间的平衡。如果发送方和接收方使用不同的压缩算法设置,可能会得到不同的压缩形式,从而增加了身份验证的难度。

????????压缩劣势2:压缩后的消息具有更小的冗余性,使得密码分析变得更加困难。

??

然后PGP还得讲几类KEY

看那个PGP视频就知道,要用到的KEY有两类

私钥的Pass-phrase口令密钥

????????口令短语密钥(Passphrase Key)的目的是增加私钥的安全性。口令短语实际上是用户选择的一个密码,用于保护私钥的访问。
????????作用有:1、保护: 能够获取用户的私钥文件,仍然需要知道口令短语才能使用该私钥进行解密或签名操作;2、防止未经授权使用: 如果用户的私钥文件丢失或被盗,但口令短语仍然保持秘密状态,攻击者将难以使用私钥进行任何操作;3、用户身份验证:只有知道正确口令短语的人才能证明他们是私钥的合法拥有者。

PGP Publickey management公钥管理

拓展概念:信任模型、信任网络、信任级别…

网上搜的一些拓展概念,仅用来帮助理解这块:

????????信任模型: PGP采用“信任网络”模型,用户通过相互签署公钥建立信任,计算每个公钥的信任级别

????????信任网络: PGP的信任模型建立在用户之间形成的网络上。用户通过签署对方的公钥表示对其的信任,从而形成一个相互连接的信任网络。

????????公钥签署: 当用户A信任用户B时,用户A可以通过使用自己的私钥对用户B的公钥进行签署。这表示用户A信任用户B的公钥是有效的。其他用户在获得用户A的公钥后,可以通过验证签名来确认用户A对用户B公钥的信任。

????????信任级别: PGP为每个公钥分配一个信任级别,用于表示其他用户对该公钥的信任程度。信任级别通常有几个层次,例如:完全信任、部分信任、未知信任

????????Web of Trust(信任网络): PGP的信任模型被称为“Web of Trust”,意味着用户形成一个相互连接的信任网络,而不依赖于中心权威(如证书颁发机构)。用户可以选择信任某个公钥,从而间接信任通过该公钥签署的其他公钥。

????????计算信任级别: PGP使用一定的算法和规则来计算每个公钥的信任级别。这可能涉及到多个用户之间的信任传递,使得整个网络的信任关系相对复杂。

也没讲咋计算

信任网络模型中用户通过相互签署公钥建立信任、信任级别计算,用户间的信任传递

PGP信任模型示例

?

这个示例模型也没有什么固定特点啊

??

S/MIME(安全/多用途互联网邮件扩展)(Secure/Multipurpose Internet Mail Extension)

? ? ? ?S/MIME(Secure/Multipurpose Internet Mail Extension)是一种用于增强MIME(Multipurpose Internet Mail Extensions)互联网邮件格式标准的安全性的技术,其基于RSA数据安全技术。MIME提供了一种传输复合数据的便捷机制,而二进制数据则通过base64编码处理。

? ? ?S/MIME通过多部分消息的形式发送安全相关信息,包括multipart/signed和multipart/encrypted。

基本的电子邮件安全要求

  1. 机密性(Confidentiality): 保护电子邮件内容不被未经授权的人访问。这通常通过使用加密算法来实现,例如S/MIME中使用的AES-128。

  2. 认证(Authentication): 确保电子邮件的发送者是其声称的人。S/MIME使用数字签名来实现认证,其中发送者使用其私钥对消息摘要进行签名,而接收者可以使用发送者的公钥验证签名。

  3. 完整性(Integrity): 确保电子邮件在传输过程中未被篡改。这可以通过数字签名来实现,接收者可以验证签名以确保消息的完整性。

  4. 不可抵赖性(Non-repudiation): 防止发送者否认发送过某个电子邮件。数字签名也可以用于实现不可抵赖性,因为签名的验证证明了发送者的身份。

从RFC5322到MIME,再到S/MIME

????????RFC5322定义了使用电子邮件发送的文本消息的格式,包括消息头和消息体。消息头包含日期、发件人、主题等信息,而消息体则是实际的消息内容。

????????MIME是RFC5322框架的扩展,解决了SMTP和RFC5322的一些问题和限制,例如不能传输可执行文件或其他二进制对象。

????????MIME是用于扩展电子邮件格式以支持各种数据类型的标准,而S/MIME是在MIME的基础上添加了安全性功能,用于确保电子邮件的安全传输和处理。 S/MIME可以看作是在电子邮件传输中加入了加密和数字签名等安全机制的一种实现,S/MIME是MIME的安全增强,使用RSA数据安全技术。

MIME的规范要求包含的元素、格式

S/MIME

运作机制

机密性

加密算法

证书

问题

??

??

Threats to Security

恶意软件Malicious Software

????????恶意软件,通常称为malware,是对组织最重要的安全威胁之一。它被定义为“一个被秘密插入到另一个程序中的程序,其目的是破坏数据、运行破坏性或侵入性程序,或以其他方式损害受害者数据、应用程序或操作系统的机密性、完整性或可用性”。恶意软件可以对应用程序造成威胁,也可以用于感染或恶意网站、服务器、垃圾邮件等,以欺骗用户透露敏感个人信息。

恶意软件的主要类型

1.??? 病毒(Virus): 尝试在执行时复制自身到其他可执行代码,成功后代码被感染。

2.??? 蠕虫(Worm): 可独立运行并在网络上的其他主机上传播完整工作版本的计算机程序。

3.??? 特洛伊木马(Trojan Horse): 伪装成具有有用功能的计算机程序,同时具有隐藏且可能是恶意功能,以逃避安全机制。

4.??? 间谍软件(Spyware): 秘密安装到信息系统中,以在未经用户知识的情况下收集个人或组织信息。

5.??? Rootkit: 在攻击者获得根级别访问主机后使用的一组工具,用于隐藏攻击者在主机上的活动并允许攻击者保持根级别访问。

6.??? 后门(Backdoor): 由攻击者或恶意软件程序安装,是一个具有绕过系统安全控制的能力的程序,允许攻击者偷偷访问系统。

7.??? 僵尸程序(Bot): 安装在系统上以发动对其他机器的攻击,一组共同行动的僵尸被称为僵尸网络(Botnet)。

恶意软件防御的五个要素

1.??? 网络流量分析: 监视流量以检测潜在的恶意活动,包括滥用检测或异常检测。

2.??? 载荷分析: 查找已知的恶意载荷或查找异常的载荷模式。

3.??? 终端行为分析: 在终端实施的各种工具和方法,如防病毒软件、应用程序白名单等。

4.??? 攻击防范和抢先(攻击之前): 实施资源消耗的策略和提供按需备份资源等技术。

5.??? 攻击检测和过滤(攻击期间): 试图在攻击开始时立即检测并响应的机制。

??

DDoS(Distributed Denial of Service分布式拒绝服务)

DoS和DDoS概念

DoS攻击(Denial of Service): 试图阻止正常用户使用服务的尝试。当此攻击来自单个主机或网络节点时,称为DoS攻击。

DDoS攻击(Distributed Denial of Service): 通过向服务器、网络或甚至终端用户系统发送无用流量,使合法用户无法访问这些资源,从而使计算机系统无法访问。在典型的DDoS攻击中,会聚集大量被攻陷的主机以发送无用数据包。

DDoS类型

????????1.内部资源攻击: 使用SYN或ICMP协议。2. 直接或反射性洪水攻击: 利用大量受感染的主机发送无效数据包。

对抗措施

????????攻击预防和先发制人(攻击之前): 执行资源消耗政策和提供按需可用的备份资源。

????????攻击检测和过滤(攻击期间): 试图在攻击开始时立即检测并响应。

????????攻击源追溯和识别(攻击期间和之后): 尝试识别攻击源,作为防止未来攻击的第一步。

??

??

最后提醒一下信息系统安全

非正式方面: 教育和培训组织成员。

正式方面: 数据管理或安全规则,人员管理。

技术基础(技术层面): 智能安全卡、密码等技术手段。

??

本章问题字样

Explain the protocols included in TLS architecture.
解释TLS架构中包含的协议。

What are the definitions of TLS connection and TLS session?
TLS连接和TLS会话的定义是什么?

How does PGP provide authentication and confidentiality? You may want to use a diagram to illustrate it.
PGP如何提供身份验证和机密性?您可能希望使用图表进行说明。

How many types of encryptions keys are used/generated in PGP?
在PGP中使用/生成了多少种类型的加密密钥?

What’s the purpose of Pass-phrase key in PGP?
PGP中口令密钥的目的是什么?

How do PGP manage keys?
PGP如何管理密钥?

Name the basic security requirements for email security.
列举电子邮件安全的基本安全要求。

What are the differences between MIME and S/MIME?
MIME和S/MIME之间有哪些区别?

How does S/MIME process certificates?
S/MIME如何处理证书?

文章来源:https://blog.csdn.net/qq_53631388/article/details/135339333
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。