SID是会变的......而且有时效。重新生成有一定算法,没你想得这么容易就得到。网上银行的安全机制相当复杂,建议你专门查看一下相关的文章和书本。

解决方案 »

  1.   

    网上银行是通过https来保证信息在internet上传输时是加密的。通过设置比较短的session过期时间可以减小风险,但无法避免忘记退出被别人窃取账号的问题。就好像你家里没锁门而被小偷光顾就不是做防盗门的责任了。尽管可以通过技术手段见效风险,但无法从根本上解决问题。
      

  2.   

    说到网上银行,现在也有在客户端就是用SET协议进行的,这要求客户下在和安装电子钱包。并且获得证书,比较麻烦。所以现在很多通过Web提供服务的银行就简单地用SSL完成客户对服务器的确认(放置假冒欺骗攻击)。数据在internet上的传输是加密的,所以不用担心被窃取。这样就可以使用用户名和口令以及信用卡或借记卡的卡号来识别客户的身份了。至于客户机本身被攻破或用户忘记退出等造成的风险只能由用户自己承担了。
      

  3.   

    回freelyl(飞翔):session是靠它的gc来删除的,而gc的启动是按几率的,而且与请求次数有关,你就算设置有效时间为0,它也不是马上就删除的
      

  4.   

    session是靠它的gc来删除的,而gc的启动是按几率的,而且与请求次数有关,你就算设置有效时间为0,它也不是马上就删除的-------------gc之所有采用这种算法是为了提高性能的
    如果真的愿意舍弃性能可能把gc机率设为100%, php.ini里可设
      

  5.   

    1 没有绝对的安全
    2 根据应用决定使用哪种安全方案
    3 有的系统只用cookie验证,不也是照样好好的?
    4 session id的安全是建立在随机几率上的,有效控制ip和尝试次数能降低安全风险