防火墙和入侵防护IPS

防火墙的必要性


  1. 驻地网:由用户终端至网络接口所包含的机线设备组成,以使用户可以灵活方便地进入接入网。
  2. 防火墙设置在驻地网和Internet之间,以建立二者之间的可控链路,构筑外部安全壁垒或者说安全边界。
  3. 目的是保护驻地网不受Internet攻击,提供一个能加强安全和审计的遏制点。

防火墙的特征


  1. 防火墙的设计目标
  • 所有出战和入站的流量都必须经过防火墙
  • 只有符合本地安全策略的流量才允许通过防火墙
  • 防火墙本身不能被渗透这就要求防火墙运行在有安全操纵系统的可信系统上
  1. 防火墙提供的四种机制
  • 服务控制:确定可以访问的Internet的服务类型,这种类型的过滤是双向的。

防火墙可以基于IP地址,协议和TCP端口号对流量进行过滤
防火墙自身也可以作为服务器,比如web服务器或邮件服务器

  • 方向控制:确定特定的服务请求发起和允许通过的防火墙方向。
  • 用户控制:根据访问服务器的用户来控制其访问权限,这个功能通常应用在防火墙周界以内的用户。
  • 行为控制:控制特定服务的使用方法。例:控制外部用户只能对web服务器的一部分进行进行访问。
  1. 防火墙的功能
  • 防火墙定义了一个遏制点,阻止潜在威胁的安全服务进入或离开网络,并且防止各种IP欺骗和路由攻击。
  • 防火墙提供了监视安全事件的相关场所。例:审计和警告。
  • 防火墙可以为各种与安全事件不关的Internet功能的实现提供一个便利的平台。例:网络地址转换-将本地地址映射成Interne地址。
  • 防火墙可以作为IPsec平台。
  1. 防火墙的局限性
  • 防火墙不能阻止那些绕过防火墙的攻击
  • 防火墙不能完全防止内部威胁
  • 一个设置不恰当的无线局域网可能允许来自公司外部的访问
  • 笔记本电脑,PDA或便携式存储设备可以在其他地方被感染之后,又连接到企业内部使用。

防火墙的类型


  1. 包过滤防火墙
  • 主动包过滤防火墙:只允许符合特定规则的包通过;被动包过滤防火墙:拒绝符合一定规则的包。
  • 包过滤防火墙对每个进出防火墙的IP包应用一些规则,然后决定转发或丢弃此包。
  • 一般防火墙都会配置成双向过滤。
  • 过滤规则基于网络包所包含的信息,包括:

源地址
目的地址
源端口号和目的端口号
IP协议域
接口:对于有三个或更多接口的防火墙来说,定义哪个接口用于包的出战,哪个用于包的进站。

  • 包过滤器设置成一列基于IP和TCP头域匹配的规则,如果其中的某条规则匹配,则调用此规则来判断该包是转发还是丢弃,如果没有匹配的规则,则执行默认的操作。

默认丢弃:没有被明确允许的都将被丢弃
默认允许:没有被明确禁止的都将被允许

  • 包过滤防火墙的例子,采取默认丢弃策略
    在这里插入图片描述

规则集A表明入站的邮件是允许通过的,但仅限于流向网关主机,来自一个特定主机SPIGOT的包都会被阻止,因为该主机有过在电子邮件消息中发送大块文件的历史记录。
规则集B表示默认丢弃原则
规则集C表示允许任意主机向外部发送邮件

存在问题:外部主机邮件服务器使用25端口号是默认情况,外部主机使用其他应用程序与25端口号相连,因此攻击者可以通过发送tcp源端口号为25访问内部机器。

规则集D允许源地址在某些指定的内部主机的范围内,同时允许目的TCP端口号为25的IP包流出防火墙,它也允许源端口号为25同时tcp分段中ACK被置位的数据包流入防火墙。
规则集E:

FTP过程中应用了两条TCP连接:一条用于建立文件传输机制的控制连接,另一条用于实际文件传输的数据连接。数据连接使用了在实际传输时动态分配不同的端口号,大多数服务器使用低端口号,大多数出战的应用程序往往使用高端口号。
规则允许:
内部指定主机发出的包
外部机器对内部机器发起的连接的应答包
外部机器发送到内部机器高端口号的包

  • 包过滤防火墙的优点:
    简单,对用户是透明,而且具有很快的处理速度。
  • 包过滤防火墙的缺点:

