软件测试之SQL注入.doc_第1页
软件测试之SQL注入.doc_第2页
软件测试之SQL注入.doc_第3页
软件测试之SQL注入.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

班级:学号:姓名:第一次作业软件测试之SQL注入一、SQL注入的概念所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。数据注入主要是对数据库的注入,通过输入一些特殊的字符如“” 、“/”、 “-” 等或字符组合,完成对SQL语句的破坏,造成系统查询、插入、删除操作的SQL,因为这些字符而改变原来的意图。二、模拟SQL注入1、环境搭建软件环境:操作系统、DBMS、语言、浏览器、WEB应用服务器操作系统:Microsoft Windows XPDBMS:MYSQL语言:HTML语言,PHP语言浏览器:IE浏览器WEB应用服务器:Apache硬件环境:CPU、内存、网络环境CPU:Inter(R) Core(TM)2 Duo CPU内存:2.00GB网络环境:IPv42、有关SQL注入应用程序的开发流程数据库的准备编写HTML代码如下:用户名:密码:安装WAMPSERVER,安装完成后,在计算机的右下角有该软件的标志。将编写的代码拷贝到安装目录下的www文件夹中。打开任务管理器关掉计算机正在运行的IIS服务和SQLSERVER服务以使WAMPSERVER能够顺利打开MYSQL和Apache服务,单击Put Online完成对WAMPSERVER的配置。打开MYSQL console,单击回车键进入mysql目录下,将sql.txt中的代码复制并粘贴到界面中,新建名为login的数据库,在login数据库下,新建名为users的表,该表包含user_name和password两个元组,其中,user_name被设为主键。然后在login中插入admin和yanfeng两个用户及其相应的密码。结果如下:下面是SQL代码create database login;use login;create table users(user_name char(20) primary key,password char(20) not null);insert into users values(yanfeng,yanfeng);insert into users values(admin,admin);select * from users;应用程序的开发1 前台程序登录界面2 后台程序开发登录处理程序 ?php$user_name = addslashes($_POSTuser_name);$password = addslashes($_POSTpassword);$sql = select * from users where user_name=$user_name and password=$password;print ;mysql_connect(localhost,root,);mysql_select_db(login);$result = mysql_query($sql);if(mysql_num_rows($result)0)print 登陆成功!;elseprint 登陆失败!;?测试应用程序首先打开IE浏览器,在地址栏里输入http:/localhost/login.html进入登录界面,然后用数据库中创建的合法用户登录,用户名和密码均正确,则登录成功,反之登录失败!测试过程: 用户名 admin 密码 admin 预期结果“登录成功!”,实际结果“登录成功!”截图如下: 未对登录处理程序改进前,输入“用户名 or= 密码or= ”预期结果“登录失败!” 实际结果“登录成功!”。 对login_process.php修改后,输入“用户名 or= 密码or= ”, 预期结果“登录失败!” 实际结果“登录失败!”。3、产生SQL注入的原因单引号造成的SQL命令含义的改变,数据库的不安全配置,数据库平台漏洞等。上述测试过程中的即为一种由于单引号造成的SQL注入。4、如何避免SQL注入 针对本例的漏洞,解决方法为在login_process.php中将第二行、第三行的等号后面分别加入addslashes并将后面的变量用括号括起来。三、如何理解SQL注入与软件测试之间的关系软件测试的目的是为了发现尽可能多的缺陷,不是为了说明软件中

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论