第10章 防火墙与入侵检测
内容提要
◎ 防火墙的基本概念,常见防火墙类型及如何使用规则集实现防火墙
◎ 入侵检测系统的基本概念、入侵检测的常用方法
◎ 编写入侵检测工具及如何使用工具实现入侵检测
防火墙的定义
防火墙的本义原是指古代人们房屋之间修建的墙,这道墙可以防止火灾发生的时候蔓延到别的房屋,如图9-1所示。
防火墙的定义
这里所说的防火墙不是指为了防火而造的墙,而是指隔离在本地网络与外界网络之间的一道防御系统。
在互联网上,防火墙是一种非常有效的网络安全系统,通过它可以隔离风险区域(Internet或有一定风险的网络)与安全区域(局域网)的连接,同时不会妨碍安全区域对风险区域的访问,网络防火墙结构如图9-2所示。
防火墙的功能
根据不同的需要,防火墙的功能有比较大差异,但是一般都包含以下三种基本功能。
可以限制未授权的用户进入内部网络,过滤掉不安全的服务和非法用户
防止入侵者接近网络防御设施
限制内部用户访问特殊站点
由于防火墙假设了网络边界和服务,因此适合于相对独立的网络,例如Intranet等种类相对集中的网络。Internet上的Web网站中,超过三分之一的站点都是有某种防火墙保护的,任何关键性的服务器,都应该放在防火墙之后。
防火墙的必要性
随着世界各国信息基础设施的逐渐形成,国与国之间变得“近在咫尺”。Internet已经成为信息化社会发展的重要保证。已深入到国家的政治、军事、经济、文教等诸多领域。许多重要的政府宏观调控决策、商业经济信息、银行资金转帐、股票证券、能源资源数据、科研数据等重要信息都通过网络存贮、传输和处理。因此,难免会遭遇各种主动或被动的攻击。例如信息泄漏、信息窃取、数据篡改、数据删除和计算机病毒等。因此,网络安全已经成为迫在眉睫的重要问题,没有网络安全就没有社会信息化
防火墙的局限性
没有万能的网络安全技术,防火墙也不例外。防火墙有以下三方面的局限:
防火墙不能防范网络内部的攻击。比如:防火墙无法禁止变节者或内部间谍将敏感数据拷贝到软盘上。
防火墙也不能防范那些伪装成超级用户或诈称新雇员的黑客们劝说没有防范心理的用户公开其口令,并授予其临时的网络访问权限。
防火墙不能防止传送己感染病毒的软件或文件,不能期望防火墙去对每一个文件进行扫描,查出潜在的病毒。
防火墙的分类
常见的放火墙有三种类型:1、分组过滤防火墙;2、应用代理防火墙;3、状态检测防火墙。
分组过滤(Packet Filtering):作用在协议组的网络层和传输层,根据分组包头源地址、目的地址和端口号、协议类型等标志确定是否允许数据包通过,只有满足过滤逻辑的数据包才被转发到相应的目的地的出口端,其余的数据包则从数据流中丢弃。
应用代理(Application Proxy):也叫应用网关(Application Gateway),它作用在应用层,其特点是完全“阻隔”网络通信流,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用。实际中的应用网关通常由专用工作站实现。
状态检测(Status Detection):直接对分组里的数据进行处理,并且结合前后分组的数据进行综合判断,然后决定是否允许该数据包通过。
分组过滤防火墙
数据包过滤可以在网络层截获数据。使用一些规则来确定是否转发或丢弃所各个数据包。
通常情况下,如果规则中没有明确允许指定数据包的出入,那么数据包将被丢弃
一个可靠的分组过滤防火墙依赖于规则集,表9-1列出了几条典型的规则集。
第一条规则:主机10.1.1.1任何端口访问任何主机的任何端口,基于TCP协议的数据包都允许通过。第二条规则:任何主机的20端口访问主机10.1.1.1的任何端口,基于TCP协议的数据包允许通过。第三条规则:任何主机的20端口访问主机10.1.1.1小于1024的端口,如果基于TCP协议的数据包都禁止通过。
用WinRoute创建包过滤规则
WinRoute目前应用比较广泛,既可以作为一个服务器的防火墙系统,也可以作为一个代理服务器软件。目前比较常用的是WinRoute4.1,安装文件如图9-4所示。
以管理员身份安装该软件,安装完毕后,启动“WinRoute Administration”,WinRoute的管理界面如图9-5所示。
默认情况下,该密码为空。点击按钮“OK”,进入系统管理。当系统安装完毕以后,该主机就将不能上网,需要修改默认设置,点击工具栏图标,出现本地网络设置对话框,然后查看“Ethernet”的属性,将两个复选框全部选中,如图9-6所示。
利用WinRoute创建包过滤规则,创建的规则内容是:防止主机被别的计算机使用“Ping”指令探测。选择菜单项“Packet Filter”,如图9-7所示。
在包过滤对话框中可以看出目前主机还没有任何的包规则,如图9-8所示。
选中图9-8中网卡图标,单击按钮“添加”。出现过滤规则添加对话框,所有的过滤规则都在此处添加,如图9-9所示。
因为“Ping”指令用的协议是ICMP,所以这里要对ICMP协议设置过滤规则。在协议下拉列表中选择“ICMP”,如图9-10所示。
在“ICMP Type”栏目中,将复选框全部选中。在“Action”栏目中,选择单选框“Drop”。在“Log Packet”栏目中选中“Log into Window”,创建完毕后点击按钮“OK”,一条规则就创建完毕,如图9-11所示。
为了使设置的规则生效,点击按钮“应用”,如图9-12所示。
设置完毕,该主机就不再响应外界的“Ping”指令了,使用指令“Ping”来探测主机,将收不到回应,如图9-13所示。
虽然主机没有响应,但是已经将事件记录到安全日志了。选择菜单栏“View”下的菜单项“Logs>Security Logs”,察看日志纪录如图9-14所示。
案例9-2 用WinRoute禁用FTP访问
FTP服务用TCP协议, FTP占用TCP的21端口,主机的IP地址是“172.18.25.109”,首先创建规则如表9-2所示。
利用WinRoute建立访问规则,如图9-15所示。
设置访问规则以后,再访问主机“172.18.25.109”的FTP服务,将遭到拒绝,如图9-16所示。
访问违反了访问规则,会在主机的安全日志中记录下来,如图9-17所示。
案例9-3 用WinRoute禁用HTTP访问
HTTP服务用TCP协议,占用TCP协议的80端口,主机的IP地址是“172.18.25.109”,首先创建规则如表9-3所示。
利用WinRoute建立访问规则,如图9-18所示。
打开本地的IE连接远程主机的HTTP服务,将遭到拒绝,如图9-19所示。
访问违反了访问规则,所以在主机的安全日志中记录下来,如图9-20所示。
应用代理防火墙
应用代理(Application Proxy)是运行在防火墙上的一种服务器程序,防火墙主机可以是一个具有两个网络接口的双重宿主主机,也可以是一个堡垒主机。代理服务器被放置在内部服务器和外部服务器之间,用于转接内外主机之间的通信,它可以根据安全策略来决定是否为用户进行代理服务。代理服务器运行在应用层,因此又被称为“应用网关”。
常见防火墙系统模型
常见防火墙系统一般按照四种模型构建:
筛选路由器模型、单宿主堡垒主机(屏蔽主机防火墙)模型、双宿主堡垒主机模型(屏蔽防火墙系统模型)和屏蔽子网模型。
筛选路由器模型
筛选路由器模型是网络的第一道防线,功能是实施包过滤。创建相应的过滤策略时对工作人员的TCP/IP的知识有相当的要求,如果筛选路由器被黑客攻破那么内部网络将变的十分的危险。该防火墙不能够隐藏你的内部网络的信息、不具备监视和日志记录功能。典型的筛选路由器模型如图9-23所示。
单宿主堡垒主机模型
单宿主堡垒主机(屏蔽主机防火墙)模型由包过滤路由器和堡垒主机组成。该防火墙系统提供的安全等级比包过滤防火墙系统要高,因为它实现了网络层安全(包过滤)和应用层安全(代理服务)。所以入侵者在破坏内部网络的安全性之前,必须首先渗透两种不同的安全系统。单宿主堡垒主机的模型如图9-24所示。
双宿主堡垒主机模型
双宿主堡垒主机模型(屏蔽防火墙系统)可以构造更加安全的防火墙系统。双宿主堡垒主机有两种网络接口但是主机在两个端口之间直接转发信息的功能被关掉了。在物理结构上强行将所有去往内部网络的信息经过堡垒主机。双宿主堡垒主机模型如图9-25所示。
屏蔽子网模型
屏蔽子网模型用了两个包过滤路由器和一个堡垒主机。它是最安全的防火墙系统之一,因为在定义了“中立区”(DMZ,Demilitarized Zone)网络后,它支持网络层和应用层安全功能。网络管理员将堡垒主机、信息服务器、Modem组,以及其它公用服务器放在DMZ网络中。如果黑客想突破该防火墙那么必须攻破以上三个单独的设备,模型如图9-26所示。
创建防火墙的步骤
成功的创建一个防火墙系统一般需要六步:
第一步:制定安全策略,第二步:搭建安全体系结构,第三步:制定规则次序,第四步:落实规则集,第五步:注意更换控制,第六步:做好审计工作。
入侵检测系统的概念
入侵检测系统1DS(Intrusion Detection System)指的是一种硬件或者软件系统,该系统对系统资源的非授权使用能够做出及时的判断、记录和报警。
入侵检测系统面临的挑战
一个有效的入侵检测系统应限制误报出现的次数,但同时又能有效截击。误报是指被入侵检测系统测报警的是正常及合法使用受保护网络和计算机的访问。误报是入侵检测系统最头疼的问题,攻击者可以而且往往是利用包的结构伪造无威胁的“正常”假警报,而诱导没有警觉性的管理员人把入侵检测系统关掉。
误报
没有一个入侵检测能无敌于误报,因为没有一个应用系统不会发生错误,原因主要有四个方面。
1、缺乏共享数据的机制
2、缺乏集中协调的机制
3、缺乏揣摩数据在一段时间内变化的能力
4、缺乏有效的跟踪分析
入侵检测系统的类型和性能比较
根据入侵检测的信息来源不同,可以将入侵检测系统分为两类:基于主机的入侵检测系统和基于网络的入侵检测系统。
1、基于主机的入侵检测系统:主要用于保护运行关键应用的服务器。它通过监视与分析土机的审计记录和日志文件:来检测入侵。日志中包含发生在系统上的不寻常和不期望活动的证据,这些证据可以指出有人正在入侵或已成功入侵了系统。通过查看日志文件,能够发现成功的入侵或入侵企图,并很快地启动相应的应急响应程序。
2、基于网络的入侵检测系统:主要用于实时监控网络关键路径的信息,它监听网络上的所有分组来采集数据,分析可疑现象。
入侵检测的方法
目前入侵检测方法有三种分类依据:
1、根据物理位置进行分类。
2、根据建模方法进行分类。
3、根据时间分析进行分类。
常用的方法有三种:静态配置分析、异常性检测方法和基于行为的检测方法。
静态配置分析
静态配置分析通过检查系统的配置,诸如系统文件的内容,来检查系统是否已经或者可能会遭到破坏。静态是指检查系统的静态特征(比如,系统配置信息)。
采用静态分析方法主要有以下几方面的原因:入侵者对系统攻击时可能会留下痕迹,可通过检查系统的状态检测出来。
异常性检测方法
异常性检测技术是一种在不需要操作系统及其安全性缺陷的专门知识的情况下,就可以检测入侵者的方法,同时它也是检测冒充合法用户的入侵者的有效方法。但是。在许多环境中,为用户建立正常行为模式的特征轮廓以及对用户活动的异常性进行报警的门限值的确定都是比较困难的事。因为并不是所有入侵者的行为都能够产生明显的异常性,所以在入侵检测系统中,仅使用异常性检测技术不可能检测出所有的入侵行为。而且,有经验的入侵者还可以通过缓慢地改变他的行为,来改变入侵检测系统中的用户正常行为模式,使其入侵行为逐步变为合法,这样就可以避开使用异常性检测技术的入侵检测系统的检测。
基于行为的检测方法
基于行为的检测方法通过检测用户行为中的那些与某些已知的入侵行为模式类似的行为或那些利用系统中缺陷或者是间接地违背系统安全规则的行为,来检测系统中的入侵活动。
基于入侵行为的入侵检测技术的优势:如果检测器的入侵特征模式库中包含一个已知入侵行为的特征模式,就可以保证系统在受到这种入侵行为攻击时能够把它检测出来。但是,目前主要是从已知的入侵行为以及已知的系统缺陷来提取入侵行为的特征模式,加入到检测器入侵行为特征模式库中,来避免系统以后再遭受同样的入侵攻击。
案例9-4 检测与端口关联的应用程序
网络入侵者都会连接到主机的某个非法端口,通过检查出与端口关联应用程序,可以进行入侵检测,这种方法属于静态配置分析。
利用工具软件fport.exe可以检查与每一端口关联的应用程序,执行程序如图9-27所示。
案例9-5 程序分析:检测与端口关联的应用程序
利用VC++6.0建立基于控制台的Win32应用程序,该程序需要一个外置的DLL文件“DBP2P.dll”,需要将该文件拷贝到工程目录下的Debug目录下。
该案例包含两个程序:proj9_5.cpp和dbp2p.h。其中proj9_5.cpp文件是主程序,dbp2p.h是动态连接库文件“DBP2P.dll”文件的头文件。
入侵检测的步骤
入侵检测系统的作用是实时地监控计算机系统的活动,发现可疑的攻击行为,以避免攻击的发生,或减少攻击造成的危害。由此也划分了入侵检测的三个基本步骤:
信息收集、数据分析和响应。
信息收集
入侵检测的第一步就是信息收集,收集的内容包括整个计算机网络中系统、网络、数据及用户活动的状态和行为。
入侵检测在很大程度上依赖于收集信息的可靠性、正确性和完备性。因此,要确保采集、报告这些信息的软件工具的可靠性,这些软件本身应具有相当强的坚固性,能够防止被篡改而收集到错误的信息。否则,黑客对系统的修改可能使入侵检测系统功能失常但看起来却跟正常的系统一样。
数据分析
数据分析(Analysis Schemes)是入侵检测系统的核心,它的效率高低直接决定了整个入侵检测系统的性能。根据数据分析的不同方式可将入侵检测系统分为异常入侵检测与误用入侵检测两类:
响应
数据分析发现入侵迹象后,入侵检测系统的下一步工作就是响应。而响应并不局限于对可疑的攻击者。目前的入侵检测系统一般采取下列响应。
1、将分析结果记录在日志文件中,并产生相应的报告。
2、触发警报:如在系统管理员的桌面上产生一个告警标志位,向系统管理员发送传呼或电子邮件等等。
3、修改入侵检测系统或目标系统,如终止进程、切断攻击者的网络连接,或更改防火墙配置等。
案例9-6 入侵检测工具:BlackICE
BlackICE是一个小型的入侵检测工具,在计算机上安全完毕后,会在操作系统的状态栏显示一个图标,当有异常网络情况的时候,图标就会跳动。主界面如图9-31所示。
可以查看主机入侵的信息,选择属性页“Intruders”,如图9-32所示。
入侵检测工具:冰之眼
“冰之眼”网络入侵检测系统是NSFOCUS系列安全软件中一款专门针对网络遭受黑客攻击行为而研制的网络安全产品,该产品可最大限度地、全天候地监控企业级的安全。由于用户自身网络系统的缺陷、网络软件的漏洞以及网络管理员的疏忽等等,都可能使网络入侵者有机可乘,而系统遭受了攻击,就可能造成重要的数据、资料丢失,关键的服务器丢失控制权等。
使用“冰之眼”,系统管理人员可以自动地监控网络的数据流、主机的日志等,对可疑的事件给予检测和响应,在内联网和外联网的主机和网络遭受破坏之前阻止非法的入侵行为,主界面如图9-33所示。
管理员可以添加主机探测器来检测系统是否被入侵,选择菜单栏“网络”下的菜单项“添加探测器”,可以添加相关的探测器,如图9-34所示。
本章总结
本章介绍防御技术中的防火墙技术与入侵检测技术。重点理解防火墙的概念、分类、常见防火墙的系统模型及创建防火墙的基本步骤。
掌握使用Winroute创建简单的防火墙规则。
重点理解入侵检测系统的基本概念、检测的方法及入侵检测的步骤。
掌握编写简单入侵检测的程序,掌握一种入侵检测工具。
本章习题
一、选择题
1. 仅设立防火墙系统,而没有___________,防火墙就形同虚设。
A. 管理员 B. 安全操作系统
C. 安全策略 D. 防毒系统
2. 下面不是防火墙的局限性的是___________。
A. 防火墙不能防范网络内部的攻击
B. 不能防范那些伪装成超级用户或诈称新雇员的黑客们劝说没有防范心理的用户公开其口令,并授予其临时的网络访问权限。
C. 防火墙不能防止传送已感染病毒的软件或文件,不能期望防火墙对每一个文件进行扫描,查出潜在的病毒。
D. 不能阻止下载带病毒的数据。
3. ___________作用在应用层,其特点是完全“阻隔”网络通信流,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用。
A. 分组过滤防火墙 B. 应用代理防火墙
B. 状态检测防火墙 D. 分组代理防火墙
4. 下面的说法错误的是___________。
A. 规则越简单越好。
B. 防火墙和防火墙规则集只是安全策略的技术实现。
C. 建立一个可靠的规则集对于实现一个成功的、安全的防火墙来说是非常关键的。
D. DMZ网络处于内部网络里,严格禁止通过DMZ网络直接进行信息传输
5. 下面不属于入侵检测分类依据的是___________。
A. 物理位置 B. 静态配置
C. 建模方法 D. 时间分析
本章习题
二、填空题
1. ___________是一种网络安全保障技术,它用于增强内部网络安全性,决定外界的哪些用户可以访问内部的哪些服务,以及哪些外部站点可以被内部人员访问。
2. 常见的防火墙有3种类型:___________,应用代理防火墙,状态检测防火墙。
3. 常见防火墙系统一般按照4种模型构建:___________、单宿主堡垒主机(屏蔽主机防火墙)模型、双宿主堡垒主机模型(屏蔽防火墙系统模型)和___________。
4. ___________是一种增强系统安全的有效方法,能检测出系统中违背系统安全性规则或者威胁到系统安全的活动。
5. 入侵检测的3个基本步骤:信息收集、___________和响应。
本章习题
三、简答题
1. 什么是防火墙?古时候的防火墙和目前通常说的防火墙有什么联系和区别?
2. 简述防火墙的分类,并说明分组过滤防火墙的基本原理。
3. 常见防火墙模型有哪些?比较它们的优缺点。
4. 编写防火墙规则:禁止除管理员计算机(IP为172.18.25.110)外任何一台计算机访问某主机(IP为172.18.25.109)的终端服务(TCP端口3389)。
5. 使用Winroute实现第4题的规则。(上机完成)
6. 简述创建防火墙的基本步骤及每一步的注意点。
7. 什么是入侵检测系统?简述入侵检测系统目前面临的挑战。
8. 简述入侵检测常用的4种方法。
9. 编写程序实现每10秒检查一次与端口关联的应用程序。(上机完成)
10. 简述入侵检测的步骤及每一步的工作要点。
11. 对某一台装有入侵检测工具的计算机进行扫描、攻击等实验,查看入侵检测系统的反应,并编写实验报告。(上机完成)