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