计算机网络安全-----Internet安全

一、安全协议概述

安全协议和安全策略是安全系统实现和密码算法之间的联系纽带。
安全协议的定义: 安全协议是在消息交换和处理过程中使用的若干密码算法的协议,主要提供机密性、完整性 、不可抵赖性等安全属性。
安全协议的分类(从协议目的分):

  • 密钥交换协议
  • 认证协议
  • 电子商务安全协议
  • 认证于密钥交换协议

安全协议缺陷:

  • 基本安全协议缺陷:指安全协议在设计中没有或很少有防范攻击的措施
  • 口令/密钥缺陷:产生这种缺陷的原因多在于使用了常用词作为口令或或选取了不安全的伪随机数生成算法以至于攻击者能恢复该密钥。
  • 陈旧消息缺陷:主要是对消息的新鲜性没有充分考虑,致使攻击者能进行重放攻击。
  • 并行会话缺陷:攻击者能铜鼓适当的交换协议获取所需信息。
  • 内部系统缺陷:协议的可达性存在问题,参与的其中一方或多方不能完成必须的动作而导致的缺陷。
  • 密码系统缺陷:协议中使用的密码算法和密码协议导致不能完全满足所要求的机密性、认证等需求。

二、网络层安全

1、IPSec概述

“IP层安全标准 (IPSec)”是互联网工程任务组(IETF)于1998年颁布的一种开放标准的框架结构,通过使用加密的安全服务以确保在网络层上进行保密的安全通信。
其安全性包括三个方面的内容:认证、保密和密钥管理。该技术应用于网络层,提供端对端通信数据的私有性、完整性、真实性和防重放攻击等安全服务。
IPSec对于IPv4是可选的,对于IPv6是强制性的。
IPSec中的核心概念:安全关联(SA)
一个安全关联是发送方和接收方之间收到密码技术保护的单向关系,该关联对所携带的通信流量提供安全服务:要么对通信实体收到的IP数据报进行“进入”保护,要么对实体外发的数据包进行“流出”保护。如果要进行双向安全交换则需要建立两个俺去那关联。安全服务可以由AH或ESP提供,但不能由二者同时提供。

2、IPSec的特点

  • 在操作系统内部实现安全功能,在不需要修改应用程序的前提下为多个应用提供安全保护。
  • IPSec独立于鉴别和加密算法,在一个基本框架上可使用多种不同的鉴别协议和加密模块,满足不同的安全需求。
  • 对于引应用程序和用户是透明的。

3、IPSec 体系结构

IPSec使用两个不同的协议:AH和ESP协议来保证通信的认证、完整性、和机密性。

  • IP头部认证(AH)提供无连接的完整性验证、数据源认证、选择抗重放服务。
  • 封装安全负载(ESP)提供加密保障,完整性认证、数据源认证、抗重放服务。

IPsec的两种工作模式:

  • 传输模式:用于主机到主机之间的直接通信
  • 隧道模式:用于主机到网关或网关到网关之间的通信

传输模式于隧道模式主要是在数据包封装时有所不同。

4、认证头协议AH

在这里插入图片描述

  • 邻接头(8位),标识AH字段后面下一个负载的类型
  • 有效荷载长度(8位),
  • 安全索引参数SPI()是一个32位的连接标识符,同一个SA的所有IPSec数据报都是用同样的SPI值。
  • 序号字段(32位)是为了防止重返攻击,如果是分组重传,序号也不会重复。
  • 最后的字段是认证值(变长,但必须为32位整数倍)

传输模式下的AH:
在这里插入图片描述

  • AH头插入到IP头部之后、传输层协议之前
  • 验证范围整个IP包,可变字段除外
  • 与NAT冲突,不能同时使用

隧道模式下的AH:
在这里插入图片描述

  • AH插入到原始IP头部之前,然后在AH外面再封装一个新的IP头部
  • 验证范围整个IP包,也和NAT冲突

5、安全负载封装协议ESP

ESP不仅能提供AH提供的源点鉴定和数据完整性,还能保护机密性。其数据包可以在主机与主机、主机与路由器、路由器与路由器直接发送。