包过滤防火墙不检查更高层的数据,因此不能阻止针对特定应用程序漏洞或功能所进行的攻击。
包过滤防火墙可利用的信息有限,使得日志记录功能受限,记录的信息较少。
不支持用户认证
包过滤防火墙对利用TCP/IP规范和协议栈存在的问题进行的攻击没有很好的应对措施,比如地址欺骗攻击
由于包过滤防火墙依赖于几个变量进行过滤,所以防火墙的不恰当设置会使包过滤防火墙的安全性受到威胁。

  • 针对包过滤防火墙的攻击方式以及应对措施:

IP地址欺骗:攻击者从外部向内传递数据包,源地址指定为内部主机,。攻击者希望通过这样的假冒内部可信主机地址的包来渗透防火墙系统。防火墙可以丢弃那些从外部到达但是源地址指定为内部主机的数据包。
源路由攻击( source routing attack) : 惊端指定包通过Internet使用的路由,希望可以绕过对源路由信息的安全检查。应对措施是丢弃所有使用了此选项的包。
细小分段攻击:攻击者利用IP分段来产生特别小的数据分段,并强制将TCP头信息装入到分散的分段中,攻击者希望过滤防火墙检查第一个分段而允许其他分段通过。应对措施:包的第一个分段必须包含最少的预定传输头,如果第一个分段被否决,过滤器将记住这个包,并丢弃后面的所有包。

  1. 状态检测防火墙
  • 通常,当一个应用程序使用TCP连接与远程主机创建会话时,需要建立一条客户端与服务器之间的TCP连接,其中服务器的应用程序的TCP端口号是一个小于1024的数,本地应用程序的端口号是一个介于1024-65535之间的数。
  • 状态包检测防火墙通过建立一个出战TCP连接目录来强制执行TCP流量规则,当前每个已建立的连接都有一项与之对应,只有数据包符合这个目录中的某项时,包过滤才允许那些到达高编号的出站流量通过。
    在这里插入图片描述
  • 状态检测防火墙和包过滤防火墙检测相同的信息,不同的是包过滤防火墙还会记录TCP连接信息。
  • 一些状态检测防火墙还会检测TCP包的序号,以阻止基于序号的攻击,例如:会话劫持。
  • 为了识别和跟踪相关的连接,一些状态检测防火墙还限制了一些众所周知协议的应用数据量。
  1. 应用级网关
  • 工作过程:当用户需要使用服务器上的数据时,首先将请求发送给代理服务器,代理服务器再根据这一请求向服务器索取数据,然后再由代理服务器传输给系统。
  • 如果网关不包含某种服务的代理实现机制,那么该服务将不会得到网关的支持,并且对服务的请求不会通过防火墙。
  • 应用级网关往往比包过滤防火墙更安全,应用级网关不用判断大量的tcp和ip层上的连接是否允许通过,只需要检查少数可以允许通过的应用程序,另外,在应用层上很容易审计所有的入站流量。
  • 缺点:带来了每条连接的额外处理开销

在两个终端用户之间有两条接合连接,网关处于接合点上,它必须对所有双向流量进行检查和传送。

  • 主要工作在应用层,又被称为应用层防火墙,它检查进出口的数据包,通过自身复制传递数据,防止在受信主机与非受信主机间直接建立连接。
  1. 电路级网关
  • 可能是单机系统或者是应用级网关为特定应用程序执行的专门功能,与应用级网关相似,电路级网关不允许端到端的TCP连接,而是建立两条TCP连接,一条在自身与内部主机之间,另一条在自身与外部主机之间。


