当前位置:文档之家› 应用层协议

应用层协议

WEB开发技术
题目:浅谈应用层防火墙
姓名:
班级:
教师:
日期:
评价
报告摘要:
多种的应用层协议是用户使用电脑进行日常的操作的重要组成,也正因如此,Web应用程序攻击是一种最常见的入侵类型。

传统的网络防火墙不能检测到应用攻击,原因是它们在合法应用程序的开放端口上才能起作用。

但它并不能核查应用程序和应用程序数据,而应用层防火墙的出现,对这一破坏行为有了有理的打击。

1.应用层协议
应用层协议(application layer protocol)是一种运行在不同端系统上的应用程序进程如何相互传递报文。

其中包括如下内容:交换的报文类型、各种报文类型的语法、字段的语义、进程何时、如何发送报文及对报文进行响应。

2.应用层协议的种类
●DNS域名系统(Domain Name System,DNS),用于实现网络设备名字到IP 地址映射的网络服务。

这样用户就不需要记一串数字的IP地址而是有意义的网址。

●FTP文件传输协议(File Transfer Protocol,FTP),用于实现交互式文件传输功能。

●SMTP简单邮件传送协议(Simple Mail Transfer Protocol, SMTP),用于实现电子邮箱传送功能
●HTTP超文本传输协议(HyperText Transfer Protocol,HTTP),用于实现WWW服务。

●SNMP简单网络管理协议(simple Network Management Protocol,SNMP),用于管理与监视网络设备。

●Telnet远程登录协议(Telnet),用于实现远程登录功能。

由上述的应用层协议可以看出,应用层对用户使用电脑进行日常的操作的重要性,也正因如此,Web应用程序攻击是一种最常见的入侵类型。

传统的网络防火墙不能检测到应用攻击,原因是它们在合法应用程序的开放端口上才能起作用。

但它并不能核查应用程序和应用程序数据,黑客可以在通过开放防火墙端口时,不知不觉地隐藏恶意活动。

由于大多数Web信息流通过端口80或者端口443,而关闭这些端口是不现实的。

下面的几个例子是针对应用层的入侵:
●例1:
2013年8月25日凌晨,.CN域名凌晨出现大范围解析故障,经分析.CN的根域授权DNS全线故障,导致大面积.CN域名无法解析。

事故造成大量以.cn 和结尾的域名无法访问。

直到当日凌晨4点左右,CN根域名服务器的解析才有部分恢复。

此后,经CNNIC确认,国家域名解析节点遭受到有史以来规模最大的拒绝服务攻击,导致访问延迟或中断,部分网站的域名解析受到影响。

●例2:
DNET安全频道10月2日国际新闻:目前已经出现一类恶意软件——Fort Disco,旨在利用暴力密码破解攻击突破电子邮件及FTP服务器。

这款恶意软件已经被DDoS攻击防御供应商Arbor Networks公司记录在案,
目前感染的Windows计算机估计超过25000台,影响范围超过6000个管理员用户。

一旦计算机受到感染,该恶意软件会定期连接到命令与控制(简称C&C)服务器进行指令检索,其中通常包含数千网站及密码列表、时刻尝试访问其管理员账户。

以暴力方式攻击POP3(Post Office Protocol version 3,允许电子邮件客户端与邮件服务器连接并检索来自现有账户中的信息),对FTP证书进行暴力破解。

网络犯罪分子已经可以肆意窥探他人的信息。

●例3:
Telnet攻击常被用来控制主机。

对于入侵者而言,telnet不是一个协议只是一种远程登录的工具。

一旦入侵者与远程主机建立了telnet连接,入侵者便可以使用目标主机上的软、硬件资源,而入侵者的本地机只相当于一个只有键盘和显示器的终端而已。

而入侵者就会使用这台主机当作一个“跳板”,这样在入侵过程中就不会暴露自己的IP地址,亦可以再继续恶意破坏网络。

以上的三个例子都充分的说明了应用层存在的安全隐患,由此应用层防火墙才越来越受到关注。

3. 应用层防火墙(Application level gateway)
也叫应用层网关,或应用层代理防火墙,通常用于描述第三代防火墙。

当一个用户在这个可信赖的网络希望连接到在不被信赖的网络的服务,这个应用专注于在防火墙上的代理服务器。

