通信安全外文翻译资料

 2021-12-13 10:12

Communication Security

We have now finished our study of the tools of the trade. Most of the important techniques and protocols have been covered. The rest of the chapter is about how these techniques are applied in practice to provide network security, plus some thoughts about the social aspects of security at the end of the chapter.

In the following three sections, we will look at communication security, that is, how to get the bits secretly and without modification from source to destination and how to keep unwanted bits outside the door. These are by no means the only security issues in networking, but they are certainly among the most important ones, making this a good place to start.

1. IPsec

IETF has known for years that security was lacking in the Internet. Adding it was not easy because a war broke out about where to put it. Most security experts believe that to be really secure, encryption and integrity checks have to be end to end (i.e., in the application layer). That is, the source process encrypts and/or integrity protects the data and sends that to the destination process where it is decrypted and/or verified. Any tampering done in between these two processes, including within either operating system, can then be detected. The trouble with this approach is that it requires changing all the applications to make them security aware. In this view, the next best approach is putting encryption in the transport layer or in a new layer between the application layer and the transport layer, making it still end to end but not requiring applications to be changed.

The opposite view is that users do not understand security and will not be capable of using it correctly and nobody wants to modify existing programs in any way, so the network layer should authenticate and/or encrypt packets without the users being involved. After years of pitched battles, this view won enough support that a network layer security standard was defined. In part the argument was that having network layer encryption does not prevent security-aware users from doing it right and it does help security-unaware users to some extent.

The result of this war was a design called IPsec (IP security), which is described in RFCs 2401, 2402, and 2406, among others. Not all users want encryption (because it is computationally expensive). Rather than make it optional, it was decided to require encryption all the time but permit the use of a null algorithm. The null algorithm is described and praised for its simplicity, ease of implementation, and great speed in RFC 2410.

The complete IPsec design is a framework for multiple services, algorithms and granularities. The reason for multiple services is that not everyone wants to pay the price for having all the services all the time, so the services are available a la carte. The major services are secrecy, data integrity, and protection from replay attacks (intruder replays a conversation). All of these are based on symmetric-key cryptography because high performance is crucial.

The reason for having multiple algorithms is that an algorithm that is now thought to be secure may be broken in the future. By making IPsec algorithm-independent, the framework can survive even if some particular algorithm is later broken.

The reason for having multiple granularities is to make it possible to protect a single TCP connection, all traffic between a pair of hosts, or all traffic between a pair of secure routers, among other possibilities.

One slightly surprising aspect of IPsec is that even though it is in the IP layer, it is connection oriented. Actually, that is not so surprising because to have any security, a key must be established and used for some period of time—in essence, a kind of connection. Also connections amortize the setup costs over many packets. A #39;#39;connection#39;#39; in the context of IPsec is called an SA (security association). An SA is a simplex connection between two end points and has a security identifier associated with it. If secure traffic is needed in both directions, two security associations are required. Security identifiers are carried in packets traveling on these secure connections and are used to look up keys and other relevant information when a secure packet arrives.

Technically, IPsec has two principal parts. The first part describes two new headers that can be added to packets to carry the security identifier, integrity control data, and other information. The other part, ISAKMP (Internet Security Association and Key Management Protocol) deals with establishing keys. We will not deal with ISAKMP further because (1) it is extremely complex and (2) its main protocol, IKE (Internet Key Exchange), is deeply flawed and needs to be replaced (Perlman and Kaufman, 2000).

IPsec can be used in either of two modes. In transport mode, the IPsec header is inserted just after the IP header. The Protocol field in the IP header is changed to indicate that an IPsec header follows the normal IP header (before the TCP header). The IPsec header contains security information, primarily the SA identifier, a new sequence number, and possibly an integrity check of the payload.

In tunnel mode, the entire IP packet, header and all, is encapsulated in the body of a new IP packet with a completely new IP header. Tunnel mode is useful when the tunnel ends at a location other than the final destination. In some cases, the end of the tunnel is a security gateway machine, for example, a company firewall. In this mode, the firewall encapsulates and decapsulates packets as they pass though the firewall. By terminating the tunnel at this secure machine, the machines on the company LAN do not have to be aware of IPsec. Only the firewall has to know about it.

Tunnel mode is also useful when a bundle of TCP connections is aggregated and handled as

通信安全

我们现在已经完成了对交易工具的研究。大多数重要的技术和协议都已被涵盖。本章的其余部分是关于如何在实践中应用这些技术来提供网络安全性,以及本章末尾对安全性的社会方面的一些想法。

在接下来的三个部分中,我们将介绍通信安全性,即如何秘密地获取位,而不需要从源到目的地进行修改,以及如何将不需要的位保留在门外。 这些绝不是网络中唯一的安全问题,但它们肯定是最重要的问题之一,这使它成为一个很好的起点。