– 安全功能包括判断哪些连接是允许的。 – 电路级网关的一个典型的应用是系统管理员信任系统内部用户,此时网关在检查入站应用数据是否有禁止的功能增加了一些额外的开销,对于出战的数据则没有这种开销。 *** ###
防火墙的布置
*** 1. 堡垒主机 – 堡垒主机被称为网络安全中极强端系统,堡垒主机可以作为应用级或电路级网关。 – 特征: >堡垒主机的硬件平台上允许操作系统的安全版本,使其称为可信系统。 只有那些被管理员认可的基本服务才可以安装在堡垒主机上,基本服务主要包括代理应用程序,例如DNS,FTP,HTTP和SMTP。 在用户被允许访问代理服务之前,堡垒主机可以会对用户进行附加的认证。 每个代理服务器被配置为只支持标准命令集的子集 每个代理被配置为只允许指定的系统访问 每个代理记录所有通过的流量,每条连接以及每条连接的持续时间,维护详细的审计信息。 每个代理模块是专门为网络安全设计的非常小的软件包 在堡垒主机中每一个代理都独立于其他代理,在系统运行中,一个代理出现问题,可以卸载这个代理而不影响其他代理的运行。 除了读自己的初始配置文件以外,代理通常不会进行磁盘读取操作。 每一个代理都在堡垒主机上又一个专用且安全的目录,并以一个无特权的用户身份运行。 2. 基于主机的防火墙 – 基于主机的防火墙是一个用于保障个人主机安全的软件模块,通常位于服务器上 – 优点: >过滤规则可以根据主机环境定制,既能够执行服务器共有的安全策略,也能够针对不同的应用使用不同的过滤规则。 >保护功能独立于网络的拓扑结构,因此不论是内部攻击还是外部攻击都必须通过防火墙。 >提高了一个额外的保护层。 3. 个人防火墙 – 是个人电脑上的一个软件模块 – 个人防火墙比基于主机的防火墙或单机防火墙要简单的多,个人防火墙的首要功能是拒绝对本机的非法远程访问,防火墙也能够监控出站活动,来试图检测和阻断蠕虫和其他恶意软件的行为。 *** ###
防火墙的部署和配置
*** 1. DMZ网络 – 外部防火墙被设置在局域网或者企业网络的边缘,紧接这Internet或者某个广域网的边界路由器的内侧。
– 一个或更多个内部防火墙用于保护企业内部网 – 在这两个防火墙之间是由一个或更多设备联网形成的称为非军事区的网络区域(DMZ),可以从外部访问但是需要一定保护措施的系统通常被设置在DMZ网络中 – 外部防火为DMZ区域提供符合其需要并同时保证其外部连通性的访问控制和保护措施,同时也为内部网的其他部分提供了一些基本的安全保护。 – 内部防火墙的作用: >与外部防火墙相比,内部防火墙增加了更加严格的过滤能力,以保护内部网络服务器和工作站免遭受外部攻击。 >对于DMZ网络,内部防火墙提供双重保护的措施。内部防火墙保护网络的其他部分免受由DMZ网络发起的攻击,这样的攻击可能来摞于蠕虫( worm )、 rootkits,bots 或者其他寄宿在DMZ系统中的恶意软件。其次,内部防火墙可以保护DMZ系统不受来自内部保护网络的攻击。 >多重内部防火墙可以保护内部网的每个部分不受其他部分的攻击。 2. 虚拟专用网络(VPN) – VPN的作用:让外地员工访问到内网资源,利用VPN的解决方法就是在内网中架设一台VPN服务器。外地员工在当地连上互联网后,通过互联网连接VPN服务器,然后通过VPN服务器进入企业内网。 – 存在的问题:公共网络的使用将公司的通信流量暴露在可能被窃听的环境下,并且为非法用户提供了一个接入点。 – 解决方案:VPN在底层协议上使用加密技术和身份认证技术,通过不安全的网络环境建立了一个安全的连接,但是通信两端必须使用相同的加密技术和身份认证技术实现,加密技术可能是由防火墙软件或路由器来提供的。 – 实例:IPsec ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020021211372727.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM5MjQ5MzQ3,size_16,color_FFFFFF,t_70) >这些协议在网络设备中进行工作,例如路由器和防火墙内,IPsec的设备会加密和压缩所有发送到广域网的数据,并且解密从广域网传入的数据,也可能提供认证功能,这些功能对局域网的工作站和服务是透明的,通过拨号接入广域网的个人用户也可以实现安全的传输。 3. 分布式防火墙 – 分布式防火墙涉及在一个中心管理员控制下协同工作的独立防火墙设备和基于主机的防火墙。

  • 有了分布式防火墙,使得同时建立内部DMZ和外部DMZ有了可能,没有多少重要信息而不需要太多保护的网络服务器可以被设置在外部DMZ,位于外部防火墙外侧,所需的保护由基于主机的防火墙提供。
  • 安全监控是分布式防火墙配置的一个重要方面,监控包括日志统计和分析,防火墙统计以及细粒度的单个主机的远程监控。
  1. 防火墙部署和拓扑结构小结
  • 驻留主机的防火墙:包括个人防火墙和基于主机的防火墙。
  • 屏蔽路由器:外部网络和内部网络之间具有无状态或者全部包过滤功能的单个路由器。
  • 独立内嵌堡垒主机:在外部路由器和内部路由器之间的单独防火墙设备。
  • 独立T型堡垒主机:类似于独立内嵌堡垒主机,但是在堡垒主机上又一个专门的接口通往一个非军事区域,外部可见的服务设置在此DMZ内。
  • 双内嵌型堡垒主机:DMZ被夹在两个堡垒防火墙之间,不在防火墙独立的网络接口上
  • 双T型堡垒主机:DMZ连接在堡垒防火墙一个独立网络接口上
  • 分布式防火墙

