渗透测试步骤

(1)不要掉入检查应用程序对客户端令牌执行的操作(如通过一个新的Set-Cookie指令、客户端脚本或者终止时间属性令cookie失效)的陷阱。在客户端浏览器内对令牌执行的任何操作并不能终止会话。相反,调查服务器端是否执行会话终止操作。

(a)登录应用程序获得一个有效令牌。

(b)不使用这个令牌,等待一段时间后,使用这个令牌提交一个访问受保护页面(如“我的资料”页面)的请求。

(c)如果该页面正常显示,表示令牌仍然处于活动状态。

(d)使用反复试验的方法确定会话终止超时时间,或者一个令牌在最后一次使用它提交请求几天后是否仍被使用。可配置Burp IntruderM增连续请求之间的时间间隔,自动完成这项任务。

(2)确定是否存在退出功能,用户是否能够使用这一功能。如果不能,表示用户更易于受到攻击,因为他们没有办法让应用程序终止会话。

(3)如果应用程序提供退出功能,测试其效率。退出后,尝试重新使用原有的令牌,确定其是否仍然有效。如果令牌仍然有效,那么即使用户已经“退出”,也依然易于受到会话劫持攻击。可以使用Burp Suite测试此功能的效率,具体操作如下:从代理服务器历史记录中选择一个依赖会话的最近请求,在从应用程序中注销后将其发送给Burp Repeater重新发布该请求。