V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Archeb
V2EX  ›  问与答

Bitwarden 支持把密码本和 TOTP 放在一起,这是出于什么考虑?

  •  
  •   Archeb · 2022-10-05 09:43:02 +08:00 · 6162 次点击
    这是一个创建于 811 天前的主题,其中的信息可能已经有所发展或是发生改变。

    TOTP 本来的目的应该是在密码被泄漏 /撞库 /钓鱼的情况下提供多一层保护,如果有人把把密码本和 TOTP 密钥放在同一个地方,这不就相当于只上了一道锁吗?

    如果 bitwarden 的数据被人导出了(虽然这件事发生的几率不大) TOTP 也没办法提供保护

    从结果来看,二步验证的安全性直接变成一步验证了,而且还麻烦了自己。更别提 bitwarden 这个功能官方版里还要另外收费了……

    所以这个设计让我很迷惑,望 V 友解答这是在什么情况下会有意义的功能。

    43 条回复    2023-09-28 19:38:12 +08:00
    0o0O0o0O0o
        1
    0o0O0o0O0o  
       2022-10-05 09:45:38 +08:00 via iPhone
    你可以创建两个 bitwarden 账户分开存放
    xiaoz
        2
    xiaoz  
       2022-10-05 09:45:38 +08:00 via Android
    安全和便捷往往没法同时满足,这样做确实方便很多,但安全性有所下降。用户可以自行取舍,如果担心 TOTP 泄露,可以单独用谷歌的认证器保存,但是维护起来不太方便,所以我选择了前者。
    shakespark
        3
    shakespark  
       2022-10-05 09:48:24 +08:00 via iPhone
    我也很好奇这个设计。所以我用单独的 authy
    MengiNo
        4
    MengiNo  
       2022-10-05 09:49:59 +08:00 via Android
    方便而已。 可以根据是否核心业务来选择要不要 all 在一起。比如一些公司内网的服务 TOTP 完全没必要单独再用另外再搞一个软件存。 我自己也就苹果、谷歌、微软三大家的 TOTP 单独放在 authy ,其他也都 all 在 1password 里。何况绝大多数人的 bitwarden 都是自建的,对安全和隐私普遍都更自信和放心。
    optional
        5
    optional  
       2022-10-05 09:52:09 +08:00
    我也这么想,所以不用这个功能。 但是我其实觉得最安全的是短信验证码
    testver
        6
    testver  
       2022-10-05 09:59:48 +08:00
    @optional 短信验证码安全?
    des
        7
    des  
       2022-10-05 10:06:06 +08:00 via iPhone
    短信验证码最安全?电子令牌有话要说
    Archeb
        8
    Archeb  
    OP
       2022-10-05 10:07:38 +08:00   ❤️ 3
    还有一种情况:有时候选两步验证是为了让网站觉得我更安全了
    0o0O0o0O0o
        9
    0o0O0o0O0o  
       2022-10-05 10:09:58 +08:00 via iPhone
    @Archeb #8 你提到的这点才是我的大多数情况,有些网站设置了 TOTP 后,更不容易被风控。
    agagega
        10
    agagega  
       2022-10-05 10:21:09 +08:00 via iPhone
    安全性实际是有提高的,因为密码依然可能泄露,这时候 TOTP 还能起到作用。但总的来说,这就是一个用安全性换取便利的做法。我也实在不喜欢在电脑登录的时候还非要拿起手机看验证码
    miyuki
        11
    miyuki  
       2022-10-05 10:25:53 +08:00
    可以防止撞库(自身随机密码)
    miyuki
        12
    miyuki  
       2022-10-05 10:26:55 +08:00
    @miyuki
    自己表意不清楚,其实随机密码本身可以防止撞库,就像楼上说的,安全性和便捷性总要牺牲取舍一下
    yfugibr
        13
    yfugibr  
       2022-10-05 10:35:47 +08:00 via Android
    给想要方便的人一个选择,真在意的话自己分开存就好了
    KomeijiSatori
        14
    KomeijiSatori  
       2022-10-05 10:49:23 +08:00 via iPhone
    那 TOTP 可以用 Yubikey 之类的存(
    q9OxQgg
        15
    q9OxQgg  
       2022-10-05 10:55:14 +08:00 via Android
    Keepassxc 也是密码和 totp 放一起的。非自建的 Bitwarden 不好评论。自建的 vaultwarden ,登录时自身也可以有 totp ,可以用 authy 或者 keepassxc 之类侧面来把关。如果说密码还可能通过怪里怪气的渠道泄露或者被猜出,有个 otop 当保底不是蛮好,哪怕是放在一起的 otop 。毕竟安全做足,自建的 bitwarden 的库要被偷走,还被解了密,应该相当不容易。
    ob
        16
    ob  
       2022-10-05 10:55:47 +08:00 via Android
    防的是从其他地方泄露的密码,而不是防从他自身泄露。
    Biggoldfish
        17
    Biggoldfish  
       2022-10-05 11:00:05 +08:00 via Android   ❤️ 1
    安全和便捷是 tradeoff 。把 TOTP 放到 Bitwarden 里,登录网站时不必专门去开其他应用看验证码,也许会促使用户尽可能开启各个服务的两步验证(否则一些不太重要的服务可能怕麻烦就懒得开了
    Autonomous
        18
    Autonomous  
       2022-10-05 11:00:46 +08:00
    其实就是为了方便吧,用 Bitwarden 自动填写用户名密码之后,二次验证码会自动复制到剪贴板,只需要粘贴就通过了
    K1W1
        19
    K1W1  
       2022-10-05 11:05:52 +08:00
    我觉得问题不大,你用了 Bitwarden 自带的 TOTP ,你肯定还需要一个两步验证的工具,因为本身 Bitwarden 登录也要用两步验证登录(除非没开启)。你说的那种情况是在 Bitwarden 账号被泄露,同时它两步验证也被破解。
    yaoyao1128
        20
    yaoyao1128  
       2022-10-05 11:11:21 +08:00 via iPhone
    个人理解下 totp 的认证方式更多是针对各种情况下的用户名与密码的泄漏而处理的。这种泄漏的源头一般不会是用户保存密码的方式决定的,totp 是为了保护单个泄露而不是整体密码存储的库丢失的。所以说在用密码管理器的前提可能就是对密码管理器的信任,信任密码管理器不会把你的数据弄出来……
    amirobotics
        21
    amirobotics  
       2022-10-05 11:22:15 +08:00
    问:如果 bitwarden 数据被导出,导出数据的人是否有能力将其打开?
    答: https://bitwarden.com/help/what-encryption-is-used/

    问:bitwarden 是否有漏洞?是否存在后门?
    答: https://bitwarden.com/help/is-bitwarden-audited/

    问:二步验证的安全性直接变成一步验证?
    答:在自己的主密码不泄露的情况下,二步验证的安全性不会直接变成一步验证。恰恰是网站如果被泄漏 /撞库 /钓鱼导致网站密码泄露,TOTP 还能发挥作用,让攻击者无法登入网站账号。
    ltkun
        22
    ltkun  
       2022-10-05 11:28:36 +08:00 via Android
    .我看过 bitwarden 的数据库 想
    ltkun
        23
    ltkun  
       2022-10-05 11:29:42 +08:00 via Android
    .我看过 bitwarden 的数据库 想解密几乎不可能 我可以放几条数据出来试试哈
    Archeb
        24
    Archeb  
    OP
       2022-10-05 11:40:12 +08:00
    @amirobotics
    @ltkun

    这里说的被导出数据,显然不是说从自建或者官方服务器数据库里导出,而是因为某种原因(比如被人偷窥主密码),趁你不在从客户端上把正常数据导出
    ltkun
        25
    ltkun  
       2022-10-05 12:02:58 +08:00 via Android
    能物理接触就没啥意义了 看到密码的概率还不如强行捆绑逼供大 或者直接拿了 yubikey 哪怕人脸识别 虹膜指纹都没有用了
    guazila
        26
    guazila  
       2022-10-05 12:04:13 +08:00
    TOTP 我觉得对弱密码和防撞库很有用。但如果使用的是高强度随机密码,再把 TOTP 密钥放在了密码一个位置,那么安全性提升就有限。能想到发挥作用的情况有几个:
    1 、网站泄漏密码,但是又不能泄漏 TOTP 密钥。
    2 、键盘记录器或者剪贴板泄漏密码。(但是密码管理器对此的管理都很严格)
    3 、不安全的网络传输,中间人攻击。
    cosette
        27
    cosette  
       2022-10-05 12:17:58 +08:00   ❤️ 2
    因为密码管理器的目的就是方便而不是安全,密码管理器本身不能提供更高的安全性,之所以觉得会更安全是基于这样一条假设:在不使用密码管理器的情况下,用户会倾向于选择简单好记的弱口令,因此更容易被猜出,或者倾向于复用密码,导致有被撞库的风险。

    基于方便的考量,把所有密码集中起来,进而把 totp 也集中进来是水到渠成的事情,同样的,基本上面的考量,风险也被集中起来了,但使用密码器的用户都有这样的自信:1. 密码器的数据不可能以正常使用以外的方式被使用,或者漏洞的风险极低,至少比使用其他方式同时泄露的风险更低; 2. 主密码会被保存得很好,不会泄露,也不会遗失; 3. 最重要的一点是密码器目前还没公开暴露出严重问题,亦即前面的自信尚未被摧毁
    arch9999
        28
    arch9999  
       2022-10-05 12:29:02 +08:00   ❤️ 1
    你的密码管理器能被导出,2FA 验证器就不会被导出、复制吗?
    也许你要的是那种不把鸡蛋放一个篮子里的感觉,那就不应该使用密码管理器。
    optional
        29
    optional  
       2022-10-05 12:32:18 +08:00
    @testver 二次验证丢了就相当于裸奔, 短信验证码还可以立即挂失并补办。
    PogOnion
        30
    PogOnion  
       2022-10-05 12:33:43 +08:00
    我將兩者分開,登錄 bitwarden 我也開啓了 2FA ,所以不可能這麽幹。
    如果你只是無腦擔心各種問題,而完全不在乎別人提供的解決方案的細節。
    我勸你早點扔掉手機和電腦,智能系統不適合你
    Archeb
        31
    Archeb  
    OP
       2022-10-05 12:37:32 +08:00
    @arch9999 别的不说,微软和谷歌的身份验证器确实无法被导出和复制(或者说很难,特别是在没越狱的 iPhone 和 Android 上,现在移动设备的安全都做的挺好的)。 我确实认为不应把鸡蛋放一个篮子里,所以我同时使用验证器和密码管理器,并且把它们分开。

    @ltkun 比如在你身后柜子上放一个小摄像头,又或者比如在公司头顶有高清晰度的监控,从而把你的系统登陆 PIN/密码管理器主密码记录下来,不是什么困难的事,更不一定需要强捆绑逼供。手机 TOTP (或者类似微软 /谷歌,主动推送批准登录)的安全性比这就好上许多。

    总的来说我比较同意 @guazila 的看法。
    Archeb
        32
    Archeb  
    OP
       2022-10-05 12:39:55 +08:00
    @PogOnion

    首先我这个帖子的意思就是建议把两者分开放置。

    其次希望讨论的时候大家都能够互相尊重一点,我只是在向大家平等地提问。
    ltkun
        33
    ltkun  
       2022-10-05 12:57:56 +08:00 via Android
    我是 root 党 所以我的一切设备我控制 真泄露了也怪自己没做好安全措施 那些我控制不了的设备上的数据只能是安全级别比较低的 所以苹果 iOS 这种系统基本上不可能碰 自建私有云 任何时候都连着 VPN 只要出门
    arch9999
        34
    arch9999  
       2022-10-05 13:14:11 +08:00
    把 密码 和 OTP 分开管理,确实能提高安全性。但是在使用者不泄露密码数据库和主密码的情况下,你是否把 OTP 和密码放在一起,两者的安全性是对等的,而便捷性确有很大的差距。

    如果非要分开放,我也会选择建立两个数据库,一个存放密码,一个存放 2FA 因素,而不是使用手机 App 。

    丢失手机,还原、刷机忘记备份,错误卸载的时候真的是麻烦得要死。
    arch9999
        35
    arch9999  
       2022-10-05 13:15:18 +08:00
    确 -> 却
    SunsetShimmer
        36
    SunsetShimmer  
       2022-10-05 13:16:01 +08:00
    或许开发者从来都没考虑过这个问题,并且想把选择权交给用户?

    有些网站的 TOTP 不只用在登录上,还有各种操作验证( GitHub 删库等)。
    arch9999
        37
    arch9999  
       2022-10-05 13:28:40 +08:00
    @SunsetShimmer

    可是 OTP 也是密码,密码管理器管理特殊密码,没有问题啊,但怎么管理确实是用户说了算。
    superrichman
        38
    superrichman  
       2022-10-05 13:33:37 +08:00 via Android
    从结果来看,放一起是使用更方便不是更麻烦。bitwarden 本来就是为了方便管理和使用密码而存在的,不是吗?

    手机存 totp 的一个弊端,手机掉了你的 totp 码就全没了。
    SunsetShimmer
        39
    SunsetShimmer  
       2022-10-05 13:36:01 +08:00
    @arch9999 Bitwarden 似乎不会拒绝任何(有限长度的)字符串,从我的实际使用来看,它可以用于安全地保存各种字符串( token 、gpg 私钥、URL )
    dingwen07
        40
    dingwen07  
       2022-10-05 13:40:35 +08:00 via iPhone
    你 Bitwarden 有 2FA 啊
    ZeawinL
        41
    ZeawinL  
       2022-10-05 13:58:53 +08:00 via iPhone
    有一种场景,我没可信任的设备,我分成两个密码数据库,一个存密码,一个存 TOTP
    ffgrinder
        42
    ffgrinder  
       2022-10-05 15:52:57 +08:00
    #24 #31 真就是纯嘴硬。“又或者比如在公司头顶有高清晰度的监控”。你的手机 TOTP 能规避这个吗?我第一次录制你的密码, 第二次只要盯着你打开令牌页面我就抢先输入 TOTP 是不是就完成了登录呢?更离谱的我和你同时发起一次登录,用 Microsoft Authenticator 你能区分哪个是你发起的,哪个是我发起的?

    真有需求上硬件 TOTP 啊,好像你分开放就某改了一样。
    TossPig
        43
    TossPig  
       2023-09-28 19:38:12 +08:00 via Android
    从结果来看,对于我自己开启 Windows holle 的设备于我而言相当于无密码😉

    一旦有人绑架我到我电脑面前就可以开启我的设备,那么浪费空间和计算资源的全盘加密还有什么意义?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5334 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 05:49 · PVG 13:49 · LAX 21:49 · JFK 00:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.