1. IPsec

多年来,IETF已经知道互联网缺乏安全性。添加这并不容易,因为一战爆发了关于把它放在哪里。大多数安全专家认为,为了确保安全,加密和完整性检查必须端到端(即在应用程序层中)。也就是说,源进程加密和/或完整性保护数据并将其发送到解密和/或验证数据的目标进程。 然后可以检测在这两个过程之间进行的任何篡改,包括在任一操作系统内。 这种方法的问题在于它需要更改所有应用程序以使其具有安全性。 在此视图中,下一个最佳方法是在传输层或应用程序层与传输层之间的新层中加密,使其仍然是端到端但不需要更改应用程序。

相反的观点是用户不理解安全性并且不能正确使用它并且没有人想要以任何方式修改现有程序,因此网络层应该在不涉及用户的情况下认证和/或加密分组。经过多年激烈的争斗,这种观点赢得了足够的支持,即定义了网络层安全标准。部分原因是,拥有网络层加密并不会阻止安全感知用户正确地做到这一点,并且它确实在某种程度上帮助了安全性不知情的用户。

这场战争的结果是一种称为IPsec(IP安全)的设计,其在RFC 2401,2402和2406等中有所描述。 并非所有用户都想要加密(因为它的计算成本很高)。 不是让它成为可选的,而是决定一直要求加密,但允许使用空算法。描述了null算法,并因其简单,易于实现和RFC2410中的高速度而受到称赞。

完整的IPsec设计是多种服务,算法和粒度的框架。多种服务的原因是不是每个人都想为所有服务一直付出代价,所以服务都是单点提供的。 主要服务是保密,数据完整性和防止重放攻击(入侵者重放会话)。 所有这些都是基于对称密钥加密,因为高性能是至关重要的。

具有多种算法的原因在于,将来可能会破坏现在被认为是安全的算法。 通过使IPsec算法独立,即使稍后某些特定算法被破坏,该框架也能够存活。

具有多个粒度的原因是使得可以保护单个TCP连接,一对主机之间的所有流量,或者一对安全路由器之间的所有流量,以及其他可能性。

IPsec的一个稍微令人惊讶的方面是即使它在IP层中,它也是面向连接的。 实际上,这并不令人惊讶,因为要有任何安全性,必须建立一个密钥并使用一段时间-实质上是一种连接。此外,连接还可以分摊许多数据包的设置成本。 IPsec上下文中的“连接”称为SA(安全关联)。 SA是两个端点之间的单工连接,并具有与之关联的安全标识符。如果两个方向都需要安全流量,则需要两个安全关联。安全标识符在这些安全连接上传输的数据包中携带,用于在安全数据包到达时查找密钥和其他相关信息。

从技术上讲,IPsec有两个主要部分。第一部分描述了可以添加到数据包的两个新标头,以携带安全标识符,完整性控制数据和其他信息。 另一部分,ISAKMP(互联网安全协会和密钥管理协议)处理建立密钥。 我们不会进一步处理ISAKMP,因为(1)它非常复杂,(2)它的主要协议IKE(互联网密钥交换)存在严重缺陷,需要更换(Perlman和Kaufman,2000)。

IPsec可以在两种模式中使用。在传输模式下,IPsec标头插入IP标头之后。 更改IP标头中的“协议”字段,以指示IPsec标头遵循正常的IP标头(在TCP标头之前)。IPsec报头包含安全信息,主要是SA标识符,新的序列号,以及可能的有效负载的完整性检查。

在隧道模式中,整个IP数据包,报头和所有IP数据包都封装在具有全新IP报头的新IP数据包的主体中。 当隧道在最终目的地以外的位置结束时,隧道模式很有用。在某些情况下,隧道的末端是安全网关机器,例如公司防火墙。 在此模式下,防火墙在数据包通过防火墙时对数据包进行封装和解封装。 通过在此安全机器上终止隧道,公司LAN上的机器不必知道IPsec。只有防火墙必须知道它。

当一组TCP连接聚合并作为一个加密流处理时,隧道模式也很有用,因为它可以防止入侵者查看谁向谁发送了多少数据包。有时只知道有多少流量在哪里才是有价值的信息。 例如,如果在军事危机期间,五角大楼和白宫之间的交通量急剧下降,但五角大楼与科罗拉多洛矶山脉深处的一些军事设施之间的交通量增加了相同的数量,一个入侵者 或许可以从这些数据中推断出一些有用的信息。 研究数据包的流模式,即使它们是加密的,也称为流量分析。隧道模式提供了一种在某种程度上阻止它的方法。 隧道模式的缺点是它增加了额外的IP报头,从而大大增加了数据包的大小。 相反,传输模式不会对数据包大小产生太大影响。

