2013年第1期 文章编号:10o9—2552(2013)01—0066—02 中图分类号:TIBll 文献标识码:A 公费定向师范生信息管理系统的设计与实现 姚海涛,贺 朗 (湖南第一师范学院信息科学与工程系,长沙410205) 摘要:文中系统设计的目的是方便学生及其家长、定向对口招生的县区教育局、省教育厅和 学院领导及时了解学生在校情况,实现家校联系、学生自我监督、用人单位对其委托培养学生 的实时监控、领导及时掌握学生动态等管理工作的信息化,充分体现人性化管理理念。由于该 系统存储了学生的个人信息,其安全性是设计的关键之一。 关键词:ASP.NET;B/S;公费定向师范生;安全性 Design and implementation of directed at public expense normal students information management system YAO Hai.tao.HE Lang (Department ofInformation Science and Engineering,Hunan First Normal University,Changsha410205,china) Abstract:The‘purpose of this system design is to facilitate students and their parents,the directed enrollment wiht the County Department of Education,Provincial Department of Education and school leaders to keep abreast of hte situation of students in the school,To achieve home—school links,student self-monitoring,the employer commissioned to develop students’real—time monitoring,leading to grasp students’dynamic management of information technology,fully embodies the concept of humane management.Because the system stores hte personal information of students,their safety is one of hte key to the design. Key words:ASP.NET;B/S;directed at public expense normal students;safety 0 引言 证。用户分为三类:班主任\总管理员、地区教育局、 公费定向师范生是一个特殊的学生群体,受到 学生。班主任\总管理员用户名为其姓名拼音的首 社会各界的广泛关注,尤其是委托县市领导、相关教 字母、地区教育局用户名为该地区拼音的首字母、学 育行政管理部门领导。为了让关心我院公费师范学 生用户名为其学号,三类用户的密码都默认为用户 生的领导和有关人士及时了解有关学生信息,本文 名(登录后可更改)。 特设计开发了一个公费定向师范生管理系统。我院 不同用户应该授予不同的权限,如:各班主任只 公费定向师范生来自于湖南省各个县市,该系统将 能查、插、删、改本班学生的信息;地区教育局只能查 为家长、县市教育局、省教育厅、所在系部管理员提 本地区学生的信息;学生只能查看自己的信息。总 供一个了解管理学生信息的平台,同时也为学生提 管理员拥有所有权限,并且负责三类用户的权限 供一个自我展示平台。 分配。 1 系统分析与设计 收稿日期:2012—08—07 1.1系统功能描述 基金项目:湖南省大学生研究性学习和创新性实验计划项目 1.1.1用户登录和管理 (2012472) 作者简介:姚海涛(1991一),男,本科在读,研究方向为教育信 登录本系统,需要用户名、密码、验证码三项验 息化。 一66一 1.1.2学生信息的录入与更新 学生通过自己的用户名和密码,可以自行、及时 地录入基本信息、获奖情况、校园活动、作品展示等, 并且内容可以是文字、图片、音视频、附件等形式。 1.1.3信息的查询 有三种筛选条件可供选择:按班级、按定向地 区、按个人,可以满足不同用户的需求。 意输入,则拼接形成的SQL语句: select,Ic from tuser where usemame=’admin’ _or 1=1一一and password=” 这样where条件返回的总是真值,这样就等价 于:select from t_user,这样就将数据库中的所有用 户信息暴露给了攻击者,这就是所谓的数据库“曝 库”。更糟糕的是,如果用户使用的是Sqlserver数 1.1.4高级管理 对于拥有权限的管理员用户,可以实现程序文 据库,并且恰好使用的是sa用户,黑客如果运用xp— cmdshell给自己添加系统管理员权限,那么整个系 统都被黑客掌握了。 件管理、数据库备份、还原数据库、执行SQL语句等 管理权限。 1.2系统设计 1.2.1系统功能模块 本系统由用户管理、信息管理、在线答疑、高级 管理等四个模块组成。 1.2.2系统的开发模式 本系统采用B/S模式,后台数据库采用Oracle, 结合HTML,C#,JavaScript,ASP.NET,ADO.NET等 技术开发。 1.2.3数据库设计 由于学生的成绩包含在教务管理系统中,故本 系统可以不予考虑。为了存放学生的附加信息,本 系统单独建立了一个数据库。该数据库的基本表 有:学生表(学号、姓名、籍贯),用户表(用户名、密 码、所属组),学生一用户联系表(学号、用户名、角 色)等。 2 系统安全性的实现 系统安全性主要有以下几个具体问题:SQL语 句注入攻击、跨站点请求伪造(CSRF)、跨站脚本攻 击(XSS)等,解决方案如下: 2.1 SQL语句注入攻击 在很多网站中都存在生成数据库操作脚本时直 接进行字符串拼接的问题。下面通过一个例子来说 明,在用户登录时,用得最多的SQL语句是: select from tuser where username:’’’+tx— —tusername.Text+’“and password=’’’+txtpassword. Text+’’’ 如果从数据库中能返回数据则说明登录成功。 表面上没有什么问题,但是这其中隐藏着玄机:如果 某个用户名为:dysfxgx,密码:888888,那么此时通过 拼接形成的SQL语句为: select女from tuser where usemame:’dysfxgx’and _password=’888888’ 这条语句确实满足我们的要求。但是如果某人 输入这样的用户名:’admin or 1=1一一,密码:任 解决方法: (1)在牵涉到SQL语句拼接的文本框中,我们 对用户输入的字符串进行特殊字符的过滤处理。 (2)在生成SQL语句时不要使用拼接的方法, 可以通过传递参数的方法,并注意存储过程中也要 注意同样的问题。 2.2跨站点请求伪造(CSRF) 随着B/S应用程序的日益普遍,用户对网站的 体验要求越来越高,一个新的名词越来越盛行—— AJAx。伴随着AJAX的逐渐流行,CSRF问题也慢 慢凸显出来。由于AJAX的回传机制,CSRF可以在 你不知情的情况下通过用户验证进行非法操作,这 就是所谓的浏览器劫持。由于网站是通过cookie来 识别用户,当用户成功地完成身份验证后浏览器就 会生成一个唯一标识其身份的cookie,它保存在计 算机中,用户可以自己管理cookie,以后访问同样的 网站就会从这个cookie中读取信息。如果用户的浏 览器被别人劫持,并且向这个网站发送了请求,就有 可能完成一些非法的操作。由于这个请求并不是用 户自己发出的,这就是请求伪造。 解决方法:每次操作时都随机生成复杂的验证 码或添加Session令牌,用页面属性ViewStateUser- Key在Page—Init方法中设置其值:this.View— StateUserKey Session.SessionID。 2.3跨站脚本攻击(XSS) 跨站脚本攻击是一种类似于SQL攻击的HTML 注人攻击,用户在文本输入框中输入HTML标签, 如果网站未做XSS防范,那么用户提交的HTML标 签将会对网站的页面进行重绘。在微软的ASP.NET 中默认情况下开启了validateRequest属性,则会显 示:“请求验证过程检测到有潜在危险的客户端输 入值,对请求的处理中断。该值可能指示危机应用 程序安全的尝试,如跨站脚本攻击”。由于用户事 先不知道会出现这样的问题,当出现这样的问题后 直接将报错页面留给用户, (下转第76页) 一67— 表1 不等高五峰测试函数的相关测试数据 经过上表的比较可知,本算法对于不等高五峰 函数在运行效率上有所提高,且能够快速地找到函 数的极值点。说明本算法相对来说更优。 3 结束语 本文提出的改进的小生境遗传算法在计算多峰 函数的优化问题时运行时间有所缩短,效率有一定 图5不均匀五蜂函数的图像 的提高。今后还需要对算法进行进一步的研究与改 进,以期望通过改进使得算法性能能够更优。 参考文献: [1]Kwong-Sak,Leung,YongLiang.Genetic and Evolutionary Compu— ration[Z].2003. [2]张爱华,曹晓刚,钟守楠.求多峰函数全部最优解的改进遗传算 法[J].数学杂志,2009,29(1):56-62. [3]Im CH.KimHK,JungHK.A novel algo ̄thmformultimoda]func- tion optimizaiton based on evolution strategy[c]//IEEE Transac- tions on Magnetics,2004。40(2):1224—1227. [4]Wei L,Zhao M.A niche hyb ̄d geneitc algo ̄thm for global optimi- zation of continuous mulifmodal function[J].Applied Mathemaitcs and Computation,2005,16o(3):649-661. [5]于飞,吕冬梅,刘喜梅.基于小生境遗传算的足球机器人路径规 划[J].电子技术应用,2006,8:32—34. [6]王俊年,申群太,等.基于种群小生境微粒群算法的前向神经网 图6用改进的小生境遁传算法的求解结果 络设计[J].控制与决策,2005,25(9):981—98.5. [7]林焰,郝聚民,纪卓尚,等.隔离小生境遗传算法研究[J].系统 用动态小生境过程,另外,算法2在竞争机制中采用 工程学报,2OOO,15(1):86—91. 的是(2+2)竞争机制,鉴于其计算复杂性较高,其运 [8]Mennon A,Mehrotra K,Mohan c K。et a1.Characterization of a 行时间会稍微长点。此外在对这两个函数的试验中, class of sigmoid functions with applications to neural networks[J]. 在进化代数在第6代时种群就接近收敛,且包含所有 Neural Networks.1996:9:819—835. 的极值点。在相同的参数下运行时间如表1所示。 [9]谢凯.排挤小生境遗传算法的研究与应用[D].安徽:安徽理工 大学。2005. 责任编辑:肖滨 (上接第67页) 的强大功能和优点,结合Oracle数据库,成功设计 会给用户一个不自然的感受。 并实现了一个可运行于Interact浏览器的安全的公 解决方法: 费定向师范生信息管理系统。本系统在保证信息安 (1)特殊字符过滤。但是这种方法也存在一定 全方面上下了一定的功夫,对于可能存在的漏洞都 的问题,例如用户想输入X>Y,但大于号会被当成 做了一定的防范,确保学生信息不会被篡改。做为 特殊字符过滤掉。 数字化校园建设的一部分,在公费定向师范生信息 (2)如果用户确实要输人HTML标签文本,可 管理方面,发挥了重要作用。 以再配置文件或Page指令中设置ValidateRequest 参考文献: 的属性为false,这样就禁用了验证。然后我们必须 [1]杨永.基于ASP.NET和B/S模式的试题库管理系统的研究与开 对用户提交的数据进行编码(HmflEneode),这样就 发[J].微计算机运用,2008(10):12—16. 不会造成XSS攻击了,本文建议使用此种方式。 [2]水兰素、张杰、李耀刚.8/S信息管理系统中的安全性问题的解 3 结束语 决[J].机电工程技术,2005(9):29—30。 责任编辑:张禹 本系统采用B/S模式,充分利用了ASP.NET 一76一