入侵防护系统(IPS)


  1. IPS的两种描述
  • IPS是一个内嵌的基于网络的IDS,它具有通过丢弃数据包来阻止传输的能力,以及简单的检测可疑流量的能力,IPS还可以监视交换机上的接口,然后发送适当的命令给一个路由器或者防火墙来阻止网络流量。
  • IPS是对防火墙的增加,是在防火墙的指令集上增加了IDS的算法。
  1. 基于主机的IPS(HIPS)
  • 基于主机的IPS同时使用特征值检测技术和异常检测技术来识别攻击。

特征值检测技术:重点分析数据包中有效载荷的特定内容,寻找那些已经被识别为恶意数据包的模式
异常检测:寻找那些显示出恶意代码特征的程序行为

  • HIPS所涉及的恶意行为类型:

对系统资源的修改
特权升级利用:授予普通用户root访问权限
缓冲区溢出攻击
访问电子邮件目录:蠕虫传播
目录遍历:web服务器上的目录遍历漏洞允许黑客访问服务器上应用程序用户正常访问范围之外的文件。

  • HIPS提供的桌面系统的保护范围:

系统调用:任何攻击的恶意代码都会执行一个系统调用,HIPS可以配置成检查每个系统调用的恶意特征。
文件系统的访问:HIPS可以确保文件访问系统调用是非恶意的并且符合既定的安全策略。
系统注册表的设置:注册表维护着程序的日常配置信息,它经常被恶意地修改以延长一次攻击的存活期,HIPS可以确保系统注册表保持其完整性。
主机输入/输出:I/O通信可以传播攻击代码和恶意程序,HIPS可以检测并加强合法的客户端与网络的交互,以及客户端与其他设备的交互。

  1. 基于网络的IPS(NIPS)
  • 基于网络的IPS实质上是一个能够丢弃数据包和拆除TCP连接权限的内嵌NIDS,和NIDS一样,NIPS使用特征值检测和异常检测之类的技术。
  • NIPS使用流数据保护,这种技术要求对一个数据包序列中的应用有效载荷进行重新组装,每当数据流中又一个数据包到达时,IPS设备对流的全部内容进行过滤,当一个数据流被确定为恶意时,最后到达的以及所有属于可以数据流的数据包都被丢弃。
  • NIPS设备使用的识别恶意数据包的方法:

模式匹配:扫描进入特定数据包,寻找与已知攻击相匹配的字节序列。
状态匹配:在一个上下文相关的传输流中扫描攻击的特征码,而不是在数据包中取查找
协议异常:按照RFC中提及的标准集来寻找偏差
传输异常:寻找不寻找的传输活动。例如:一个UDP数据包洪泛流或者网络中出现了一个新设备
统计异常:开发一些正常的传输活动和吞吐量的基线,并且在与基线发生偏离时报警。

  1. snort line
  • snort line中引入三种新的规则,并提供了入侵防护的特征:

丢弃(drop):依据规则拒绝数据包,并记录结果
拒绝(reject):拒绝一个数据包并记录,另外还返回一个错误消息。如果是TCP包,这个消息是TCP复位消息,如果是UDP数据包,这个消息是ICMP端口不可达数据包。
简单丢弃(sdrop):拒绝一个数据包,不记录。

  • snort line包含一个可替换的选型,可以允许snort用户修改数据包而不是丢弃它们,这个对蜜罐系统是很有帮助的,蜜罐系统就是通过修改数据包使攻击失去效力,而不是阻止检测到的攻击。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平