安全与认证Week3

目录

Key Management 密钥管理

密钥交换、证书

密钥的类别

密钥管理方面

密钥分发问题

密钥分发方案

混合密钥分发

公钥分发

公钥证书

X.509

理解X.509

X.509证书包含

X.509使用过程

X.509身份验证服务

X.509版本3

取消

由X.509引申关于CA

用户认证、身份管理

用户认证

身份管理

Kerberos

Kerberos协议大致过程(涉及TGT)

Kerberos结构和环境

Kerberos 其余知识点

Kerberos威胁

Kerberos Requirements要求和机制

Kerberos 问题

Kerberos简单版本

简单版本的认证对话

更安全的身份验证过程

更安全版本的认证对话

更更安全的身份验证过程,Kerberos (version 4)

更更安全版本的认证对话

更更更安全的身份验证过程,Kerberos (version 5)

更更更安全版本的认证对话

IP层的安全性

IPSec

IPSec的典型配置

IPSec体系结构

AH和ESP两者区别

AH和ESP的头部组成

DOI

简单提一下SA,后面细讲

Anti-Replay Service(防重放服务)

处理过程processing

处理过程解释

处理过程步骤

两种模式

隧道模式(Tunnel Mode)

传输模式(Transport Mode)

ESP和AH的隧道和传输模式

组合安全关联(Security Association,SA)

有关socket

Oakley

中间人攻击

ISAKMP

防火墙firewall

作用

必要性

特性

防火墙的作用限制

防火墙的保护作用方法

防火墙配置

信任系统和多级安全

参考监视器概念

防火墙受到攻击


  

Key Management 密钥管理

密钥交换、证书

密钥的类别

密钥管理方面

密钥分发问题

密钥分发方案

        简单的密钥分发:允许安全通信,但不存在先前或之后的密钥。

        带机密性和身份验证的密钥分发:提供更高级别的安全性。

混合密钥分发

公钥分发

        公开公告:用户向接收方分发公钥,或广播给整个社区。主要弱点是伪造。

        公开可用目录:在公共目录注册密钥,但仍然容易受到篡改或伪造的影响。

        公钥机构:提高安全性,要求用户知道目录的公钥,实时访问目录。

公钥证书

  

X.509

理解X.509

        假设有两位朋友 Alice 和 Bob,他们在互联网上进行加密通信,想要确保他们之间的信息传递是安全的。这个例子中,X.509就是一个数字世界中的身份证系统,确保通信的安全性和身份验证。

        注册名册(X.500): Imagine X.500是一本全球唯一身份证明册,里面有每个人的独特标识(比如国家、城市、名字等)。每个人都有一份自己的信息。我觉得可以类比“世界上所有的个人信息证明,比如驾照、护照、身份证“

        数字证书(X.509): Alice和Bob都希望证明自己的身份,而X.509就是他们的“身份证”。CA(证书颁发机构)就像是注册名册的管理者,为每个人颁发一份独一无二的证书。我觉得可以类比“中国人民身份证,一种证明自己的证件类型“

        证书内容: Alice的证书上写着:“这是Alice的身份证书,由CA签发,她的公钥是XXX”。Bob的证书也有类似的信息。

X.509证书包含

        通信过程: 当Alice想向Bob发送一条安全的消息时,她使用Bob的公钥(在Bob的证书中找到)对消息进行加密。只有Bob使用自己的私钥才能解密消息。

        证书验证: 当Bob收到消息时,他可以查看Alice的证书,确保它是由一个可信任的CA签发的。这就像在现实生活中,当你看到一个人的身份证时,你可以确保这是由政府签发的。

        CA层次结构: 如果Alice和Bob使用的是不同的CA,那么这两个CA之间可能会有一个层次结构。就像一个国家的身份证可以被另一个国家的认可一样,CA之间通过证书链建立了信任。

X.509使用过程

X.509身份验证服务

X.509版本3

取消

由X.509引申关于CA

  

用户认证、身份管理

用户认证

        用户认证是验证系统实体声明的身份的过程,包括两个步骤:识别(指定标识符)和验证(将实体(人)与标识符绑定)。

        用户认证与消息认证不同,主要关注保护会话密钥的机密性和及时性,防止重放攻击等。