传输模式下的ESP:

在这里插入图片描述传输模式ESP操作归纳:

  • 在源端,包括ESP和整个传输层分段的数据包被加密,块中的明文被密文替代,形成要传输的IP包,如果选择了认证,则加上认证
  • 将包送到目的地。中间路由器需要检查和处理IP头和任何附加的IP拓展头,但不需要检查密文。
  • 目的节点对IP报文进行处理,利用ESP中SPI解密包的剩余部分,恢复传输层数据

隧道模式下的ESP:

在这里插入图片描述隧道模式下,将ESP头作为包的前缀,并在包后附加ESP尾,该模式用于对抗流量分析。
由于原有的IP头被加密处理,所以必须加上新的IP头封装整个ESP数据块。

6、IPSec密钥管理

IPSec 的密钥管理包括密钥的建立和分发,Internet密钥交换协议(IKE)是用于动态建立SA和会话密钥的协议,其密钥交换基于diffie-Hellman密钥交换。
在这里插入图片描述

三、传输层安全

1、Web安全

World Wide Web 是互联网上最重要,最广泛的应用之一,IPSec是提供web安全性的一种方法,它对终端用户和应用军事透明的,并且提供了通用的解决方案,另外一种方法是在TCP之上实现的安全性。
比如当用户在英特网上购物时,他会要求得到下列服务:

  • 顾客需要确保服务器属于真正的销售商而不是冒充者
  • 顾客与销售商需要确保报文的内容(订单)在传输过程中没有被更改
  • 顾客与销售商需要确保信用卡号之类的敏感信息不被冒充者窃听

上述安全服务,就需要使用传输层的安全协议。

2、SSL/TLS协议

1)SSL概述

SSL(Secure Socket Layer,安全套接层)/TLS协议:用于在两个通信应用程序之间提供保密性和数据完整性。
提供的三种安全服务:

  • SSL服务器鉴别:允许用户证实服务器的身份。支持SSL客户端通过验证来自服务器的证书,来鉴别服务器的真实身份并获得服务器的公钥
  • SSL客户鉴别:SSL的可选安全服务,允许服务器证实客户的身份
  • 加密的SSL会话:对客户和服务器间发送的所有报文进行加密,并检测报文是否被篡改

2)SSL体系结构

(1)SSL协议分层模型
SSL是一个中间层协议,位于TCP/IP层与应用层之间,为TCP提供可靠的端到端服务。
在这里插入图片描述简单分析:

  • SSL握手协议:允许客户端和服务器彼此认证,并在应用协议发出或受到第一个数据之前协商加密算法。
  • SSL修改密码规程协议:用于切换状态,通过把密码参数设置为当前状态,在握手协议之后当安全参数协商一致之后,发送有单字节“1”构成的消息,通知接收方下面的记录将受到刚刚达成的密码规范的保护。
  • SSL告警协议:一种通过SSL记录协议进行传输的特定类型的消息,规定了告警的级别和告警的类型,在SSL协议执行过程中通过告警协议来显示信息交换过程中所发生的错误。
  • SSL记录协议:SSL记录协议目的在于为高层协议提供基本的安全服务(保密和消息完整性)并且封装各种高层协议。

3)SSL的两个重要概念

(1)SSL会话
一个SSL会话指客户与服务器之间的联系,会话由SSL握手协议创建,定义了一套安全加密参数,为多个连接所共享。
(2)SSL连接
用于实现特定类型的服务数据的安全传输,通过点对点的形式建立暂时性的连接,每个来凝结与每个会话相关联。
具有的特性:

  • 连接具有私有性:在初始化连接后,协商密钥,基于对称加密体制进行加密
  • 对端实体鉴别:可采用非对称密码体制
  • 连接是可靠的:消息传输使用加密MAC算法进行消息完整性检测

