(2)过滤当前用户请求中是否含有违反HTTP协议的数据存在,包括参数缺失、参数异常、参数过多;过滤当前用户请求中是否含有违反当前请求页面的数据存在。
(3)对称式和非对称式的加密解密技术:包括数字签名算法、消息摘要技术、密钥交换方法、提供基于数据库的密钥管理服务的内容。
(4)收集功能模块的日志信息,然后生成统一的日志信息,并进行分类存储(本课题提供数据库存储形式),然后提供查询、删除等功能(用户可以对日志信息按日期、模块名进行查询、删除等操作)。
(5)随时对受保护的电子商务应用程序进行安全监控,若发现恶意代码的攻击,即刻发出报警信息。
(6)监控系统和电子商务应用程序的运行情况,若系统或应用程序出现异常,即刻发出报警信息。约束条件:本系统运行时需要JAVA运行环境人员所需工具所需资源:开发本项目需要参加人员熟练掌握JAVA、XML、TOMCAT、MYSQL、JSP、STRUTS等,开发工具使用eclipse、editplus、mysql等。
1.2项目组织与进度
本项目的开发共分四个时间段进行,具体安排如下所示:系统调研和总体方案设计3个月系统体系结构设计8个月系统程序实现8个月α测试β测试3个月
1.3开发软件所需要的工具软件运行环境
A.操作系统:Linux系统,Window20xxServe系统B.数据库:Oracle8i/9i,SQLServer20xx,MysqlC.WEB服务器:Tomcat/Weblogic/Jboss编程语言:JAVA开发平台:eclipse测试与分析工具:paros
二、软件开发设计与程序编码
2.1软件开发设计
电子商务安全管理软件系统采用了模块化的设计理念,遵循J2EE的开发标准,充分利用了J2EE程序开发过程中所涉及到的开放源代码的应用软件。整个软件系统是在Tomcat5.5.9条件下进行的研发,开发工具选用的是Eclipse3.1,MySQL4.1提供了数据库支持。此外,还使用了诸如Spring,Hibernate,Struts,Dom4j,Log4j等免费软件和技术。从软件设计与软件开发的角度看,电子商务安全管理软件系统的设计规划遵循了如下设计原则:
(1)电子商务安全管理软件封装了许多功能强大、易于使用的软件功能模块,对于统一安全接口标准研究十分必要。
(2)软件的开发大量采用组件化、J2EE技术,独立于操作系统与数据库系统。软件内部的模块大量采用Bean,进行业务逻辑的封装,可以方便利于网络层的请求响应调用。
(3)系统采用XML文件格式来响应业务请求,这样可以实现系统逻辑各层之间良好的通讯和接口。
(4)全面考虑电子商务安全的各种需求,设计统一的标准化的软件结构,使各种网络安全技术运行在软件框架之下,共同保护电子交易安全。
(5)提供开放的API接口,这样使其他公司的软件产品可以轻易的集成到这个软件系统平台上。
2.2程序编码
安全代理:安全代理模块就像一个数据采集器;在电子商务安全控制中心中分析的所有HTTP信息都是通过安全代理模块采集的。此外,安全代理模块还负责在分析后将反应结果返回给用户。开发安全代理模块所使用技术:ServletFilter。
(1)认证授权模块。身份验证和授权认证模块提供一种基于JAAS体系结构的认证解决方案。身份认证是用户或计算设备用来验证身份的.过程,即确定一个实体或个人是否就是它所宣称的实体或个人。授权确定了已认证的用户是否能够访问他们所请求的资源或者执行他们所请求执行的操作。
(2)数据过滤模块。数据过滤模块实现两种分析算法:模式匹配算法和行为建模算法。一种是基于误用检测算法的模式匹配,另一种是基于异常检测算法的行为建模。
(3)协议过滤模块。根据电子商务网站管理员的人工配置和HTTP协议细节执行协议过滤算法,针对于安全数据中出现的冗余信息、检测出的缺失信息,以及异常信息分别进行安全分析,并且触发相应的安全动作。
(4)安全监控模块根据安全分析的结果与事先定义的安全动作,模块采用相应的指定动作。此外,这个模块将向安全代理模块发送动作指令。如果发现黑的客入侵,就随时触发“拒绝”动作,然后发送警告给应用程序的管理员。同时,将恶意的入侵请求存入到数据库作为入侵分析的日志文件。因此,攻击者将会收到一个出错页面或者请求被禁止的页面。