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

数据库被脱库,为什么密码会泄露?

  •  
  •   zinplus · 2018-08-30 13:48:35 +08:00 · 10980 次点击
    这是一个创建于 2271 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近华住酒店数据库泄露,但是看到暗网上售卖的信息居然还包括账户的登陆密码。 联想到以前几次脱库,比如之前网易 163 邮箱被脱,也是让大家更改密码。 可是身份信息也就罢了,为什么登陆密码也会泄露呢? 难道现在还有明文储存密码的公司吗?

    可能这个问题有点蠢,请问有了解的 v 友吗。

    37 条回复    2018-08-31 13:12:06 +08:00
    bubuyu
        1
    bubuyu  
       2018-08-30 13:52:46 +08:00
    因为很多人都用同样的密码
    p2pCoder
        2
    p2pCoder  
       2018-08-30 13:54:03 +08:00
    暴力破解
    nl101531
        3
    nl101531  
       2018-08-30 13:54:59 +08:00 via Android
    据说弱密码 000000,123456,666666,888888,这四个密码可以破解中国 30%的银行卡密码。
    f2f2f
        4
    f2f2f  
       2018-08-30 13:55:11 +08:00
    社工库啊
    A555
        5
    A555  
       2018-08-30 13:56:25 +08:00
    简单的哈希 彩虹表对照就能知道,然后就是撞库
    yksoft1
        6
    yksoft1  
       2018-08-30 14:01:00 +08:00
    你看了放出来那些验证数据么?没加盐。
    Tianao
        7
    Tianao  
       2018-08-30 14:01:11 +08:00
    「难道现在还有明文储存密码的公司吗」
    是的,还有很多。

    不过包括本案在内的大多数密文密码遭解密都是依靠彩虹表、反哈希运算实现的。
    R18
        8
    R18  
       2018-08-30 14:01:43 +08:00
    @nl101531 弱密码是禁止设置的
    NotNil1
        9
    NotNil1  
       2018-08-30 14:06:01 +08:00
    @R18 弱密码虽然是禁止设置的,但是下发的卡初始密码可能就是这些,比如农村养老金,补助发放,保险缴款等银行卡,初始密码就是 123123,或者 123456,你不改其实也没有明确限制你不可用,所以还是客观存在的。
    indev
        10
    indev  
       2018-08-30 14:06:37 +08:00   ❤️ 1
    再怎么说也要简单加密一下吧,还是用第三方登录会方便些。
    另外推荐一个密码管理的小东东:(Lesspass)[https://github.com/lesspass/lesspass],不是那个 Lastpass。还有它的 (cli)[https://github.com/lesspass/lesspass/tree/master/cli] 也挺好用,再也不用担心使用弱密码了,也不用费心什么同步的问题
    solomensec
        11
    solomensec  
       2018-08-30 14:11:40 +08:00 via iPhone
    是个人信息泄漏,不是密码,密码有什么用。
    WuwuGin
        12
    WuwuGin  
       2018-08-30 14:14:30 +08:00 via Android
    很多国产框架对密码的处理就是 md5
    yoqu
        13
    yoqu  
       2018-08-30 15:07:34 +08:00   ❤️ 1
    因为有门学科叫做社会工程学
    ClutchBear
        14
    ClutchBear  
       2018-08-30 15:16:19 +08:00
    因为常用的密码的 md5 都被算出来了,
    根据这个 md5 值反向查找就行了啊.
    xuanbg
        15
    xuanbg  
       2018-08-30 15:17:26 +08:00
    很多人(包括我自己)在各大网站的密码都是一样的,如果有个网站被脱了裤,不幸密码还是明文存储的,那么别的网站的密码也就泄露了。
    helionzzz
        16
    helionzzz  
       2018-08-30 15:35:27 +08:00
    当然也有可能这个账户就是一个新建的
    lasuar
        17
    lasuar  
       2018-08-30 18:38:43 +08:00
    你奢望酒店,饭店,便利店,超市有多安全的 IT 服务?
    MonoLogueChi
        18
    MonoLogueChi  
       2018-08-30 18:58:38 +08:00 via Android
    拖库,撞库,彩虹表
    UnluckyNinja
        19
    UnluckyNinja  
       2018-08-30 19:15:26 +08:00
    记得好像密码泄露是说数据库本身后台的密码?
    Hconk
        20
    Hconk  
       2018-08-30 19:29:02 +08:00 via Android
    mysql5 没加盐,弱密码彩虹表可破
    cjw1115
        21
    cjw1115  
       2018-08-30 20:05:51 +08:00 via Android
    华住的密码是处理过得,但是防不了别人猜呀
    loveour
        22
    loveour  
       2018-08-30 22:44:51 +08:00
    之前 csdn 密码泄露的时候,我就下定决心所有地方密码不要一样,然后写了个工具自己生成密码,但是很快就变懒了,虽然很多地方还是不一样,虽然尽量开了二次验证,但是还是有一些密码复用了。。现在就是尽量做到按照类别复用不同的密码吧,以及新注册的就尽量用生成的密码浏览器记住了。
    q397064399
        23
    q397064399  
       2018-08-30 22:48:51 +08:00
    @loveour #22 只有 2 次验证是最靠谱的
    zinplus
        24
    zinplus  
    OP
       2018-08-31 01:18:59 +08:00
    @loveour 2 次验证最安全。但是并不是所有网站都有二次验证功能。为了避免密码重复的问题,我是记住一套公式,然后根据网站的域名来变化,这样每个网站密码都不一样,而我也能记住所有的密码..希望有帮助
    likuku
        25
    likuku  
       2018-08-31 03:32:04 +08:00
    @loveour 1Password 你值得拥有,每个应用 /网站 不同随机高强度密码不是梦
    zhujiulin
        26
    zhujiulin  
       2018-08-31 06:57:53 +08:00
    很多都是明文的 md5 都没有
    因为他们也用得到你的密码
    daigouspy
        27
    daigouspy  
       2018-08-31 07:13:50 +08:00 via Android
    @loveour 密码只要足够长就可以,不需要复杂。
    passerbytiny
        28
    passerbytiny  
       2018-08-31 09:08:54 +08:00
    @q397064399 2 次验证你得看是啥验证,手机短信作为二次验证,一个手机号对应的账号多了,比密码还不安全。
    zhaogaz
        29
    zhaogaz  
       2018-08-31 10:23:50 +08:00
    只要我的密码足够随机,别人就猜不到我。哈哈哈哈

    不过在其他数据都有的情况下,密码本身就不重要了。
    ChasYuan
        30
    ChasYuan  
       2018-08-31 10:43:10 +08:00 via Android
    明文存储的,还不少。何况这些非互联网非技术性企业。
    046569
        31
    046569  
       2018-08-31 10:51:18 +08:00
    https://www.046569.com/2018/05/26/one-line-of-code-contains-two-vulnerabilities.html

    前一阵子写的博客,应该可以解答 LZ 的疑惑.
    简单的说,没有正确编写登录验证逻辑.
    dzhhh
        32
    dzhhh  
       2018-08-31 11:54:30 +08:00
    有些明文,有些没盐,比较简单的加密直接字典去撞,大部分是弱密码
    momocraft
        33
    momocraft  
       2018-08-31 12:12:26 +08:00
    明文
    没盐
    有等于没的盐

    有些行业可能加盐都没有成为普遍认识,我收到过某家国内航空公司“密码系统已升级为 8 位,请在旧密码前加 11 登录”的邮件
    snw
        34
    snw  
       2018-08-31 12:26:30 +08:00
    理想做法是一个密码一个盐,实际上用同一个盐很常见。理想做法是用强健的哈希算法,实际上随手套两三层 md5 就算解决问题很常见。
    有时候可能是觉得这业务不重要所以安全措施随便做做就行,没想到后来业务发展太好了再想改进就很难。
    Telegram
        35
    Telegram  
       2018-08-31 12:42:39 +08:00 via iPhone
    推荐你看下全宇宙最屌的常用加密算法反查网站:cmd5.com
    一般不是特别复杂的密码,一查就有
    mostkia
        36
    mostkia  
       2018-08-31 13:09:39 +08:00
    除了脱裤,还有撞库什么的。其实类似 MD5 这类加密,只要密码比较简单,就有可能得到明文,如果数据库用户足够多,就有了足够的明文账户+密码,这时就可以尝试去别的网站批量登陆,人总是怕麻烦的,总会有人会使用相同的账户和密码。这样就导致了其他第三方的网站,即使没有被入侵,也会导致用户被盗取的情况。
    bk201
        37
    bk201  
       2018-08-31 13:12:06 +08:00
    这就是传统行业老找外包,不关注自己技术团队建设的恶果
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2920 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 12:44 · PVG 20:44 · LAX 04:44 · JFK 07:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.