V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
neodreamer
V2EX  ›  程序员

大公司怎么还在犯这种低级的错误。我说的是tumblr

  •  
  •   neodreamer · Jul 19, 2013 via Android · 9249 views
    This topic created in 4668 days ago, the information mentioned may be changed or developed.
    用户登录的密码是明文传输的。

    小公司犯错还可以理解。大公司还犯这种低级错误就有点搞笑了。

    http://m.newyorker.com/online/blogs/elements/2013/07/tumblr-vulnerability-how-to-secure-your-passwords.html
    26 replies    1970-01-01 08:00:00 +08:00
    Perry
        1
    Perry  
       Jul 19, 2013 via iPhone
    我只看他们犯错误后的态度
    neodreamer
        2
    neodreamer  
    OP
       Jul 19, 2013 via Android
    @Perry 事后态度很重要。但这么简单的措施不做是没想到日后成名,所以无所谓吗?
    juntao
        3
    juntao  
       Jul 19, 2013
    刚开始是实习生写的。后来没人改过这块代码了。。运行的好好的嘛。= =
    metalbug
        4
    metalbug  
       Jul 19, 2013
    雅虎收了,应该会改吧?谁知道呢,反正也不碍事
    angryz
        5
    angryz  
       Jul 19, 2013
    感觉哪个公司都不能完全放心,还是得自己辛苦点做好安全防范。
    ejin
        6
    ejin  
       Jul 19, 2013
    大部分网站都明文传输的,另外换句话说,99.9999%的网站都是http协议,可窃听可篡改的,没几个人会https开头打网址,只要不是直接https打开,跳转也能改
    hutushen222
        7
    hutushen222  
       Jul 19, 2013
    除了HTTPS,怎么处理算安全的呢?

    知乎上看到还有JS加密的方式,这个过程是指表单提交后,使用JS将密码变成可解密密文后传递给服务器段吗?
    http://www.zhihu.com/question/20306241
    lichao
        8
    lichao  
       Jul 19, 2013
    @ejin 登陆页面强制 https 是常识
    hutushen222
        9
    hutushen222  
       Jul 19, 2013
    @lichao 这也分站点类型吧,比如V2EX的登陆页面就没有HTTPS。
    lichao
        10
    lichao  
       Jul 19, 2013
    @hutushen222 嗯,改一下,大型网站登陆页面强制 https 是常识
    pfipdaniel
        11
    pfipdaniel  
       Jul 19, 2013
    登录用https,登录完成后http,于是乎可以比较容易的劫持用户session
    linlis
        12
    linlis  
       Jul 19, 2013
    靠,太让人失望了,居然是 Tumblr,亏得我一直用的 Tumblr
    treo
        13
    treo  
       Jul 19, 2013
    只要是http传输的,加密还是明文有什么区别
    treo
        14
    treo  
       Jul 19, 2013
    @hutushen222 这个属于自欺欺人,如果攻击者可以嗅探到明文密码,那么同样也可以嗅探到js加密后传输的hash,replay一下,和拿到明文密码的效果是一样的
    notedit
        15
    notedit  
       Jul 19, 2013
    @hutushen222 不是传送的可以解密的 是hash值 所以服务端也不知道用户的密码是神马 具体的原理可以参考mysql的验证
    notedit
        16
    notedit  
       Jul 19, 2013
    @treo 参考我上条
    swulling
        17
    swulling  
       Jul 19, 2013
    @notedit 在没有https的情况下,这是一个不得已的办法,本地hash后传送
    hutushen222
        18
    hutushen222  
       Jul 19, 2013
    @swulling @notedit 我认同 @treo 的观点, HTTP协议下加密和明文没什么区别,嗅探到之后都可以用以登陆当前站点。

    HTTP协议下加密的方式唯一的好处可能在于不能直接用hash串去登陆其他的站点。
    neodreamer
        19
    neodreamer  
    OP
       Jul 19, 2013 via Android
    @linlis 这次事件只影响 iPhone 和 iPad App 用户。web 登录用户不影响。
    luikore
        20
    luikore  
       Jul 19, 2013   ❤️ 1
    和公司大小没关系, 而且软件质量控制的难度是随着团队大小的指数增长的
    11138
        21
    11138  
       Jul 19, 2013   ❤️ 1
    $password_hash = md5_hex("密码+当前小时");

    这样一个密码的hash有效期是一个小时,还有其它类似的办法,加上验证码等等其它条件再MD5一次。
    birds7
        22
    birds7  
       Jul 19, 2013
    研究人员将在Blackhat 2013上讲解如何30秒破解SSL
    http://www.freebuf.com/news/10883.html
    luikore
        23
    luikore  
       Jul 19, 2013
    @11138 还在用 md5 的都是高危网站
    sharpnk
        24
    sharpnk  
       Jul 19, 2013   ❤️ 1
    这跟明文不明文没有关系. plain text over https完全没有任何问题.

    tumblr的问题是用http传输了. 而且这个不是登陆页面, 是client朝authorization server要access token的request, 影响的是首次登陆的用户.
    zebinary
        25
    zebinary  
       Jul 19, 2013
    现在登陆这块的最佳实践是什么样的?有人出来分享下么?
    neodreamer
        26
    neodreamer  
    OP
       Jul 19, 2013 via Android
    @sharpnk

    http://regmedia.co.uk/2013/07/16/tumblr_plain_text_password.png
    客户端用公钥加密,服务端私钥解密,貌似可以避免用户密码明文被暴露,虽然不能阻止密文被截获,不能阻止别人拿这密文伪造客户登录请求,获取用户访问权限。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5280 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 161ms · UTC 03:24 · PVG 11:24 · LAX 20:24 · JFK 23:24
    ♥ Do have faith in what you're doing.