V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
444683462
V2EX  ›  PHP

session 安全吗?

  •  
  •   444683462 · 2014-11-16 11:38:38 +08:00 · 3598 次点击
    这是一个创建于 3650 天前的主题,其中的信息可能已经有所发展或是发生改变。
    登陆成功之后存入$_SESSION['openid']
    注销的时候销毁这个值。

    openid代表着唯一的用户标识符,在系统中起着关键作用。
    openid是明文传输和保存的。

    很容易就能伪造session吗?这样做安全吗?
    如果不安全求改进方式?谢谢
    9 条回复    2014-11-17 15:58:22 +08:00
    TangMonk
        1
    TangMonk  
       2014-11-16 11:41:25 +08:00
    没有绝对的安全,session 要有安全周期,salt要经常换,要防止xss,用户要经常改密码,最好再来个手机验证
    444683462
        2
    444683462  
    OP
       2014-11-16 11:42:25 +08:00
    @TangMonk 恩谢谢。我这样设计session,不说其他方面的。是主流的设计吗?
    TangMonk
        3
    TangMonk  
       2014-11-16 11:47:09 +08:00
    大部分都是这样的
    woshicixide
        4
    woshicixide  
       2014-11-16 13:21:51 +08:00
    session安不安全本身这个问题就有问题,就好象在问网站安全吗一个道理,你应该问的是怎么样操作session更安全
    msg7086
        5
    msg7086  
       2014-11-16 13:23:03 +08:00 via iPhone
    你家的锁安全吗?所以…
    taogogo
        6
    taogogo  
       2014-11-16 13:44:06 +08:00
    [防泄漏] :session id随机生成且长度足够;httponly;传输层https。 [泄露止损] :控制session有效期;绑定ip或设备信息;session id批量失效; [这类都属于安全和风控范畴]
    marshal
        7
    marshal  
       2014-11-16 17:12:09 +08:00
    我的看法,session本身并不是解决安全这个系统需求的吧。
    因为HTTP是无状态的协议,也就是每次请求重新建立TCP连接。
    因此需要一种机制让服务器端能够知道这个请求上次来过。
    这就是session机制的作用。即当一个客户端第一次请求时,服务器发送个session id给客户端,以后每次请求客户端都携带这个id。
    如果需要解决安全这个需求,一般要使用HTTPS,让整个通信线路SSL加密,才可以解决基本安全问题。
    cover
        8
    cover  
       2014-11-16 21:53:46 +08:00 via Android
    这样安全么 这个问题是伪命题 在密码学里面 安全的定义就是 破解的成本大于你保护的东西的成本的时候就可以认为是安全 和doss攻击一样 人家带宽远大于你的带宽的时候你就没办法了。。 所以人家用超级计算机来攻击你的32核服务器 分分钟让你的系统不安全 还是先确定应用场景吧
    jc4myself
        9
    jc4myself  
       2014-11-17 15:58:22 +08:00
    看着没什么问题,就看你怎么用的,具体是怎么操作的/httponly https id不要重复 这些需要考虑下
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3722 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 04:19 · PVG 12:19 · LAX 20:19 · JFK 23:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.