身份管理

        身份管理涉及验证各方的身份,并在多个企业和众多应用程序之间实现共同的身份管理方案。

        身份联合管理是一种相对较新的概念,涉及在多个企业和众多应用程序中采用共同的身份管理方案,支持成千上万甚至数百万用户。

        标准如Security Assertion Markup Language(SAML)和XML用于在在线业务合作伙伴之间交换安全信息。

 

  

Kerberos

摘要

Kerberos协议大致过程(涉及TGT)

        当你使用计算机网络上的某个服务时(比如文件共享或电子邮件),服务器需要确保你是合法用户并具有访问权限。Kerberos是一种用于实现这种身份验证的安全协议。

让我们通过一个简化的例子来解释Kerberos的工作原理:

        用户登录请求: 假设你是某公司的员工,想要访问公司的文件服务器。当你登录计算机时,你首先需要通过Kerberos进行身份验证。

        获取票据授予票据(TGT): 你的计算机会向Kerberos服务器发出请求,要求一个称为"票据授予票据"(Ticket Granting Ticket,TGT)。TGT是一个加密的凭证,用于证明你是合法用户。

        服务授权: 一旦你获得TGT,你可以使用它来请求访问特定服务,比如文件服务器。你向Kerberos服务器请求一个服务授权票据。

(TGT和服务授权票据区别:TGT是一种特殊的票据,用于向Kerberos服务器请求其他服务的授权票据。 服务授权票据用于向特定服务请求访问权限。它们都是由Kerberos服务器颁发给客户端)

        访问服务: 获得了服务授权票据后,你向文件服务器发出请求,携带着TGT和服务授权票据。文件服务器会验证这些票据,确认你是合法用户,并向你提供访问文件的权限。

        这个过程中的关键是,TGT和服务授权票据都是加密的,只有Kerberos服务器和目标服务能够解密它们。这确保了在整个过程中,你的身份都是安全的。Kerberos充当了一个“身份验证中心”,负责颁发安全的票据,这些票据用于证明你是谁以及你有权访问哪些服务。这有助于防止诸如冒充、窃听等攻击。

Kerberos结构和环境

        Kerberos环境包括Kerberos服务器、多个客户端和多个应用服务器,组成一个领域(realm)。简要介绍了Kerberos的基本结构,包括认证服务器(AS)和票据授予服务器(TGS)。

Kerberos 其余知识点

        包括基本的第三方认证方案,用户首先与AS协商以确认自己的身份,然后使用TGT请求TGS颁发其他服务的访问权限。

Kerberos威胁

Kerberos Requirements要求和机制

Kerberos 问题

Kerberos简单版本

 

简单版本的认证对话

更安全的身份验证过程

        引入了Ticket Granting Server (TGS) 以避免以明文传输密码。

        用户登录时,客户端从认证服务器(AS)请求代表用户的票据授予票据(TGT)。

        TGS票据(KTGS)本身也经过加密。

        加密密钥由认证服务器(AS)和票据授予服务器(TGS)共同知晓,而不是由客户端知晓。

TGS票据的加密过程:

        TGS将票据双重加密,首先使用AS和TGS共同知道的密钥,然后使用由用户密码生成的密钥。密码由用户输入,但密码本身从未在网络上传输。票据包含IP地址、时间戳和生命周期等信息。

客户端获取TGS票据:

        客户端通过输入密码,生成密钥Kc,并恢复TGS票据。AS和用户之间的身份验证使用密钥Kc完成。

服务授权过程:

        客户端向TGS请求服务授权票据,提供用户ID、目标服务ID和TGT。TGS解密TGT,验证用户身份,检查用户是否有权访问请求的服务器,并检查票据的生命周期。

服务授权票据生成:

        服务授权票据(KV)由TGS加密,解密所需的密钥KV由提供服务的服务器知晓,而不是由用户知晓。票据包含时间戳和生命周期。

更安全版本的认证对话

更更安全的身份验证过程,Kerberos (version 4)

Kerberos (version 4) 对话:

        包括客户端向TGS请求访问、TGS向客户端颁发TGT、客户端向TGS请求服务授权票据、以及客户端向服务器请求访问的对话。

