发新话题
打印

[转载]万维盾(Web Armor)系统设计与实现

[转载]万维盾(Web Armor)系统设计与实现

信息来源:安全矩阵

摘 要 本文针对当前日益突出的网络安全问题特别是企业网络和ISP网站系统面临的安全问题提出了系统的解决方案,通过分析网络系统所面临的各种威胁和典型的攻击方法手段,总结出一个网站保护系统的所需要解决的问题,并提供了相关的整体防护体系,该防护体系分别用到了Stateful-Inspection包过滤技术,入侵检测技术,跟踪和反跟踪技术。通过描述功能需求,设计出系统基本结构框架,最后实现了一个比较完整的网站保护系统。
关键词 Statefull-Inspection,防火墙,入侵检测,跟踪,反跟踪
1 引言
由于互联网络的发展,计算机网络已经成为国家的经济基础和命脉。众多的企业、各种组织、政府部门与机构都在组建和发展自己的网络,并连接到Internet上,以充分利用网络的信息和资源。伴随着网络的发展,带来了很多的问题,其中安全问题尤为突出。国际计算机安全协会(ICSA, International Computer Security Association)所公布的《2000年度病毒传播趋势报告》显示,电子邮件已跃升为计算机病毒最主要的传播媒介,感染率由1998年的32%、1999年的56%、大幅度增长至2000年的87%。这种快速、大规模的传播方式使企业和个人防不胜防。然而这仅仅是问题的一方面,从2000年年初Yahoo、eBay等著名网站被DDoS攻击开始,到年底微软网站被"黑",大大小小的企业纷纷为自己的内部网络"筑墙",防病毒与防黑客成为确保企业信息系统安全的基本手段。了解网络面临的各种威胁,防范和消除这些威胁,实现真正的网络安全已经成了网络发展中最重要的事情。
2 网络面临的主要威胁
日益严重的网络信息安全问题,不仅使上网企业、机构及用户蒙受巨大经济损失,而且使国家的安全与主权面临严重威胁。要避免网络信息安全问题,首先必须搞清楚触发这一问题的原因。总结起来,主要有以下四个方面原因:黑客的攻击、管理的欠缺、网络的缺陷、软件的漏洞或"后门"。
从攻击者的角度看,标准的攻击方法步骤为:
⑴ 目标探测
⑵ 信息汇集
⑶ 初始访问
⑷ 特权升级
⑸ 踪迹掩盖
⑹ 后门安置
按照G.J.Simmons 1984年首次提出的认证系统的信息理论,网络安全中存在的欺诈成功的概率不为零。考虑两种不同类型的攻击:模仿攻击(impersonation attack)和代替攻击(substitution attack)。Pd0表示敌手采用模仿攻击时最大可能的欺诈成功的概率,Pd1表示在代替攻击时最大可能的欺诈成功的概率。Simmons将敌手欺诈成功的概率定义为
Pd = max(Pd0,Pd1),Pd > 0,
因此在理论上说明了黑客攻击成功的原因。因而设计网络安全系统的主要目标是构造欺诈成功的概率Pd达到最小(尽可能达到它的下界)的认证系统。
3 万维盾(Web Armor)系统简介
万维盾(Web Armor)系统采用多种网络安全技术保护自己免受网络攻击,提高系统的相对安全性。它综合了Stateful -Inspection包过滤技术、入侵检测技术和跟踪、反跟踪技术,协同传统防火墙工作,能够及时发现网络攻击行为,报警并以相应的防护手段对付网络攻击,记录攻击证据以备将来查证,探测对方网络、系统信息,扩展了系统管理员的安全管理能力(包括安全审计、监视、进攻识别和响应),它从计算机网络系统中收集信息并分析。在不影响网络性能的情况下能对网络进行监测,从而防止或减轻上述的网络威胁并对相应的攻击尽早发现和响应:
(1) 采用Stateful-Inspection技术
从数据链路层截取数据包,因为数据链路层是网卡工作的真正位置,确保截取和检查所有通过网络的原始数据包。采用Stateful-Inspection包过滤技术,通过对TCP连接和UDP会话状态的监控,提高包过滤系统的性能和安全性。
(2) 入侵检测技术
通过记录网络上的一切数据包,实时分析各个连接数据流,统计各项数据记入数据库,以备将来查询和恢复用,同时运用统计和模式识别技术判别非法数据流,监控网络异常通信,利用传统防火墙和TCP/IP协议切断非法连接,记录黑名单。
(3) 跟踪和反跟踪技术
对攻击方采用跟踪技术,探测其地理位置、网络拓扑、操作系统类型等信息。利用反跟踪技术给攻击方留下尽量少的踪迹,同时屏蔽掉其他地方对本系统的探测数据包,不给响应或给以虚假的响应,从而给本系统双重的保护。
4 系统结构
万维盾(Web Armor)系统采用Client/Server结构,由监测主机和管理主机组成。

