学生信息管理系统--SQL注入

   当你在登陆学生管理系统的时候,添加的用户名若和你数据库中的数据不符时,就会弹出一个窗体,告诉你没有这个用户;但是当你在用户名中输入数字或者字母外加英文状态下的单引号,比如:“a'”,“'or 1=1#”

 

然后你再运行的话,就会弹出下面的窗体

这就是SQL注入,百度上给出的定义是:通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

 

在我们做学生管理系统的时候,在登入窗体中有这么一段语句

 

 

两个单引号括起来的部分是判断输入的用户名是否和数据库中一致,但你输入“a'”时,就会在两个单引号之间添加了一个单引号,结果可想而知,数据库无法连接,所以就无法登陆。

 

解决方法:

1、将txtUserName.text的文本框替换成ComboBox的下拉式的控件,直接从数据库中提取用户名,缺点就是这样造成用户名泄露!

2、加强对用户输入的验证。一些关键字直接给他过滤掉,比如drop 、datebase、delete,and,--,“’”  等一些关键字,写个方法直接过滤掉~!把单引号替换成两个单引号!数值型要强制转换!!!

3、在编写SQL语句时,使用参数化的语句来传递用户输入的变量,也就是说,用户的输入绝对不能够直接被嵌入到SQL语句中。

4、限制表单或查询字符串输入的长度。

5、将用户登入名称、密码等数据加密保存。加密用户输入的数据,然后再将它与数据库中保存的数据比较,这就相当于对用户输入的数据进行了“消毒”处理。

 

学生管理系统使用说明书 配置源程序 配置ODBC 运行本实例需要配置用户DSN,在ODBC数据源管理器中配置用户DSN连接指定的SQL Server数据库。关键操作步骤如下: (1)单击“开始”按钮,选择“程序”→“管理工具”→“数据源(ODBC)”命令,打开“ODBC数据源管理器”对话框,打开“用户DSN”选项卡。 (2)单击“添加”按钮,打开“创建新数据源”对话框,选择安装数据源的驱动程序,这里选择“SQL Server”。 (3)单击“完成”按钮,打开“创建到SQL Server的新数据源”对话框,在“名称”文本框中设置数据源名称为“mystudentsys”,在“描述”文本框设置数据源描述为“配置SQL Server数据库DSN”,在“服务器”下拉列表框中选择连接的数据库所在服务器为“(local)”。 (4)单击“下一步”按钮,选择“使用用户输入登录ID和密码的SQL Server验证”单选框,在“登录ID”文本框中输入SQL Server用户登录ID,这里为“sa”,在“密码”文本框中输入SQL Server用户登录密码。 (5)单击“下一步”按钮,选择“更改默认的数据库为”复选框,并在其下拉列表框中选择连接的数据库名称,这里选择“tb_student”,单击“下一步”按钮。 (6)单击“完成”按钮,打开“ODBC Microsoft SQL Server安装”对话框,显示新创建的ODBC数据源配置信息。 (7)单击“测试数据源”按钮测试数据库连接是否成功,如果测试成功,单击“确定”按钮,完成数据源配置。 附加SQL Server 2000数据库 (1)将database文件夹中的两个文件拷贝到SQL Server 2000安装路径下的Data文件夹中。 (2)打开SQL Server 2000中的“企业管理器”,然后展开本地服务器,在“数据库”数据项上单击鼠标右键,在弹出的快捷菜单中选择“所有任务”/“附加数据库”菜单项。 (3)将弹出“附加数据库”对话框,在该对话框中单击“ ”按钮,选择所要附加数据库的.mdf文件,单击“确定”按钮,即可完成数据库的附加操作。 使用说明 系统介绍 随着各大院校的扩招,学生数量不断增加,学生管理成为学校管理中的重中之重。传统的学生管理方法,就学生的个人的自然情况出发,对其进行管理,但是,这种方法不但效率低,而且还要耗费大量的人力,已经不能满足各大院校的学生管理要求。 提高学生管理的管理水平,优化资源,尽可能地降低学校的管理成本,成为学生管理的新课题。学生管理系统是从学生管理的现状出发,根据学生管理的新要求进行开发设计的,它解决了学生管理中数据信息量大,修改不方便,对一系列数据进行统计与分析花费时间长等问题,帮助学生管理人员有效管理学生信息,成为高校管理中必不可少的管理工具。 本系统主要实现了以下功能:  学生信息录入  学生成绩录入  程序等级设置  学生违规处理  学生成绩排行  学生信息查询  学生成绩查询、打印 操作注意事项 (1)本系统管理员用户名为:tsoft,密码为:111。 (2)实例执行文件位置:\08\学生管理系统\源程序\Debug\mystudentsys.exe 操作流程 运行本系统,请按照以下流程操作: (1)在“基础信息管理”中的“科室信息管理”、“科目信息管理”、“教师信息管理”、“班级信息管理”、“班级科目设置”及“考试类别设置”中对基础信息进行添加。 (2)在“学生信息管理”中的“学生信息管理”、“学生成绩录入”、“成绩等级设置”、“学生违规处理”中对学生信息进行添加。 (3)通过“查询管理”中的“学生基础信息查询”、“学生成绩报表”、“学生违规查询”中可以对学生信息、成绩及违规记录进行查询。 (4)通过“系统管理”中的“用户管理”可以添加、修改及删除操作用户。
评论 18
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值