认证过程:

        客户端通过请求TGS获得TGT,TGT包含一个由AS生成的会话密钥KC,TGS。

        客户端使用TGT请求服务授权票据,该票据用于访问特定服务器。TGS对用户进行身份验证,颁发服务授权票据,包括新的客户端-服务器会话密钥。客户端通过提供服务授权票据和验证器向服务器请求访问,服务器通过验证票据和验证器对用户进行身份验证。

 

更更安全版本的认证对话

更更更安全的身份验证过程,Kerberos (version 5)

更更更安全版本的认证对话

  

  

IP层的安全性

IPSec

        IPSec是建立在IP层的安全协议,可提供身份验证和加密。包括IPSEC proper(身份验证和加密)和IPSEC密钥管理两个部分。在IPv6中是必需的,在IPv4中是可选的。

IPSec的典型配置

        可以与防火墙或路由器一起使用,为跨越边界的所有流量提供强大的安全性。位于传输层(TCP,UDP)之下,对应用程序透明。透明对终端用户,不影响应用程序。

IPSec体系结构

        Encapsulate Security Payload (ESP):提供认证和/或机密性。

        Authentication Header (AH):提供完整性保护。

        Domain of Interpretation (DOI):包含协议的不同规范的标识符和操作参数。

        Authentication Header (AH):仅提供完整性保护,通过在数据包中插入完整性检查值(ICV)实现。忽略可变字段(生存时间,IP校验和)。

        Encapsulate Security Payload (ESP):提供认证(可选)和保密性。通过插入序列号和可选的ICV实现。通过保护头部和加密来实现认证。

AHESP两者区别

        AH: 主要提供身份验证和完整性保护,用于验证数据包的来源,并确保数据包在传输过程中未被篡改。不提供加密功能,仅用于身份验证和完整性保护。添加一个额外的头部,用于存储身份验证信息。

        ESP: 提供身份验证、完整性保护和加密,除了验证和完整性保护外,还可以对数据进行加密,确保通信的保密性。支持加密,可以对整个数据包进行加密,包括IP头部和有效载荷。除了提供身份验证和完整性保护的头部外,还可以提供加密的额外头部。

AHESP的头部组成

DOI

        IPSec算法:加密:DES(CBC模式)。认证:HMAC/MD5和HMAC/SHA等。可选的DOI依赖算法,如TDES、Blowfish、CAST-128、IDEA、RC5。

        Domain of Interpretation (DOI):包含与协议相关的值,如加密和身份验证算法的标识符、操作参数等。

简单提一下SA,后面细讲

Anti-Replay Service(防重放服务)

        Anti-Replay Service(防重放服务)是一种网络安全机制,用于防止网络通信中的重放攻击。在重放攻击中,攻击者截获并重新发送先前经过身份验证的通信,试图欺骗系统以接受重复的请求或数据包。防重放服务通过引入一些机制,如序列号和滑动窗口,来防止这种攻击。

其工作原理:

        序列号: 数据包在发送时按顺序编号,形成唯一的序列号。接收方使用这些序列号来检测和拒绝已经收到的重复数据包。

        滑动窗口: 发送方和接收方维护一个滑动窗口,窗口内的序列号范围是有效的,而窗口外的序列号被认为是过期的。接收方只接受位于窗口内的数据包,拒绝位于窗口外的数据包。

        定期更新: 窗口定期向前滑动,以便接收方可以接受新的、未曾收到的序列号。这样,即使攻击者截获了一些先前的序列号,由于窗口已经滑动,这些序列号也将被视为过期和无效。

例子:

        假设有一个通过网络进行身份验证的系统,其中用户在登录时会生成一个一次性的令牌,并将其发送给服务器以进行验证。防重放服务可以防止攻击者截获并重复使用此令牌进行欺骗。

        用户A登录系统,生成并发送令牌1。

        令牌1在网络上传输到服务器,服务器验证通过。

        攻击者截获令牌1,并尝试将其重放给服务器。

        由于防重放服务的存在,服务器检测到令牌1已经过期,因此拒绝验证。