⑴ 监测主机
监测主机截取网络内所有数据包,然后对数据包进行分析;对HTTP、TELNET、SMTP、POP3、FTP协议的数据包进行重组,并将结果存储于数据文件中;利用统计和模式匹配分析网络通信中的入侵行为,发送警报信息并记录详细信息;提供与管理主机的接口以配置系统及查看各项信息;统计网络中的数据流量;通过网络协议探测对方信息。
⑵ 管理主机
管理主机提供图形化的界面,实现对监测主机的管理配置、内容恢复查看、入侵信息查看等功能。管理员通过它可以进行系统管理配置,包括修改监测主机的网络设置、修改登录口令、改变显示方式、添加黑名单、可以查看入侵信息。对于黑名单中的攻击者来说,可以探测其地理位置、网络路由、操作系统等等信息,为攻击行为收集证据。
5 系统工作流程
5.1 数据捕获模块:
为系统提供从物理网络直接收集数据链路层网络原始信息的能力。该部分对于保证整个系统的效率和可移植性至关重要。 目前,Unix系统中有三种常见的数据链路层访问机制,分别是BSD中的BPF,SVR4中的DLPI和Linux的SOCKET_PACKET。在Windows NT中访问数据链路层信息的NDIS机制与在Lnuix中又截然不同。
因此,为了保证系统能够适应多种不同的操作系统平台,必须使其中的"网络分组捕获模块"能够适用于Unix及Windows NT中的多种不同的数据链路层接口,并为上层部分提供统一的应用接口。即,在该层必须屏蔽掉不同系统中不同数据链路设备的差异。
5.2 网络协议解析模块
实现相当于网络协议栈的功能,将由"数据捕获模块"获得的原始网络信息,根据不同的网络协议解析,并将此已解析的协议分组信息送入数据文件,按IP地址、时间等标准统计数据流量,同时利用Stateful-Inspection包过滤技术,根据安全策略从数据包中提取有用信息,舍弃冗余信息以提高效率。对于连接协议TCP应用来说,系统记录每一个连接。对于无连接的协议UDP应用安全的实现是通过在UDP通信之上保持一个虚拟连接来实现。万维盾(Web Armor)把所有网络数据存储于两个文件中,一个存储包头,一个存储数据内容。数据包前四十字节一般为IP和TCP报头。包括IP地址、协议类型、端口号、数据长度等重要信息存储于包头文件中,便于分析、统计。完整数据存储于数据文件中,查询详细信息时则利用之。
5.3 入侵事件检测模块:
入侵技术的发展给入侵检测造成了很大的困难,特别是对基于入侵模式识别的检测系统。预先了解所有可能的入侵方法比较困难,因此一个有效的检测系统不仅需要识别已知的入侵模式,还要有能力对付未知的入侵模式。网络检测技术亦步亦趋地紧跟在已识别的入侵模式之后固然能够大大加强网络的安全防范,但这并不是唯一的发展方向。入侵检测技术从监测网络的异常活动和网络的正常活动两个角度来进行入侵检测则会更为有效。同时检测系统应有一定的学习能力,智能化地校正误警和漏警,提高检测的准确性。万维盾(Web Armor)系统主要通过检测网络数据是否有符合攻击模式库中的模式来判断是否有入侵发生。对于常见的攻击工具的攻击端口,数据序列等均存入攻击模式库中,提供了一个动态添加的接口,以便对新的攻击类型及时防护。该系统有两种工作状态,一种是正常工作状态,对已解码的网络数据和系统记录的连接状态集进行分析,并从中寻找预先定义的攻击模式,一旦发现其中含有攻击事件特征标志,即将此事件提交"响应模块"。另一种是紧急工作状态,对应于有大规模入侵发生时,此状态下,为保证系统仍能提供服务,一些合法要求也可能被拒绝。当然,大规模入侵结束后所有合法服务都应打开。
5.4 响应模块:
根据入侵事件检测模块提交的事件种类,根据预先指定的响应行为执行相应的反应。这些反应包括改变环境、效用检验、实时通知等。当系统检测到攻击时,一个典型的反应就是改变系统的环境,通常包括关闭联接,重新设置系统,如通知前端传统防火墙过滤掉相应的数据包等等。由于改变了系统的环境,因此可以通过设置代理和审计机制获得更多的信息,从而能跟踪黑客。同时系统还要把发生的问题实时地送往各个地方。使网络管理员可对系统遥控。并且为保证系统的完整性即系统自身的安全性,采用了认证、加密、签名等手段,确保合法使用,保证通信不受任何干扰。
5.5 跟踪、反跟踪模块
当检测到攻击时,要求记录攻击数据,作为将来的证据。同时还要求跟踪攻击者,探测攻击者的地理位置,网络拓扑,操作系统类型等信息。具体的说包括:因特网中的域名,网络块,经因特网可达的系统IP地址,所标示系统上运行的TCP和UDP服务,系统体系结构,访问控制机制和相关的访问控制清单,入侵检测系统(IDS),系统标示(用户名和用户组名,操作系统类型和服务器类型,路由表,SNMP信息),对于远程控制系统来说还有模拟、数字电话号码,远程系统类型,认证机制。跟踪与反跟踪技术的研究,主要通过TCP/IP相关协议。利用InterNIC数据库和Whois服务器查询域名,通过DNS服务器得DNS记录,利用Ping和Traceroute等相关技术探测对方网络拓扑、网络地址块和网络掩码及活动主机,对于TCP和UDP端口扫描的方式也有很多,包括TCP Connect扫描,TCP SYN扫描,TCP FIN扫描,TCP NULL扫描以及UDP扫描等等,利用不同操作系统厂家对IP协议栈的不同,可相当准确的确定操作系统的类型和版本号。知道了操作系统类型,就可以查询用户名和用户组名、域控制策略、服务器类型等等。反跟踪则包括两个方面,一是从攻击方来说,修改访问日志,删掉访问踪迹。一是从防守方来说,是怎样屏蔽掉这些探测数据包,不给响应或给与虚假的响应。
5.6 网络安全管理模块:
该系统为网络安全管理提供了一个集中、方便、有效的工具。使用万维盾(Web Armor)系统的监测、统计分析、报表功能,可以进一步完善网络管理。对网络的运行情况及时了解、掌握,并据此做出科学的决策。
6 总结
万维盾(Web Armor)系统通过采用Stateful-Inspection包过滤技术、入侵检测技术、跟踪探测和反跟踪探测技术,为企业网络和ISP网站的网络安全提供了较好的解决方案,不用对原有系统作较大的改动就可实现,经济投入较小。当然,网络攻击技术发展非常迅速,单单一重保护绝对不可能万无一失,还要考虑多种相关制约因素等等。并且系统的实现所涉及的范围如此广泛,需要很多时间和数据来完善、充实、提高,所以该系统还有很大的改动空间。

TOP

发新话题