这个代理服务器有效地伪装成在因特网上的真实服务器。

它评估请求和决定允许或拒绝基于一系列被个人网络服务管理规则的请求。

3.1 工作原理
应用层防火墙是在 TCP/IP 堆栈的应用层上运作的。

应用层防火墙可以拦截进出某应用程序的所有封包,并且封锁其他的封包(通常是直接将封包丢弃)。

理论上,这一类的防火墙可以完全阻绝外部的数据流进到受保护的机器里。

因此,在现代计算环境中,应用层防火墙可以减少攻击面。

一个应用层防火墙有两种途径可以实现,一是主动采取措施的主动安全模型(positive security model),另一种是通过与已知攻击特征进行比对来认定攻击行为的被动安全模型(negative security model)。

也就相当于“代理服务器”的能力,这样它就可以保护主体和客体,防止其直接联系。

代理服务器可以在其中进行协调,这样它就可以过滤和管理访问,也可以管理主体和客体发出和接收的内容。

这种方法可以通过以各种方式集成到现有目录而实现。

应用层防火墙还能够仿效暴露在互联网上的服务器,因此正在访问的用户就可以拥有一种更加快速而安全的连接体验。

3.2 使用现状
众所周知,应用防火墙确实有优于包过滤型和全状态包检测型(stateful packet inspection)防火墙的地方。

虽然这些类型的防火墙可以防止各种网络层的攻击,但它们却无法阻挡利用大多数Web应用程序漏洞进行的攻击。

利用这些严重的漏洞,黑客们操纵URL地址就可以直接攻击目标网站。

不过,这些防火墙
可以通过允许或拒绝特定的应用程序或者应用的特定功能,实现很多精细化的控制。

应用防火墙还可以直接验证用户身份,这意味着它允许或拒绝特定用户发出的远程登录命令,而其他防火墙只能控制特定主机的传入请求。

应用层防火墙可以检测数据包的有效荷载根据这些实际内容作出相应决定,还能提供更好的内容过滤能力。

它们还可以审查完整的网络数据包,而不仅仅是网络地址和端口,这就使得它们有更强大的日志记录功能,例如可以记录某个特定程序发出的命令这样的日志事件,这对于处理突发安全事件和实施安全策略提供了很有价值的信息。

既然应用层防火墙有这么多明显的安全优点,为什么它却不是默认选项呢?其主要原因在于成本和性能。

如果所有进站和出站的网络流量都需要在应用层上进行检测,那么数据在检测前就必须首先通过OSI的七层,而包过滤型和全状态包检测型防火墙在只网络层对流量进行检测。

由于防火墙对数据包进行读取和解析必然消耗CPU周期,尤其是解析过程特别耗费CPU资源,所以很有可能形成网络性能的障碍。

这也意味着应用层防火墙更容易受到分布式拒绝服务攻击,因此不太适合高带宽或实时应用程序。

而它也很可能会成为操作系统里的安全漏洞。

应用层防火墙的另一个缺点就是对每个协议都需要单独的代理程序,因此它对新的网络程序或网络协议的支持很有局限性。

虽然大多数防火墙厂商为了应对未定义的网络协议或应用程序都提供了一般的代理程序,但在这种情况下,它往往会完全允许流量通过防火墙,而忽略很多应用层防火墙应做的操作。

相比之下,状态包检测防火墙和包过滤防火墙一样,只会对网络性能造成很小的影响,因而可以实现对应用程序的透明和独立。

随着客户端或代理数目的增加,可扩充性也成为了的问题。

应用层防火墙通常需要网络中的客户端安装专门的软件或更改某些配置,以便能够连接到应用代理。

这在一个大的网络里会造成非常大的影响。

为了减轻防火墙的负载压力,在对那些及时性要求不高的服务(如e-mail服务以及大部分的网络流量)进行安全处理的时候,可能会需要对部署专门的代理服务器,从而也增加了全部费用。

在被动安全模型里,不能被认定为非法的行为就会被视为合法行为。

而主动安全模型则与之不同,它关注的是哪些操作是用户允许的,也就是说,除了已被许可的操作,其它都是非法的。

尽管主动安全模型是更好的选择,但是往往这类产品价格更高也更复杂。

相关主题