处理过程processing

        IPSec(IP Security)中的处理过程和两种主要模式:隧道模式(Tunnel Mode)和传输模式(Transport Mode),以及这两种模式在ESP(Encapsulating Security Payload)和AH(Authentication Header)中的应用

处理过程解释

        假设有两个网络设备,设备A和设备B,它们之间需要进行安全通信。设备A要向设备B发送一条消息,这条消息需要经过身份验证和加密。

         设备A和设备B之间建立了一个IPSec安全关联,其中包含了SPI、身份验证算法(HMAC/SHA)、加密算法(AES)和密钥。

        设备A使用该安全关联对要发送的数据进行数字签名(身份验证检查),然后使用AES算法加密数据。

        设备B接收到数据后,使用相同的安全关联进行数字签名验证,然后使用AES算法解密数据。

处理过程步骤

        安全参数索引(SPI)查找安全关联(SA):设备A和设备B之间建立了一个安全关联,其中包含了用于保护通信的安全参数,如加密算法、身份验证算法和密钥等。SPI是一个唯一的标识符,设备A使用SPI来确定要使用哪个安全关联。

        SA进行身份验证检查:设备A在发送消息之前会使用安全关联中的身份验证信息对消息进行签名,生成数字签名。设备B在接收到消息后,使用相同的安全关联中的身份验证信息来验证数字签名的有效性,确保消息来自合法的设备A。

        SA进行身份验证的数据的加密/解密:如果需要保密性,设备A在发送消息之前使用安全关联中的加密算法和密钥对消息进行加密。设备B在接收到消息后,使用相同的安全关联中的加密算法和密钥来解密消息,以获取原始的、可读的信息。

两种模式
隧道模式(Tunnel Mode)

        在隧道模式下,整个数据包都被加密和/或认证,然后放置在一个新的IP包中。这种模式通常用于建立虚拟专用网络(VPN),其中整个通信流量都受到保护,提供了对流量分析的保护。

传输模式(Transport Mode)

        在传输模式下,只有IP包的有效载荷(通常是数据部分)被加密和/或认证,而IP头部保持不变。这种模式提供了对数据的保密性,但不涉及整个包的加密,因此不提供对IP头部信息的直接保护。

        简单来说就是:Tunnel Mode:保护整个数据包,用于建立虚拟专用网络。Transport Mode:保护有效载荷,提供机密性。

ESP和AH的隧道和传输模式

  

组合安全关联(Security Association,SA)

        在IPSec中,安全关联(Security Association,SA)是定义了一种安全服务的一组参数,包括加密算法、身份验证算法、密钥等。每个SA通常只提供一种安全服务,即要么是身份验证(AH),要么是加密和身份验证(ESP)。

        然而,在某些情况下,可能需要同时实现AH和ESP,以提供更全面的安全性。为了实现同时支持AH和ESP,可以采用组合安全关联的方法。

以下是两个例子,说明了如何组合安全关联:

        主机间身份验证的例子,使用AH-传输模式:

        设定: 设备A和设备B之间建立了通信连接,需要同时进行身份验证和数据传输的完整性保护。组合SA: 需要创建两个SA,一个用于AH传输模式,用于身份验证,另一个用于ESP传输模式,用于传输数据的完整性保护。

        通信流程:设备A发送数据包时,同时对整个数据包进行身份验证(使用AH传输模式)和数据的完整性保护(使用ESP传输模式)。设备B接收数据包后,首先使用AH进行身份验证,然后使用ESP进行数据的完整性保护。

        在WAN中传输时提供机密性的例子,使用ESP-隧道模式:

        设定: 设备A和设备B之间通过广域网(WAN)建立了VPN连接,需要在传输过程中提供数据的机密性。组合SA: 创建一个SA,使用ESP隧道模式,同时提供加密和完整性保护。

        通信流程:设备A要发送数据时,数据会在整个数据包级别被加密(使用ESP隧道模式)。加密后的数据包经过WAN传输到设备B。设备B接收到数据包后,对其进行解密,以还原原始数据。

这些例子说明了在特定场景中,通过组合不同的SA,可以同时满足多种安全需求,例如身份验证、数据完整性保护和数据机密性。这种组合使得IPSec更加灵活,能够适应不同的安全场景。

