|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
是不是实质都是API?有的好像不只是API那么简单的,有的也是一种框架就像MFC一样。有的还是一种思想(就是做软件的思想)(好像很深奥,其实我也不懂^_^)良多WEB开辟言语为了避免扫瞄器克制了cookie而没法辨认用户,同意在URL中照顾sessionid,如许固然便利,但却有大概引发垂纶的平安毛病。 图示:
下图是从测试组发来的平安呈报中剪出来的,图有些小成绩,原本想重画1个,在visio中没找到符合的图。以是只能用他人的图了。
检察原始图片(年夜图)
申明:
让我们对上图的步骤举行具体申明:
1.黑客用本人的帐号登录,假定登录页面是:http://www.abc.com/login.jsp
2.服务器前往登录乐成。
3.黑客从cookie中检察本人的sessionid,好比是1234
4.黑客把带本人sessionid的地点发送给一样平常用户。http://www.abc.com/login.jsp;jsessionid=1234(分歧的言语带sessionid的体例纷歧样,着是jsp的体例)
5.用户在黑客给的地点顶用本人的帐号举行登录,登录乐成。(这个时分用户登录的信息就会掩盖黑客之前的登录信息,并且2团体用的是同1个sessionid) 6.黑客革新页面,看到的账户信息就是用户的信息了,而不是之前黑客本人帐号的信息。
防治:
要避免这类成绩,实在也很复杂,只需在用户登录时重置session(session.invalidate()办法),然后把登录信息保留到新的session中。
后语:
大概你跟我一样,刚入手下手看到这个时分,就本人往测试究竟能不克不及垂纶乐成,经由我的测试是能够乐成的,但测试过程当中必要注重上面几个成绩:
1.要注重你利用的言语是怎样在URL中带sessionid。(我测试的时分入手下手在URL中利用年夜写的jsessionid,招致一向不起效)
2.要http://www.abc.com/login.jsp;jsessionid=1234页面登录表单的action也带上了jsessionid,否则也没用。关于这个成绩你大概以为假如login.jsp表单的action是写逝世,而不是读取以后URL的, 大概就不会呈现这个垂纶成绩。这只能防住1个偏向。黑客能够做1个和login.jsp千篇一律的页面(好比http://www.abc1.com/login.jsp),然后把这个地点发个客户,而这个地点中的表单如许写就能够:
<formaction="http://www.abc.com/login.jsp;jsessionid=1234"....
我觉得很重要,一般所说的不重要应该指的是:你学好一种以后再学另一种就很容易了。(因为这样大家可能有一个错觉就是语言不是很重要,只要随便学一种就可以了,其实不是这样的。 |
|