A. Web业务安全测试方法(1)—越权测试
来这家公司快四个月了,现在对这四个月的工作做一个总结。挖过越权漏洞、低价买服务漏洞、未鉴权的接口、CSRF漏洞、软件升级未做校验、组件暴露等漏洞,主要是业务方面的。下面我首先针对越权漏洞说下测试方法:
大家可能对用户信息又疑问,下面我举例来说明用户信息:譬如A用户的订单号是唯一的,B用户删除自己的订单时,把自己的订单号改为A的,如果有越权漏洞,那么B用户就删除了A用户的订单。
限于公司保密需要,我找几个 乌云 的漏洞来说明下,没有的我就单独说明。
从数据包中,我们可以看到addr_id是唯一标识用户地址的,服务器并没有去做判断用户是否有权限操作,导致了越权漏洞。诸如此类的还有保单信息、医疗保险等信息。这种改id号的最为初级的,也是最容易发现的越权漏洞。下面来看个进阶版。
测试环境:
一次测试过程中,发现获取用户信息的时候要提交自己的用户名,假设是XML文件:
我尝试改为
发现没有权限获取信息。怎么办呢?想到XML文件解析时,可能解析所有的节点,那么我同时提交两者的用户名:
即可得到B用户的信息。
B. 如何在windowns7发布web站点
1在 控制面板->程序和功能->打开或关闭Windows功能.找到"Internet 信息服务",并将其子集全部打上勾.
2这一步操作其实就相当于是开启了 IIS 功能.
3在开启 IIS 后,到 控制面板->管理工具->Internet信息服务(IIS)管理器,双击打开一个新的控制面板.
4找到 网站->Default WebSite->添加应用程序
5填写应用程序的别名,应用程序池默认就可以,物理路径选择上篇文章中建立Webservice时所保存的路径.
到这里还有一步操作. 点击 "连接为" 按钮
6选择 特定用户, 点击右边的 "设置" 按钮 , 填写凭据信息,这里填写你电脑的用户名跟密码,用户名一般默认都是 administrator
7填写好证据后,点击 "测试设置" 按钮. 在测试连接里面,如果 "身份验证"跟"授权"前面都打了绿色的勾,那么说明配置成功.
这一步是对于 IIS 访问权限的配置.也就是获得系统管理员权限.
8找到 IIS 选项里面的 "目录浏览" , 双击打开新面板.
9点击选择最右边侧面的 "启用" 按钮.
这里的启用可以让我们有浏览应用程序内部文件目录的权限.
10点击右侧的 浏览应用程序
11在后面加上我们上一篇文章里新添加的"一般处理程序" Handler1.ashx
就可以访问到我们刚发布到 IIS 的网站.
C. web安全测试一般包括哪些测试内容
一个完整的Web安全体系测试可以从部署与基础结构,输入验证,身份验证,授权,配置管理配置管理配置管理配置管理,敏感数据,会话管理,加密,参数操作,异常管理,审核和日志记录等几个方面入手
D. Web测试的主要内容和测试方法有哪些
1功能测试 2 1.1链接测试 2 1.2表单测试 2 1.3数据校验 3 1.4 cookies测试 3
1功能测试 2
1.1链接测试 2
1.2表单测试 2
1.3数据校验 3
1.4 cookies测试 3
1.5数据库测试 3
1.6应用程序特定的功能需求 4
1.7设计语言测试 4
2性能测试 4
2.1连接速度测试 4
2.2负载测试 4
2.3压力测试 5
3用户界面测试 6
3.1导航测试 6
3.2图形测试 6
3.3内容测试 7
3.4表格测试 7
3.5整体界面测试 7
4兼容性测试 8
4.1平台测试 8
4.2浏览器测试 8
4.3分辨率测试 8
4.4 Modem/连接速率 9
4.5打印机 9
4.6组合测试 9
5安全测试 9
5.1目录设置 9
5.2登录 10
5.3日志文件 10
5.4脚本语言 10
6接口测试 10
6.1服务器接口 10
6.2外部接口 11
6.3错误处理 11
7结论 11
在Web工程过程中,基于Web系统的测试、确认和验收是一项重要而富有挑战性的工作。基于Web的系统测试与传统的软件测试不同,它不但需要检查和验证是否按照设计的要求运行,而且还要测试系统在不同用户的浏览器端的显示是否合适。重要的是,还要从最终用户的角度进行安全性和可用性测试。然而,Internet和Web媒体的不可预见性使测试基于Web的系统变得困难。因此,我们必须为测试和评估复杂的基于Web的系统研究新的方法和技术
E. 基于WEB的信息管理系统测试时应考虑的因素有哪些
功能测试:链接测试(1.测试所有连接是否按指示的那样确实连接到了该连接的页面,2.测试所连接的也面是否存在,3.保证WEB应用系统上没有孤立的页面.只能在集成测试阶段完成.);表单测试(用户给信息系统管理员提交信息时,要测试提交操作的完整性,以校验提交给服务器的信息的正确性.);COOKIES测试(Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息.如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响.)设计语言测试(使用哪种版本的HTML).数据库测试(数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用sql对信息进行处理。在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试)
性能测试:1连接速度测试2负载测试3压力测试(
web性能测试的步骤:
第一,分析产品结构,明确性能测试的需求,包括并发、极限、配置和指标等方面的性能要求,必要时基于LOAD测试的相同测略需同时考虑稳定性测试的需求。
第一,分析应用场景和用户数据,细分用户行为和相关的数据流,确定测试点或测试接口,列示系统接口的可能瓶颈,一般是先主干接口再支线接口,并完成初步的测试用例设计。
第三,依据性能测试需求和确定的测试点进行测试组网设计,并明确不同组网方案的重要程度或优先级作为取舍评估的依据,必要时在前期产品设计中提出支持性能测试的可测试性设计方案和对测试工具的需求。
第四,完成性能测试用例设计、分类选择和依据用户行为分析设计测试规程,并准备好测试用例将用到的测试数据。
第五,确定采用的测试工具。
第六,进行初验测试,以主干接口的可用性为主,根据测试结果分析性能瓶颈,通过迭代保证基本的指标等测试的环境。
第七,迭代进行全面的性能测试,完成计划中的性能测试用例的执行。
第八,完成性能测试评估报告。
在进行性能测试的时候,我们需要知道一些有效的性能指标,下面我们来列出一些主要的性能指标:
一是,通用指标(指Web应用服务器、数据库服务器必需测试项):
*ProcessorTime:指服务器CPU占用率,一般平均达到70%时,服务就接近饱和;
*Memory Available Mbyte:可用内存数,如果测试时发现内存有变化情况也要注意,如果是内存泄露则比较严重;
*Physicsdisk Time :物理磁盘读写时间情况。
二是,Web服务器指标:
*Avg Rps:平均每秒钟响应次数=总请求时间/秒数;
*Avg time to last byte per terstion(mstes):平均每秒业务角本的迭代次数;*Successful Rounds:成功的请求;
*Failed Rounds:失败的请求;
*Successful Hits:成功的点击次数;
*Failed Hits:失败的点击次数;
*Hits Per Second:每秒点击次数;
*Successful Hits Per Second:每秒成功的点击次数;
*Failed Hits Per Second:每秒失败的点击次数;
*Attempted Connections:尝试链接数。
三是,数据库服务器指标:
*User 0 Connections :用户连接数,也就是数据库的连接数量;
*Number of deadlocks:数据库死锁;
*Butter Cache hit:数据库Cache的命中情况)。
可用性测试:1导航测试(Web应用系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。)2图形测试3内容测试3整体界面测试4客户端兼容性测试(1平台测试2浏览器测试)5安全性测试(测试重点:(1)现在的Web应用系统基本采用先注册,后登陆的方式。因此,必须测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。(2)Web应用系统是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。(3)为了保证Web应用系统的安全性,日志文件是至关重要的。需要测试相关信息是否写进了日志文件、是否可追踪。(4)当使用了安全套接字时,还要测试加密是否正确,检查信息的完整性。(5)服务器端的脚本常常构成安全漏洞,这些漏洞又常常被黑客利用。所以,还要测试没有经过授权,就不能在服务器端放置和编辑脚本的问题。 )
F. 北大青鸟java培训:Web测试的经验
1.功能测试1.1.链接测试链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。
链接测试可分为三个方面。
首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。
链接测试可以自动进行,现在已经有许多工具可以采用。
链接测试必须在集成测试阶段完成,也就是说,在整个Web应用系统的所有页面开发完成之后进行链接测试。
1.2.表单测试当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。
在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。
例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。
如果使用了默认值,还要检验默认值的正确性。
如果表单只能接受指定的某些值,则也要进行测试。
例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。
1.3.Cookies测试Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。
如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。
测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响等。
1.4.设计语言测试Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。
当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。
除了HTML的版本问题外,不同的脚本语言,例如Ja、JaScript、ActiveX、VBScript或Perl等也要进行验证。
1.5.数据库测试在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。
在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。
在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。
海南北大青鸟http://www.kmbdqn.cn/认为数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试。
G. web安全测试主要测试哪些内容
一个完整的Web安全体系测试可以从部署与基础结构,输入验证,身份验证,授权,配置管理配置管理配置管理配置管理,敏感数据,会话管理,加密,参数操作,异常管理,审核和日志记录等几个方面入手
H. 如何搭建java web测试环境
WEB
测试
时
搭建测试环境
所需的软硬件包括:电脑一台、
JDK1.6
、
Tomcat7.0
、
mysql
、
IE
浏览器、
Firefox
浏览器、
Chrome
浏览器、
SVN
客户端
通过
SVN
客户端导出最新的
Web
工程部署到
Tomcat7.0
下
的
webapps
中
,另外重要的一
点就是修改数据库连接的配置文件,
连接到正确的测试数据库
(企业一般有开发人员所用的
数据库和测试人员所用的数据库)
,数据库连接的配置文件在
WEB-INF
文件夹下,修改好
数据库的配置文件后,
在
Tomcat7.0\bin\startup.bat
启动
Tomcat
,
在
Tomcat
没报错的情况下,
用浏览器访问后台,出现一个登录界面,这样,一个简单完整的
Web
测试环境就搭建起来
了!
二、
Web
测试方法
1
、链接测试
链接是
web
应用系统的一个主要特征,它表示页面与页面直接的切换和用户不知道具体地
址去访问其他页面的手段,如果页面不能跳转或者是访问失败,有很大程度上是
web
应用
程序的链接出问题了;
其中有一个重要的性能指标就是链接速度的测试,
用户打开一个页面
或者是去访问另外一个页面,如果
web
系统响应时间太长(例如超过
5
秒钟)
,用户就会因
没耐心而离开,
还有就是有些页面有超时的限制,
这样可能引起数据丢失,
使用户得不到真
实的页面。
2
、数据库测试
在
web
应用技术中,数据库起着重要的作用,数据库为
web
应用系统的管理、运行、查询
和实现用户对数据存储的请求提供空间,
也就是说用户在页面进行各类操作,
如添加、
查询
删除等一系列动作,都会被数据库记录。
3
、浏览器测试
浏览器是
web
客户端最核心的构件,来自不同厂商的浏览器对不同开发语言开发的应用程
序有不同的支持,这就需测试人员对主流的浏览器和不同版本的浏览器进行有效的测试。
4
、平台测试
市场上有很多不同的操作系统类型,
web
应用系统的最终用户究竟使用哪一种操作系统,
取
决于用户系统的配置,因此,在
web
系统发布之前,需要在各种主流的
操作系统下对
web
系统进程测试。
5
、负载测试
负载测试是为了测量
web
系统在哪一负载级别上的性能,以保证
web
系统在需求范围内能
正常工作。
例如:
web
应用系统能允许多少个用户同时在线?如果超过这个数量会出现什么
现象?
Web
应用系统能否同时处理大量用户对同一个页面的请求?
6
、压力测试
进行压力测试通俗的来讲是指破坏一个
web
应用系统,测试系统的反映,测试系统的限制
和故障恢复的能力,也就是测试
web
应用系统会不会崩溃,在什么样的情况下崩溃。
7
、整体界面测试
整体界面是指整个
web
应用系统的爷们结构设计,是给用户的一个整体感。例如:当用户
浏览
web
页面时是否感到舒适,是否凭直觉就知道要找的信息在什么地方,整个
web
应用
系统的可用性在哪里。
三、总结
本文主要讲述了
web
应用系统的搭建测试环境和
web
测试方法,在测试过程中,有的仅需
要手动测试的,有的需要自动化测试工具的帮助,所以
web
系统的测试要求测试人员有很
深的自动化测试技术。