有关socket

Oakley

中间人攻击

中间人攻击是一种攻击方式,攻击者获取经过身份验证的数据包的副本并将其重新传输到其目标。Oakley使用数字签名、公钥加密和对称密钥加密等方式进行身份验证。

ISAKMP

ISAKMP是由NSA设计的协议,用于交换安全参数,但不用于建立密钥。

ISAKMP用于建立、修改和删除IPSec安全关联(SA),提供交换cookie、安全参数、密钥管理和标识的通用框架。

ISAKMP分为两个阶段:建立安全的认证通道(SA)和协商安全参数(KMP)。

ISAKMP提供协议框架,Oakley提供安全机制。结合版本澄清了两个协议,解决了模糊性。

  

   

防火墙firewall

作用

        保护本地系统/网络免受网络安全威胁。

        允许对外部世界(WAN、互联网)的有序访问。

必要性

        互联网连接对所有网络已不可避免,但互联网访问可能构成安全威胁。

        为每个设备配备强大安全功能并不经济。

特性

        安全墙和受控链接:在本地网络和互联网之间建立受控的链接和安全墙。防火墙可以是一个或多个计算机系统。

        流量控制:所有流量从内部到外部以及相反方向都必须通过防火墙。只有经授权的流量才能通过。防火墙本身免疫于渗透。

        特定控制服务:提供服务控制、方向控制、使用控制和行为控制。

防火墙的作用限制

        无法防御绕过防火墙的攻击。无法防御内部攻击。无法防御计算机病毒。

防火墙的保护作用方法

        包过滤:拒绝未经授权的TCP/IP数据包或连接尝试。

        应用层网关:充当应用层流量的中继。比数据包过滤器更安全,可以在应用层记录和审核流量。

        电路层网关:不允许端到端的TCP连接,而是中继它们。在自身和内部主机以及自身和外部主机之间建立两个连接。

        代理服务:代表内部主机与外部主机建立高级应用层连接,完全隔离内部与外部主机。

其他防火墙服务:加密身份验证、VPN、病毒扫描、内容过滤等。

防火墙配置

        包括不同形式的防火墙:双重接口堡垒主机。屏蔽子网防火墙。

        其他服务:虚拟专用网络(VPN)和分布式防火墙。

信任系统和多级安全

        用于保护数据和资源:基于安全级别(机密、秘密、最高机密等)。

参考监视器概念

        信任系统的核心:完全调解、隔离、可验证性。

防火墙受到攻击

最后,防火墙需要注意的问题包括无法防御绕过防火墙的攻击、内部攻击、计算机病毒等。 Trojan Horse攻击是一种常见的攻击方式,通过植入木马程序来绕过防火墙,引起数据泄露等问题。

相关推荐

  1. 安全认证Week3 Tutorial

    2024-01-08 07:34:02       31 阅读
  2. 保护通信的双重安全:消息认证身份认证

    2024-01-08 07:34:02       10 阅读
  3. 周记-week3-人脸识别

    2024-01-08 07:34:02       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-08 07:34:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-08 07:34:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-08 07:34:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-08 07:34:02       20 阅读

热门阅读

  1. C++-构造与解析

    2024-01-08 07:34:02       36 阅读
  2. mysql的视图和连表查询案例

    2024-01-08 07:34:02       34 阅读
  3. Chunjun纯钧(Flinkx)同步任务开发通用配置参数详解

    2024-01-08 07:34:02       139 阅读
  4. LeetCode每日一题 | 2397. 被列覆盖的最多行数

    2024-01-08 07:34:02       33 阅读
  5. Linux-rsync 服务器客户端模式同步

    2024-01-08 07:34:02       39 阅读
  6. SpringBoot-Dubbo-Zookeeper

    2024-01-08 07:34:02       40 阅读
  7. Python代码篇-小白必会(猜数字游戏)

    2024-01-08 07:34:02       36 阅读
  8. php加减乘除函数

    2024-01-08 07:34:02       45 阅读
  9. php将文本内容写入一个文件(面向过程写法)

    2024-01-08 07:34:02       39 阅读