PMP ,专注于WEB功能测试、性能测试、安全测试的研究,从事全面质量管理工作。曾任多家公司测试经理、测试主管。在电子政务、银行、电商、跨境电商、直播电商领域工作多年,曾获得某龙头集团公司公测一等奖,曾任职某头部直播电商公司测试团队负责人,具有业务敏感性,擅长从0到1搭建测试团队,具有海外工作经历,以及质量管理体系搭建。邮箱:89233502@qq.com

关于Rational AppScan Standard会话检测机制

上一篇 / 下一篇  2011-09-16 10:41:09 / 个人分类:安全测试

会话检测机制概述

扫描配置(Scan Configuration登录管理(Login Management)部分,手工录制登录过程后切换到详细信息(Details面板,它会列出按照访问先后顺序的URL列表。Rational AppScan Standard将这些页面划分为下列三种类型:


在上述URL中,如果某一页面含有注销页面检测(Logout Page Detection)的匹配模式【该模式可通过扫描配置(scan configuration登录管理(Login Management)修改】,该页面将被作为登录“会话中”标识

如果没有自动检测到此类页面,可通过“选择会话中模式Select In-Session pattern按钮在某页面选择一个能够代表登录“会话中”的独特模式,并将此页面设为“会话中”标识。

Rational AppScan Standard在自动探索和测试阶段中,定期地轮询Web应用以查看是否能访问相关的页面,以及是否能够检测到标记的识别模式。如果访问不到请求页面(比如,请求的响应是重新定向到登录页面或定制的报错页面),将停止扫描、重放登录过程、以确认其有效的登陆“会话中”状态。如果能够成功地访问请求页面,,则继续扫描。

如果在测试阶段检测到登出会话(out-of-session)状态,Rational AppScan Standard将停止所有的测试线程,重新登录,检查是否在登陆“会话中”,然后以单个线程的模式自上一个最后有效的登陆“会话”点开始重新运行所有测试。

每个测试执行后,轮询“会话中”标识页面,并跳过其中那些对登出页面部分的测试。Rational AppScan Standard将继续保持使用单个线程,直到完成所有剩余的测试,然后才回复其原来的线程配置。




常见问题和解决方法

Rational AppScan Standard 有时会检测到其“不在会话”(out-of-session)中,即不能验证其标记的“会话中”(In-Session)模式。如果发生这种情况,用户界面UI则显示“Rational AppScan Standard 检测到它“不在会话”中,并尝试重新登录”(Rational AppScan Standard has detected it is out-of-session and is trying to re-login),同时扫描日志(Scan Log)会显示多个登录请求,直到最终以下列信息停止扫描。

    Stopping scan due to out of session detection

发生该情况的几种可能性:

1. 服务器停止响应:

因为服务器的超负荷或暂时关闭,Rational AppScan Standard不能获得Web应用的及时响应。为了测试,请在会话信息窗口中尝试关闭“会话检测”(In-Session Detection),然后继续扫描。如果由于通讯问题仍然不要能获得相应,请参阅“Rational AppScan Standard扫描时出现的通讯错误”(Communication errors displayed when scanning with Rational AppScan Standard)的详细信息。

2. Rational AppScan Standard的登录过程未能自动检测到所需要的会话cookie或参数:

一般情况下,Rational AppScan Standard在登录过程中自动检测与“会话”状态有关的cookie或参数(即"ASP.NET_SessionId"、"JSESSIONID"),并列入扫描配置 > 参数与cookies窗口。

如果有其它未检测到的会话标识(Session ID),请添加到会话标识列表,然后继续扫描。如果您不确定,尝试添加所有登录过程中获得的参数和cookies为登录会话标识(Login Session IDs),看Rational AppScan Standard是否能够维持登录会话状态。如果可以,那么返回到前一步,去除一些标识直到发现所需指定的cookie或参数。登录过程中发现的所有相关参数和cookies列在扫描配置 > 登录管理 > 详细信息选项卡窗口的底部。

3. 需要时不能访问“会话页面”(登录顺序错误)

Rational AppScan Standard在整个扫描过程中定期地轮询“会话中”标识页面,但不一定以记录的登录顺序访问。如果怀疑是由于此原因造成无法维持“会话中”状态,那么试试下列过程:首先用浏览器经过一遍登录顺序,继续探索一段,然后强迫访问有问题的页面,如果此时的响应不同于Rational AppScan Standard扫描时浏览器得到的回应(例如:被重定向到一个定制的错误页面),那么尝试选择其它页面作为“会话中“标识页面(In-Session page),以找到一个能够得到正常响应的页面作为“会话中”页面为止。

4. 检测到的“会话中“页面是带有登录参数的POST:

如果Rational AppScan Standard自动检测的“会话中”标识页面不能使整个扫描维持在登陆”会话“状态,在登录过程记录的会话信息(Session Information)窗口,选择并加以高亮显示标有”会话中“的页面,单击浏览器查看(View in browser)按钮。如果该页面内容包含用户名和密码参数,请试选择列表中靠后的其它页面,并通过浏览器查看、选择、标记会话模式(In-Session pattern),然后再试继续扫描。如果列表中没有靠后的其它页面供选择,请尝试重新记录登录过程,并在后面多探索一页,然后将此页面标记为”会话中“页面。

注:如果由于”会话中“检测造成扫描不停,并在扫描日志的测试阶段部分看到大量的”Performing login“条目,可能是某一特定或某一组测试导致Rational AppScan Standard登出会话。为了进一步调查,请尝试启用扫描日志的测试为负特性(工具 > 选项 > 扫描选项 > 定制扫描日志,选择” 针对以下项的测试<标识>(<名称>)为负:<URL><参数>“),然后继续测试阶段。如果看到出现大量的每一个测试后面紧跟着登录过程顺序,应考虑从测试中排除普遍显示的页面或参数,或根据执行的普遍测试修改测试规则。

5. 记录登录过程没有捕获到登录页面:

当试图记录登录过程时,启动的浏览器已在登陆状态,也就是您已经登陆到Web应用。如果是这种情况,关闭已是登陆状态的浏览器,打开Internet Explore,清楚所有cookies和临时文件(工具 > Internet 选项 > 一般 > 浏览历史记录下的删除键)。现在应该能够成功地记录完整的登录过程。


TAG:

引用 删除 零度啤酒   /   2014-12-18 22:35:32
5
天士的个人空间 引用 删除 天士   /   2013-04-23 17:45:15
很好  支持
天士的个人空间 引用 删除 天士   /   2013-04-23 17:44:56
5
引用 删除 zhuhongbao   /   2012-03-01 16:35:23
不错。支持下。
引用 删除 zhuhongbao   /   2012-03-01 16:34:45
3
 

评分:0

我来说两句

Open Toolbar