第一个新标头是AH(Authentication Header)。 它提供完整性检查和反重放安全性,但不提供保密性(即,没有数据加密)。 在传输模式中使用AH如图8-27所示。在IPv4中,它插入在IP报头(包括任何选项)和TCP报头之间。 在IPv6中,它只是另一个扩展头,并按此处理。 实际上,格式接近于标准IPv6扩展头的格式。如图所示,可能必须将有效载荷填充到用于认证算法的某个特定长度。

现在让我们检查AH标题。Next头字段用于存储IP协议字段在被51替换之前具有的先前值,以指示AH头跟随。 在大多数情况下,TCP(6)的代码将在此处。有效载荷长度是AH头中的32位字减去2的数量。

图8-27 IPv4传输模式下的IPsec身份验证标头

安全参数索引是连接标识符。它由发送方插入以指示接收方数据库中的特定记录。 此记录包含此连接上使用的共享密钥以及有关连接的其他信息。 如果该协议是由ITU而不是IETF发明的,则该字段将被称为虚拟电路号。

序列号字段用于对SA上发送的所有数据包进行编号。每个数据包都获得一个唯一的数字,甚至是重传。换句话说,数据包的重传在这里获得的数量与原始数据不同(即使其TCP序列号相同)。该字段的目的是检测重放攻击。 这些序列号可能不会回绕。 如果所有232都用尽,则必须建立新的SA以继续通信。

最后,我们来到Authentication数据,它是一个包含有效载荷数字签名的可变长度字段。建立SA时,双方协商他们将使用哪种签名算法。通常,此处不使用公钥加密,因为必须非常快速地处理数据包,并且所有已知的公钥算法都太慢。由于IPsec基于对称密钥加密,并且发送方和接收方在建立SA之前协商共享密钥,因此共享密钥用于签名计算。一种简单的方法是计算数据包上的散列加上共享密钥。当然,不传输共享密钥。像这样的方案称为HMAC(哈希消息认证码)。计算比首次运行SHA-1然后在结果上运行RSA要快得多。

AH标头不允许加密数据,因此在需要进行完整性检查但不需要保密时,它最有用。 AH的一个值得注意的特性是完整性检查覆盖了IP报头中的一些字段,即当数据包从路由器移动到路由器时不会改变的字段。例如,生存时间字段在每一跳上都会发生变化,因此它不能包含在完整性检查中。但是,IP源地址包含在检查中,使入侵者无法伪造数据包的来源。

备用IPsec标头是ESP(Encapsulating Security Payload)。 它用于传输模式和隧道模式如图8-28所示。

图8-28

ESP标头由两个32位字组成。它们是我们在AH中看到的安全参数索引和序列号字段。通常在它们之后的第三个字(但在技术上不是标题的一部分)是用于数据加密的初始化向量,除非使用空加密,在这种情况下它被省略。

ESP也提供HMAC完整性检查,AH也是如此,但它们不是包含在标题中,而是在有效载荷之后,如图8-28所示。 将HMAC放在最后具有硬件实现的优势。 可以计算HMAC,因为这些位通过网络接口传出并附加到末尾。这就是为什么以太网和其他LAN将其CRC放在预告片中而不是标头中的原因。使用AH时,必须缓冲数据包并在发送数据包之前计算签名,这可能会减少可以发送的数据包/秒数。

鉴于ESP可以做所有AH可以做的事情,而且更有效率,但问题出现了:为什么要打扰AH? 答案主要是历史性的。最初,AH只处理完整性而ESP只处理保密。后来,ESP增加了诚信,但设计AH的人不想让它在完成所有工作后死亡。 然而,他们唯一真实的论点是,AH检查部分IP头,ESP没有,但这是一个弱论点。另一个弱点是,支持AH但不支持ESP的产品在获得出口许可证方面可能会更少,因为它无法进行加密。 AH很可能在未来逐步淘汰。

2.防火墙

随时随地将任何计算机连接到任何其他计算机的能力是一种喜忧参半的祝福。对于家里的个人来说,在互联网上闲逛很有趣。对于企业安全经理来说,这是一场噩梦。大多数公司都有大量的机密信息在线商业秘密,产品开发计划,营销策略,财务分析等。向竞争对手披露这些信息可能会产生可怕的后果。

除了泄露信息的危险之外,还存在信息泄露的危险。特别是病毒,蠕虫和其他数字害虫可能破坏安全性,破坏有价值的数据,并浪费大量管理员的时间来清理他们离开的烂摊子。通常他们是由想要玩一些漂亮的新游戏的粗心员工进口的。

因此,需要一些机制来保持“好”位和“坏”位。一种方法是使用IPsec。此方法可保护安全站点之间的传输数据。但是,IPsec无法阻止数字害虫和入侵者进入公司局域网。要了解如何实现此目标,我们需要查看防火墙。

