浅析网络应用软件的安全性及可靠性

2012-12-30 19:41:41韩伟光
中国新技术新产品 2012年7期
关键词:高可用性计费站点

韩伟光

(黑龙江省卫生信息统计中心,黑龙江 哈尔滨 150090)

1 网络应用软件

网络应用软件分为静态网络软件,简单交互的网络软件以及复杂的网络数据库系统三类。静态网络软件只是为了同公众共享和发布信息,不与用户发生信息交流和互动。第二类软件可以使访问者同网站拥有者进行交流,利用表单等来收集访问者对提供的产品和服务的反馈信息。复杂的网络数据库系统可以处理复杂的商业交易活动,是实现电子商务的基础。应用软件是建立在静态或者动态的个人网页基础上,可以方便地对应用软件的权限进行划分,根据需要设置访问者的访问权限。

应用软件的功能开发很容易根据开发者的意图进行分解,一般网络数据库应用软件由Web服务器、功能服务器以及数据库服务器三个部分组成。在Web服务器上用户端通过browser向Web服务器提出查询请求,Web服务器根据需要再向数据库服务器发出数据请求;在功能服务器上完成响应的业务处理或复杂计算任务;数据库服务器利用数据库管理系统(DBMS)对数据进行操作。

2 目前网络应用软件中常见的几个安全问题

产生网络安全问题的软件层次,可以分成几类:

操作系统和网络协议本身的缺陷所导致的安全问题;通信过程所导致的安全问题;应用软件层所导致的安全问题。随着网络应用环境越来越复杂。

2.1 互联网应用的复杂性

HTTP协议和HTML语言最初主要用于静态网页,随着Web应用的发展,动态网页在互联网中成为了主流,服务器端和客户端程序功能被扩充,特别是在电子商务应用中,要求通信双方能够互相识别,相应地引进了许多新的技术。

2.2 网络应用软件层的典型攻击

如果服务器端使用了客户输入来构建操作数据库的SQL语句,而又没有对客户端的输入进行合法性验证,恶意用户可能提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,甚至破坏数据库的内容,即发生了SQL注入(SQL Inject ion)。SQL注入可以从正常的80端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以很多的防火墙都不会对SQL注入发出警报。

跨站点脚本(XSS,Cross Site Scripting)

相当多的网站必须以外来的输入构建动态网页,比如BBS、以网页形式呈现的新闻组、拍卖网站等,攻击者可以在BBS上发布一条消息,在发送给受害者的电子邮件中嵌入HTML文本,并且其中嵌入恶意的客户端脚本代码。

跨站点追踪(XST,Cross Site Tracing)

前面提到,跨站点脚本攻击常常利用站点“返回请求信息”这个特性,跨站点追踪可以看成是这种情况的衍生物,它利用了HTTP协议族中的TRACE命令。T RACE要求服务器回送客户端通过HTTP请求发送到服务器的信息,通常用来调试和连接状况分析。所以应当在服务器投入运行以后,及时关闭T RACE响应。

会话叠置(Session Riding)

正常情况下服务器与客户浏览器之间会话时,Session ID在每次客户浏览器向服务器发出请求时,自动随之送到服务器。攻击者利用跨站点脚本能够窃取保存在cookie中的Session ID,并取代原来的用户与服务器会话,把合法用户被拒绝在会话之外,这种攻击称为会话劫持(Session Hijacking)。

3 网络应用软件可靠性的设计方法

3.1 系统高可用性设计

3.1.1 意图和动机

HA(high availability pat tern)模式的意图是定义一种一对一或一对多的关系,监控对方的状态,当一个对象出现失效,激活与之相对应的另一个对象。

网络信息系统的可用性通常在两种情况下会受到影响,一种是系统宕机、错误操作和管理引起的异常失败;另一种是由于系统维护和升级,需要安装新的硬件或软件而正常关机。高可靠性软件必须为这两种情况提供不间断的系统服务。

除了运行高可靠性软件来构成高可靠性系统之外,在网络应用软件本身之中加入高可靠性的一些性能也能使网络软件自动检测系统的运行状态,在一台服务器出现故障的情况下,自动地把设定的服务转到另一台服务器上,这样就不需要购买或者重新开发一套HA软件。

3.1.2 系统结构

HA模式的关键思想就是引入一个HAD etect的抽象类来管理网络应用的运行状态。

3.1.3 安全结构系统的实现

每一个连接构成一个相关的HAD etect抽象类.首先定义这个类及Interfaces类。其中 Interfaces类中的友类 Heartbeat、Takeover和Service Management的定义和实现,这里不作祥述.它们包括:判断接口的类型、使用socket管理连接、服务配置管理、启动与停止管理等。

在整个实现过程中核心是一个通信连接的建立,用以检测网络应用状态的改变,在这个通信过程中完成失效检测和业务接管。根据这个状态的改变调用Interfaces类中不同友类中的相应方法,系统通信连接主要有6个状态。

3.1.4 安全结构系统的应用

将所设计的HA软件模式,应用到一个实际的网络认证计费系统中。对于计费系统来说,保证它的稳定可靠运行是至关重要的,一旦系统某个节点出错,将造成无法挽回的损失。计费系统运行的基本流程是:用户登录,接入服务器将登录信息送到认证服务器Radius Server上进行认证,如果认证通过,则授权用户,用户开始使用网络。同时实时计费系统为用户的流量或时间进行计费 (取决于不同的资费策略),并写入数据库中,直到用户断网。在这个系统中,需要考虑高可用性的环节主要有3个:认证服务器、计费服务器和数据库服务器。

结束语

网络应用软件是电子商务的基本成分,一个成功的网络软件的设计和实行需要构筑一个高可用性的网络环境,还必须有高可用性的网络。网络的可用性是系统密不可分的一个部分,这必须对网络管理的高可用性进行深入研究,使高可用性设计模式得到更广泛的应用。

[1]李冶文,杨正球,亓峰等.网管环境下连接高可用性软件总线的研究与构造[J].电子学报,2001,29(10):1332-1336.

[2]Erich Gamma,Richard Helm,Ralph Johnson著,李英军等译.设计模式:可复用面向对象软件的基础 [M].北京:机械工业出版社,2000.

猜你喜欢
高可用性计费站点
分布式数据库提升医院信息系统高可用性的应用研究
出租车计费的秘密
5G网络独立组网中融合计费方案的研究
生活中的分段计费
基于Web站点的SQL注入分析与防范
电子制作(2019年14期)2019-08-20 05:43:42
2017~2018年冬季西北地区某站点流感流行特征分析
超长公路隧桥高可用性监控平台方案分析
首届欧洲自行车共享站点协商会召开
中国自行车(2017年1期)2017-04-16 02:53:52
怕被人认出
故事会(2016年21期)2016-11-10 21:15:15
校园一卡通服务端高可用性改造实施方案