啄木鸟软件测试培训网:www.3testing.comweb
1. 数据验证流程:一个好的web系统应该在IE端,server端,DB端都应该进行验证。但有很多程序偷工减料,script验证完了,就无论了;app server对数据长度和类型的验证与db server的不同,这些都会引起问题。有兴趣的可参看一下script代码,设计一些case,这但是你做为一个高级测试人员的优秀之处哦。我曾修改了页面端的script代码,而后提交了一个form,引起了一个系统的重大漏洞后门sql
2. 数据验证类型: 若是web server端提交sql语句时,不对提交的sql语句验证,那么一个黑客就可暗喜了。他可将提交的sql语句分割,后面加一个delete all或drop database的之类语句,能将你的数据库内容删个精光!我这一招还没实验在internet网站上,不知这样的网站有没有,有多少个。反正我负责的那个web系统曾经发现这样的问题。数据库
3. 网络加密,数据库加密不用说了吧。微信
WEB软件最常碰到的BUG为:网络
一、SQL INJETIONapp
二、对文件操做相关的模块的漏洞测试
三、COOKIES的欺骗网站
四、本地提交的漏洞加密
●SQL INJETION的测试方法spa
原理:
若有一新闻管理系统用文件news.asp再用参数读取数据库里的新闻譬如
http://www.xxx.com/news.asp?id=1这一类网站程序
若是直接用
rs.open "select * from news where id=" &
cstr(request("id")),conn,1,1
数据库进行查询的话即上面的URL所读取的文章是这样读取的
select * from news where id=1
懂得SQL语言的就知道这条语言的意思是在news读取id为1的文章内容。
可是在SQL SERVER里select是支持子查询和多句执行的。若是这样提交URL的话
http://www.xxx.com/news.asp?id=1and 1=(select count(*) from admin
where left(name,1)=a)
SQL语句就变成了
select * news where id=1 and 1=(select count(*)
from admin where left(name,1)=a)
意思是admin表里若是存在字段字为name里左边第一个字符是a的就查询news表里id为1的内容,news表里id为1是有内容的,从逻辑上的角度来讲就是1&P。只要P为真,表达式就为真,页面会返回一个正确的页面。若是为假页面就会报错或者会提示该id的文章不存在。黑客利用这点就能够慢慢得试用后台管理员的用户和密码。
白盒测试定向培训将在2016年2月20,21日在上海举行,定向单位:上海陆家嘴金融研究院
2016年2月20日~ 2016年2月21日 17:00
上海杨浦)上海杨浦区隆昌路619号(城市概念创意园区)8号楼中区B02
内容:
1、内容介绍
白盒测试又称结构化测试,经过分析组件/系统的内部结构进行的测试。测试用例分析方法包括语句覆盖,分支覆盖,条件覆盖,条件/分支覆盖,路径覆盖等。白盒测试能够在单元,集成测试中进行也能够在系统测试中进行。白盒测试通常分为代码覆盖率测试,代码接口测试和静态测试。本课程针对国内某知名公司白盒测试工程师岗位进行定向培训(工做地点:上海陆家嘴金融研究院)。
本文分享自微信公众号 - 软件测试培训(iTestTrain)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。