应用层的OSI堆栈安全

安全 应用安全
应用层是OSI模式的最高层。应用层直接与应用和应用进程相关。在网络安全中,应用扮演着至关重要的角色。它们的设计可能是完全不安全的、相对安全的或者非常安全的。

应用层是OSI模式的最高层。应用层直接与应用和应用进程相关。在网络安全中,应用扮演着至关重要的角色。它们的设计可能是完全不安全的、相对安全的或者非常安全的。

很多应用程序已经存在相当长的时间了,如文件传输协议(FTP)、Telnet、简单文件传输协议(SMTP)和域名解析系统(DNS),因此它们目前所面对的威胁在它们的原先设计中是可能完全没有预想到的。2007年2月6日发生了13个核心DNS服务器中的2个受到攻击的事件,因此本章将集中探讨 DNS。

DNS是如何工作的?

让我们先回顾一下DNS的一些基本概念。Internet中没有任何一个地方能够保存DNS数据库的所有信息。在最顶层,有13个DNS服务器保存这些信息;它们大多数都是在美国的物理安全设备。DNS是一个分布式数据库,它保存了主机名与IP地址的映射信息。DNS也提供了该数据库的信息查询方法。 DNS可以依据特定的操作使用UDP或TCP。在查找或响应小于521字节的情况,UDP是典型的查询方式。TCP则可以用于更大的查找和zone转换。

当你检查邮件或浏览网络时,你往往需要依靠DNS来将主机名转化成IP地址。因此,当你打开你的浏览器浏览SearchNetworking.com时,DNS会将完整的网络名称(FQDN)转化成正确的IP地址。

DNS过程是从向本地主机的解析器发送服务请求开始的。解析器一般都会先检查保存最近请求的响应的本地缓存。另外,它也会检查主机的文件,该文件包含了主机名与IP地址的映射。如果请求信息在这些位置上都没有找到,那么解析器就会向主机TCP/IP网络接口所配置的DNS服务器发送一个请求。为了提高 DNS性能和降低DNS所带来的网络流量,域名服务器将缓存一段时间的请求回复。至于响应信息被缓存多久是由响应中所指定的存活时间(TTL)所决定。

DNS暴露当DNS服务器响应一个请求时,应答消息包含了一个事务ID和用户查询结果。如果DNS记录没有找到或已经损坏,你可能就无法到达你想访问的网站,或者你可能被连接到一个攻击者的Web服务器上。这是很有可能发生的,因为有几种方式可以攻击协议,包括:

◆区域转换漏洞

◆DNS缓存污染

◆DNS缓存窥探

◆中间人攻击

Zone转换是用于将主服务器的域数据库复制到次服务器。如果黑客可以在域中执行主服务器或次服务器的转换,那么他就可以查看域中的所有DNS记录。这样就暴露了敏感的信息,如内部寻址方案。此外,黑客还可能可以决定Web服务器、邮件或文件传输等使用哪个IP地址。

DNS 缓存污染是我们讨论的第二个技术。DNS客户端和服务器都会将响应缓存一段时间,以提高性能和减少网络流量。如果黑客能够对DNS请求发送欺骗响应,那么他们也就可以用一个不正确的记录来污染DNS。通过污染DNS客户端和服务器的缓存,黑客就可以将流量重定向到一个恶意主机,从而导致更大的危害。先前在根DNS服务器上的攻击就采用了这种技术,以及拒绝服务攻击。

DNS缓存窥探是一个确定特定资源记录是否在缓存中的过程。DNS缓存窥探可以帮助黑客确定攻击目标访问了哪些站点、他们的客户和用户是谁,以及其它可能有用的信息。它甚至还可能通过查询软件升级地址的资源记录来发现攻击目标正使用什么软件。

最后,中间人(MITM)攻击是发生在攻击者截断和修改DNS信息的时候。在这种情况下,攻击者可以从截获的流量中获得源端口和事务ID。MITM攻击可以将一个受害的合法地址重定向为一个恶意的网站。如果DNS请求是发向银行、财政和电子商务网站的,这对于试图窃取个人信息的黑客而言是非常有用的。不需要使用欺骗邮件,如常见的网站钓鱼邮件,黑客可以直接攻击指向合法站点的DNS记录。

保护DNS这些攻击都是真实的威胁,但是也是可以防范的。通过强制使用随机事务ID和源端口,就可以增加DNS缓存污染的难度。在不知道这些域的正确值时,黑客将无法用欺骗答复来达到污染服务器缓存的目的。在几年前,Zone转移区域转换的确是一个棘手的问题,因为Windows2000服务器在默认的情况下允许任何人获得这个信息。这个默认设置在Windows Server 2003上已经不复存在。如果ISP的出口过滤足够好,那么即使最近出现的针对根DNS服务器的攻击也是可以防范的。关于这个问题的解决方案已经记录在 RFC 3704中。

虽然上面探讨的安全对策在实现更安全的DNS上开了好头,但是我们仍不能仅满足于此。在DNS相关问题的处理失败仍然让我们置于易受攻击的境地,它将影响着我们的所有需要穿越Internet的应用,包括业务敏感应用、Web流量、电子邮件和VoIP通信等。
 

责任编辑:佟健 来源: TechTarget中国
相关推荐

2010-06-09 10:25:18

SET应用层协议

2010-06-28 15:52:17

2016-11-29 15:22:47

协议应用层安全层

2024-01-08 09:08:53

2011-08-16 14:42:16

2021-01-11 10:19:51

安全架构

2015-10-13 16:26:20

2010-12-22 18:54:49

2010-06-13 17:46:47

2012-01-13 10:13:57

软件定义网络SDNOpenFlow

2014-12-15 11:23:00

Docker Comp分布式应用容器应用

2010-06-21 17:58:06

2010-06-13 17:51:16

SET应用层协议

2010-06-25 15:22:16

2011-01-12 11:03:26

2010-06-09 10:28:20

2010-01-26 17:42:20

应用层交换技术

2015-10-16 10:10:18

应用层通信协议

2010-09-27 14:25:51

2010-11-11 10:41:03

点赞
收藏

51CTO技术栈公众号