Admin of lm.put.tf, there isn’t anything special there, just an instance for friends.
Arguably, if you use 2FA to access your passwords in 1password, there’s little difference between storing all your other OTPs in 1password or a separate OTP app. In both cases, since both your secret passwords and OTPs are on the same device (your phone), you lack a true second factor. The most likely way someone would gain access to 1password secured with 2FA is if they control your device and it’s been compromised, and having your OTPs separated wouldn’t provide additional protection there. Thankfully, the larger benefit of OTPs for most people is that they are one-time-use, not that they originate from a second factor.
As you said if you have both the password manager and the OTP manager in the same device it goes against the concept of 2FA, and you can throw most of guarantees out the window.
I think one distinction worth making is that the encrypted vault itself is still only protected by one factor, the password. The OTP 1Password asks you is part of their service authentication mechanism. If for some reason the attacker manages to get an encrypted copy of your vault (Via App cache, Browser add-on cache, mitm, 1Password’s servers, etc…), “all” the attacker needs is to brute force your password and they can access the contents (Password and OTP seeds) of the vault without requiring the TOPT token. Yes you can mitigate this with a good password/passphrase, but as GPUs/CPUs get faster will that password continue to be good enough in few years time? If your master password becomes “easily” brute forceable, now the attacker has access to all of your accounts because you had the password and OTP seeds in one vault.
If you truly feel you need a second factor though, you’ll probably want to look at something like a Yubikey or Titan. I’ve considered getting one to secure my 1password vault to reduce the risk of a lost phone compromising my vault.
I have one, but unfortunately the amount of services that support U2F as a 2FA mechanism is relatively small and if you want to talk about FIDO2 passwordless authentication even less.
That’s a fair point. I just wanted to highlight that there may be cases where a password manager isn’t automatically protected by 2FA by the two factors you mentioned (The password you know and the copy of the vault) since in the case of bitwarden fulfilling one can give you the second. In order to actually achieve 2FA in this case, you would need to enable OTPs.
Many password managers use a biometric factor to sign in
The only thing this does is replace the authentication mechanism used to unlock the vault, instead of using your master password (something you know), it uses some biometric factor (something you are), although it uses your biometric data, it’s still a single factor of authentication
This basically moves the MFA aspect to one service (your password manager) instead of having each service do their own thing
I am not sure I understood you here. What do you mean by “instead of having each service do their own thing”? Each website using their own method of delivering OTPs?
It also comes with the benefits of password managers - each password can be unique, high entropy, and locked behind MFA.
I am not discrediting password managers, they have their uses, as you mention you can have unique, high entropy password on a per service basis. The only thing I am against is the password managers themselves also doubling as OTPs generators (take a look at Bitwarden Authenticator which kinda defeats the purpose of OTPs. From the perspective of OTPs it makes much more sense to use a separate application (Like Google Authenticator or Aegis Authenticator), preferably on a separate device, to generate the OTPs.
That’s not quite right though, there’s the factor you know (password to your vault), and the factor you have (a copy of the encrypted vault).
That would be true for offline vaults, but for services hosted on internet I don’t think so. Assuming the victim does not use 2FA on their Bitwarden account, all an attacker needs is the victim’s credentials (email and password). Once you present the factor you know, the vault is automatically downloaded from their services.
This is something I hadn’t thought until know, but I guess password managers might(?) change the factor type from something you know (the password in your head) to something you have (the vault). At which point, if you have 2FA enabled on other services, you are authenticating with 2 things you have, the vault and your phone.
Although it’s true that you are increasing the attack surface when compared to locally stored OTP keys, in the context of OTPs, it doesn’t matter. It still is doing it’s job as the second factor of authentication. The password is something you know, and the OTP is something you have (your phone/SIM card).
I would argue it is much worse what 1Password and Bitwarden (and maybe others?) allows the users to do. Which is to have the both the password and the OTP generator inside the same vault. For all intents and purposes this becomes a single factor as both are now something you know (the password to your vault).
The latest pixel devices (since 6 I think?) already provide accees to a
/dev/kvm
device, so maybe you could even run a normal Ubuntu server VM on your phone for hosting these services.