防火墙只是对旧中世纪安全待命的现代改编:在城堡周围挖掘深壕。这种设计迫使每个进入或离开城堡的人都经过一个吊桥,在那里他们可以被I / O警察检查。对于网络,同样的技巧是可行的:公司可以以任意方式连接许多LAN,但是所有进出公司的流量都被强制通过电子吊桥(防火墙),如图8-29所示。

此配置中的防火墙有两个组件:两个执行数据包过滤的路由器和一个应用程序网关。更简单的配置也存在,但这种设计的优点是每个数据包必须通过两个过滤器和一个应用程序网关进入或退出。没有其他路线存在。认为一个安全检查站足够明显的读者最近没有在预定的航空公司上进行国际航班。

图8-29 防火墙由两个数据包筛选器和一个应用程序网关组成

每个数据包过滤器都是配备一些额外功能的标准路由器。额外的功能允许检查每个传入或传出的数据包。满足某些标准的数据包会正常转发。那些未通过测试的人将被取消。

在图8-29中,内部LAN上的数据包过滤器很可能检查传出数据包,而外部LAN上的数据包过滤器检查传入数据包。跨越第一个障碍的数据包进入应用程序网关进行进一步检查。将两个数据包筛选器放在不同的LAN上的关键是确保没有数据包进入或退出而不必通过应用程序网关:它周围没有路径。

数据包筛选器通常由系统管理员配置的表驱动。这些表列出了可接受的源和目标,被阻止的源和目标,以及有关如何处理来自或去往其他计算机的数据包的默认规则。

在TCP/IP设置的常见情况下,源或目标由IP地址和端口组成。端口指示需要哪种服务。例如,TCP端口23用于telnet,TCP端口79用于finger,TCP端口119用于USENET消息。公司可以阻止所有IP地址的传入数据包与这些端口之一相结合。通过这种方式,公司外部的任何人都无法通过telnet登录或使用Finger守护程序查找人员。此外,该公司将不会让员工花一整天时间阅读USENET新闻。

阻止传出数据包比较棘手,因为尽管大多数站点都遵守标准端口编号约定,但它们并没有被强制执行。此外,对于某些重要服务,例如FTP(文件传输协议),端口号是动态分配的。此外,虽然阻止TCP连接很困难,但阻止UDP数据包更加困难,因为对它们将要执行的操作的先验知之甚少。许多数据包过滤器配置为完全禁止UDP流量。

防火墙的后半部分是应用程序网关。网关不是仅仅查看原始数据包,而是在应用程序级别运行。例如,可以设置邮件网关来检查进出的每条消息。对于每一个,网关根据标题字段,消息大小甚至内容决定是传输还是丢弃消息(例如,在军事装置中,存在诸如“核”或“炸弹”之类的单词。可能会采取一些特殊行动)。

安装可以自由地为特定应用程序设置一个或多个应用程序网关,但是可疑组织允许进出电子邮件并允许使用万维网的情况并不少见,但禁止其他所有应用程序网关过于冒险。结合加密和数据包过滤,这种安排提供有限的安全性,但代价是一些不便。

即使防火墙配置完美,仍然存在大量安全问题。例如,如果防火墙配置为仅允许来自特定网络(例如,公司的其他工厂)的数据包,则防火墙外部的入侵者可以放入错误的源地址以绕过此检查。如果内部人员想要发送秘密文件,他可以加密它们甚至拍摄它们并将照片作为JPEG文件发送,这会绕过任何文字过滤器。我们甚至没有讨论过70%的攻击来自防火墙内部,例如来自心怀不满的员工(Schneier,2000)。

此外,还有一类防火墙无法处理的攻击。防火墙的基本思想是防止入侵者进入和秘密数据出来。不幸的是,有些人没有什么比试图让某些网站失效更好的事情了。他们通过在目标上大量发送合法数据包直到它在负载下崩溃来实现这一点。例如,为了削弱网站,入侵者可以发送TCP SYN数据包以建立连接。然后,该站点将为连接分配一个表槽,并发送一个SYN ACK数据包作为回复。如果入侵者没有响应,表格插槽将被绑定几秒钟,直到它超时。如果入侵者发送了数千个连接请求,则所有表槽都将填满,并且没有合法的连接可以通过。入侵者的目标是关闭目标而不是窃取数据的攻击被称为DoS(拒绝服务)攻击。通常,请求数据包具有错误的源地址,因此无法轻易跟踪入侵者。

更糟糕的变体是入侵者已经闯入世界其他地方的数百台计算机,然后命令所有这些计算机同时攻击同一目标。这种方

资料编号:[5463]

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。