关于网络安全软件B/S、C/S两种结构的优劣,近两年来出现过一些技术性的争论,但目前业内人士已经基本达成共识,B/S结构的优越性得到了普遍的认可,B/S结构是否能成为C/S结构的终结者还有待时间的验证。
何为C/S、B/S结构
C/S结构软件(即客户机/服务器模式)分为客户机和服务器两层,客户机不是毫无运算能力的输入、输出设备,而是具备了一定的数据处理和数据存储能力;通过把应用软件的计算和数据合理地分配在客户机和服务器两端,可以有效地降低网络通信量和服务器运算量。由于服务器连接数量和数据通信量的限制,这种结构的软件适于在用户数目不多的局域网内使用。
B/S结构软件(浏览器/服务器模式)是随着Internet技术的兴起,对C/S结构的一种改进。在这种结构中,软件应用的业务逻辑完全在应用服务器端实现,用户表现完全在Web服务器实现,客户端只需要浏览器即可进行业务处理,是一种全新的软件系统构造技术。这种结构已经成为当今应用软件的首选体系结构。
B/S入侵检测软件的优越性
目前网络安全领域备受瞩目的入侵检测软件也有B/S和C/S两大类,由于B/S软件先天的优越性,使得采用这种结构的入侵检测软件逐步受到用户的欢迎,表现出愈来愈强的市场竞争力,其优越性主要体现在下面几个方面.
B/S与C/S安全性比较
很多用户在提到B/S架构设计的系统后, 第一个疑惑就是,.这个软件安全吗?为什么用户会有这样的疑惑,因为B/S架构放在internet上后,只要有IE浏览器的电脑都可以访问这个系统.而C/S架构只有安装了特定Client软件的用户才可以使用本系统,所以一直以来我们的用户都在担心着B/S的安全问题.而业内一些C/S的支持者也一直把B/S的安全问题作为一个不休的话题一直在讨论着.只能说这样的讨论非常无聊,我并不反对C/S有很多优点.但是从安全角度分析,B/S远远高于C/S.
1 前面我们讲到"C/S架构只有安装了特定Client软件的用户才可以使用本系统",正因为在用户的电脑上安装了Client所以这个系统就面临着程序被分析,数据被截取的安全隐患,因为所有的数据必须从SERVER读到CLIENT然后进行操作,而B/S所有的数据操作全部在SERVER上进行在CLIENT只是POST一个HTML代码.
2 目前很多传统的C/S系统还是采用2层结构也就是说所有的CLIENT直接读取SERVER中的数据,在CLIENT端包括了数据的用户名\密码等致命的信息,难道这样的系统安全吗?如果这样的系统放在INTERNET上,那么这个SERVER面向任何连接上INTERNET的用户都是开放的,而B/S架构的系统,在CLIENT上没有任何信息.面向用户开放的也只是WEBSERBER,而真正保存我们数据的信息全部在DATASERVER上,这个DATASERVER完全可以不放在INTERNET上,也只能让我们指定的WEBSERVER来访问.
3 当然现在也流行一种3层架构的C/S系统,但是我想问的是,你做的中间件要比microsoft 写的iis 更安全吗?目前有很多截数据包分析的各种手段,bs 可以使用https 加密来解决。但是你的C/S 服务器有考虑过这问题吗?你说你加密了数据,你加密的比https 还好吗? 你没有加密,那就是明文的,随便找一个sniff 监听软件就可以把数据截下来。
更低的布署成本
传统的C/S结构入侵检测系统需要在管理主机上安装客户端软件及第三方数据库(SQL Server 2000、Access 2000等),如果用户需要在多台主机上管理设备则需要大量的重复安装工作,而B/S结构的入侵检测软件避免了这些麻烦,开机即可运行无需安装数据库软件,简化了用户端的环境要求,用户也无须为了使用这种软件而安装任何数据库软件或单独的设备,只需具备IE浏览器即可操作。如此显著的易用性大大降低了入侵检测系统在一个用户网络中的布署成本,成为这类入侵检测软件最吸引用户的因素之一.
在目前国内的入侵检测产品已经有少数技术领先的厂家开始采用B/S结构,榕基网安就是其中比较有代表性的一个。榕基RJ-IDS入侵检测系统问世于2005年,其基于WEB2.0模式的B/S软件结构有着采用C/S结构的入侵检测软件无法比拟的优势,目前已经陆续应用于电力、电信、金融等大型行业。
更高的数据安全性
C/S结构软件在保护数据的安全性方面有着先天的弊端。由于C/S结构软件的数据分布特性,客户端所发生的火灾、盗抢、地震、病毒等都将成为可怕的数据杀手。另外,对于集团公司内部网络中常见的多级应用,C/S结构的软件必须安装多个服务器,并在多个服务器之间进行数据同步。如此一来,每个数据点上的数据安全性都将影响到整个应用的数据安全性。所以,对于集团公司多级的大型应用来讲,C/S结构软件的安全性是令人无法接受的。
由于B/S结构数据集中存放于总部的数据库服务器,客户端不保存任何业务数据和数据库连接信息,也无需进行数据同步,所以上述安全问题也就不必担心了。对于所安装的入侵检测系统采用C/S软件结构的用户,还需要一台装有Windows操作系统的PC机来安装客户端和数据库作为控制台,在日常的应用中,这样的控制台的安全性难以保证,容易因内部人员滥用以及外部攻击而失去起码的安全保障,而对于采用了B/S结构的入侵检测软件来说,这个问题也不存在。所以从数据安全的角度看来,入侵检测系统采用B/S结构尤其重要,榕基网络入侵检测系统正是通过更为先进的B/S软件结构为用户的系统带来更可靠的数据安全性。
避免了数据的不一致性
在很多采用C/S结构的入侵检测软件的用户系统中,尤其是大型集团用户,往往采用先将大量数据储存在客户端,然后再进行数据同步的模式。相关的服务器每天必须同步完毕之后,管理中心才可得到最终的数据。局部网络的临时故障就可能造成个别客户端数据库不能进行同步,即使同步上来,各客户端也不是一个时点上的数据,数据永远无法一致,不能用于决策。而对于榕基网络入侵检测系统这样的B/S结构软件来讲,其数据是集中存放的,客户端发生的事件报警都直接进入到管理中心数据库,不存在数据一致性的问题。
更好的数据实时性
在集团级应用里,C/S结构的入侵检测系统使得网络管理者不可能随时看到当前网络攻击事件的发生情况,看到的都是事后数据;而类似榕基网络入侵检测系统这样的采用B/S结构的软件则不同,它可以使网管员实时地看到当前发生的所有事件,便于进行快速决策,能够更有效避免企业的损失。榕基网络入侵检测系统还采用了非常先进的WEB2.0模式下的Ajax(Asynchronous JavaScript + XML)技术,可以更好的实现数据的实时自动更新。
更好的数据溯源性
由于B/S结构的数据是集中存放的,所以管理中心可以直接追溯到各资产的原始数据,也就是说看到的结果可溯源。大部分C/S结构的软件则不同,为了减少数据通信量,仅仅上传中间报表数据,在管理中心不可能查到客户端的原始数据。
其他
除去应用布署的便利性,数据的安全性、一致性以外,B/S结构的软件还有很多优越性,在实际应用中会使用户能够获得切身体验。比如C/S结构软件仅适用于局域网内部用户或宽带用户(1兆以上),而B/S结构软件可以适用于任何网络结构甚至包括28.8K拨号入网方式,特别适于宽带不能到达的地方。当然,不同网络安全厂商的B/S结构软件在应用层面的设计上也各具特点,力求使用户的使用过程简化,塑造人性化的应该环境。以榕基入侵检测系统为例,RJ-IDS的用户端采用WEB界面,十分符合用户的日常操作习惯,操作简单方便。在系统维护功能的设计上,RJ-IDS为用户考虑的更为周到,简化了系统的规则升级、软件升级、日志维护、磁盘维护,一切维护功能经一次配置后可以由系统自动完成。榕基网络入侵检测系统在系统的网页浏览过程中还具备关联特性,用户可以在阅读报告的过程中在关联网页中自由切换,随时看到自己希望了解的相关信息,从而避免了C/S模式下静态报告的缺陷。
展望
当前国内网络安全产品市场的现状已经表明,正如技术专家们所预计的那样,B/S结构的入侵检测软件产品正在大踏步地走向行业市场,采用C/S结构的同类产品在更先进的竞争者面前已经开始远离人们的视线;而对于同样采用B/S软件结构的入侵检测产品制造商来说,如何使检测技术更先进,使应用更便利,使性能价格比更具竞争力,使销售渠道更具活力,都是需要考虑的问题。一切工作都刚刚开始,但无论哪些厂商能够在竞争中取得领先地位,B/S结构在应用领域大行其道的时代即将来临了。