4)SSL工作流程
在这里插入图片描述

  • 消息1:A发起会话,并发送自己的随机数SA,同时列出自己支持的加密算法
  • 消息2:B把自己的证书和随机数SB发送给和A,同时选择消息1中自己支持的算法发送给A .
  • 消息3:A随机选择一个随机数S,与SA,SB一起计算会话密钥K,用B的公钥加密S后同会话K、握手消息的散列值一起与发送给B。证明自己身份的同时还可以防止被篡改。
  • 消息4:B根据S,SA,SB计算出K,发送此前所有握手消息的散列值,此散列值通过B的写加密密钥进行加密保护,通过写完整性保护密钥进行完整性保护,通过这个消息告诉A自己知道了会话密钥。

至此,A完成了对B的认证。

四、应用层安全

1、PGP安全电子邮件协议概述

PGP - Pretty Good Privacy:是当前应用最广的安全电子邮件技术,为电子邮件和文件存储应用提供了认证和保密性服务.
是由Philip Zimmermann设计的免费保密电子邮件程序,创造性的将公钥密码体制与对称密码体制结合了起来,提供了众多的免费版本,支持各种系统平台,采用了一系列的安全加密算法和机制,其安全性已经得到了充分的论证。
它的出现与应用很好地解决了电子邮件的安全传输问题,提供了一种机密性和鉴别的服务,支持1024位的公开密钥与128位的分组加密算法。其之际操作由以下五种服务组成:

  • 鉴别
  • 机密性
  • 电子邮件兼容性
  • 压缩
  • 分段和重装

2、PGP消息认证

步骤简述:

  • 发送者创建报文
  • 发送者使用哈希函数生成该报文的摘要X
  • 发送者使用私钥,采用RSA算法对X进行签名运算并得到签名值Y,将Y串接在报文前面
  • 接收者使用发送者的公钥,采用RSA算法对Y进行运算并得到值X’
  • 接收者使用哈希函数生成该报文的摘要X,将X与X’进行比较,如果相同则接受

3、PGP保密性的实现

在这里插入图片描述
PGP使用的是混合加密的的方式实现加密传输,简单理解就是先使用随机产生的会话密钥对报文进行加密(采用对称加密算法),再使用公钥对会话密钥进行加密(采用公钥加密算法)。
加密步骤:

  • 发送者生成128位的随机值X
  • 发送者使用IDEA算法,用X对报文M进行加密,得到值Y
  • 发送者使用RSA算法,用接收者的公钥对X进行加密,得到值Z
  • 接收者收到(Y,Z)后,使用自己的私钥对Z进行解密,得到值X
  • 接收者使用IDEA算法,用X对Y进行解密,得到报文M

4、PGP的压缩与分段重装

压缩作为一种默认处理,PGP在应用签名之后、加密之前要对消息进行压缩,使用的压缩算法是ZIP,压缩后进行传输很好的节省了传输和存储成本。
简析:
在签名后压缩,是因为不需要为检验签名而保留压缩版本的消息。
在压缩后加密,是因为压缩后的消息其冗余小,增加密码分析的难度。
分段重装:
电子邮件工具通常限制了消息的最大程度,所以任何大于该成都的消息都必须分成若干小段进行传输。未来适应你这个限制,PGP自动将消息发段,这个操作在其他所有操作之后进行。因此会话密钥和签名部分都只会在第一段收到首部出现。

5、PGP的密钥管理

PGP在会话中一共使用了四种密钥:

  • 一次性会话对称密钥:需要一种生成不可预知的会话密钥的方法,PGP的会话密钥是个随机数(一定的真随机性),它是基于ANSI X.917的算法由随机数生成器产生。
  • 公钥和私钥:一个用户拥有多个公钥/私钥对,并且需要某种手段来标识具体的密钥(64位密钥ID)
  • 基于对称加密的口令:用户选择一个短口令用于加密私钥。

密钥环:
对于PGP来说,Key ID是非常关键的。
PGP消息中包括两个keyID,分别提供保密与认证功能,需要一种系统化的方法存储和组织这些密钥以保证有效使用这些密钥。
而公钥环和私钥环就是这样一种在每个用户节点上设置的管理用户密钥的数据结构。
1)私钥环:

  • 存储的信息:时间戳、KeyID、公钥、私钥、UserID
  • User ID :通常是用户的邮件地址,也可以是一个名字,可以重名
  • 保存方法:用户选择一个口令短语用于加密私钥,当系统用RSA生成一个新的公钥/私钥对时,要求用户输入口令短语。对该短语使用SHA-1生成一个160位的散列码后,销毁该短语,系统用其中128位作为密钥用CAST-128加密私钥,然后销毁这个散列码,并将加密后的私钥存储到私钥环中,当用户要访问私钥环中的私钥时,必须提供口令短语。PGP根据该口令短语,生成散列码,并使用该散列码解密私钥。

2)公钥环:公钥环可以用UserID或KeyID索引,存储的信息包括时间戳、KeyID、公钥、对所有者信任度、用户ID、密钥合法度、签名、对签名者信任度。

五 、Internet欺骗

所谓欺骗就是指攻击者通过伪造一些容易引起错觉的信息来诱导受骗者做出错误的、与安全有关的决策。
电子欺骗是通过伪造源于一个可信任地址的数据包以使一台机器认证另一台机器的网络攻击手段。
Internet欺骗有ARP欺骗、DNS欺骗、IP地址欺骗和WEB欺骗等几种类型。

1、ARP欺骗

ARP欺骗是一种通过虚假请求或响应报文,使得其它主机的ARP列表发生改变而无法正常通信的攻击行为。
有针对主机和针对交换机的两种欺骗。

  • 针对主机的欺骗:冒充其它主机,接收该主机的信息
  • 针对交换机的MAC欺骗:利用工具产生欺骗MAC,并快速填满交换机的MAC地址表。

简单的防护措施:

  • 不要把网络的安全信任关系仅建立在IP或MAC基础上,而是应该建立在IP+MAC基础上(即将IP和MAC两个地址绑定在一起)。
  • 使用ARP服务器,通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播,确保这台ARP服务器不被攻击
  • 管理员要定期从响应的IP包中获得一个RARP请求,然后检查ARP响应的真实性。
  • 管理员要定期轮询,检查主机上的ARP缓存。
  • 使用防火墙连续监控网络

2、DNS欺骗

DNS是TCP/IP协议体系中的应用程序,其主要功能是进行域名和IP地址的转换。
假如入侵者伪装成DNS服务器提前向客户端发送响应数据报,那么客户端的DNS缓存里的域名所对应的IP就是它们自己定义的IP,同时客户端也就被带入入侵者希望的地方

简单的防护措施:

  • 直接使用IP地址访问重要服务器,可以避开DNS对域名的解析过程,因此也就避开了DNS欺骗攻击。
  • 用转化得到的IP地址或域名再次作反向转换验证。
  • 最根本的解决方法还是加密所有对外的数据流,服务器应使用SSH(Secure Shell)等具有加密功能的协议,一般用户则可使用PGP类软件加密所有发送到网络的数据。

3、IP欺骗

IP欺骗就是使用其他计算机的IP来骗取连接,获得信息或者得到特权。
基本的IP欺骗包括基本地址变化、使用源站选路截取数据包、利用Unix机器上的信任关系三种方法,这三种IP欺骗技术都是早期使用,原理比较简单,效果也十分有限。

1)IP欺骗的高级应用——TCP会话劫持:

基本步骤:

  • 使被信任主机网络瘫痪,以免堆攻击造成干扰
  • 连接到目标主机的某个端口,猜测INS基值和增加规律
  • 把源地址伪装成被信任主机,发送带有SYN标志的数据段请求连接
  • 带目标发送SNY/ACK数据包给已经瘫痪的主机
  • 在此伪装成被信任主机向目标发送ACK报文,此时发送的报文数据段带有预测的目标级的ISN+1
  • 建立连接,发送命令请求。

2) IP欺骗的简单预防

  • 抛弃基于地址的信任策略
  • 进行包过滤
  • 采用加密传输
  • 使用随机的初始序列号

猜你喜欢

转载自blog.csdn.net/qq_45590334/article/details/109959351