If the token's seed is secure (YMMV), it doesn't matter if it's on the same machine.
The convention is that the chances of two devices getting stolen together are smaller. That's why offsite backups are a thing.
When Battle.net authenticators were introduced, the primary threat was keyloggers and leaked passwords (from reuse). Both of those threats are eliminated by TOTP, wherever it is.
But this discussion was more about if the machine was stolen and the bad guys logged in to your online accounts from it.
In that case it is true they would have your OTP, but they shouldn't have your Blizzard password.
Passwords (on the OS account and on the Blizzard account) mitigate against the machine being stolen.
OTP mitigates against the password being stolen.
It is what you know and what you have so that if someone gets one they don't automatically get the other.
When both the password and the TOTP seed are on the same machine - assuming you autogenerated your password - they are both autogenerated and out of your sight so they really are just two things you have, and you have them in the same place. The difference is, it's impossible to capture the TOTP seed from the TOTP token being input - passwords are vulnerable to that.
Am I crazy or does that make the password completely redundant?
If your password database is not encrypted with a strong passphrase, then you are right, they both become "what you have".
edit: I don't know. Maybe your implementation meets the definition of 2FA. Regardless, it certainly reduces the security
An attacker can then compromise both factors at the same time.
To me, this weakens the point of 2FA a lot.
Additionally, the keylogging threat is severely reduced against most 2fa (because the login has to happen before the user sends the OTP) and can be eliminated completely by ensuring the token code is on a separate screen and creating a 30 second lock on the account while the user is entering the code.
In what world is malware which has full control of the PC stopped by having the token code on a separate monitor but the same logical system (if that's what you're talking about).
An attacker with control of the PC can just get access to any app. on that PC...
This is fun, I have a tablet here on my desk I was given to repair a couple days ago. It's a mainstream tablet here in greece, sold for 70-90€, the sort of thing you'd buy if you are an "ordinary user" who doesn't know any better.
Well it's running a 4.x android with a custom marketplace and it is FULL OF ADWARE. Seriously. There's fullscreen porn popup ads on the OS itself. There's hundreds of spam notifications, a "fake" screenlocker which captures your taps into ads, etc, etc. Seriously, this thing is like a Windows XP SP0 PC from 2005 after heavy adblockless porn usage with flash and java on. I actually haven't seen anything like that this decade.
This is what you get if you buy an off-the-shelf tablet or phone here. This is what "ordinary users" get. We gave up control of our own devices in the name of security, yet shit like this can still happen.
(Sorry for the OT rant. Seeing that tablet pissed me off.)
If you are able to use a second device for your 2FA, great but it is not always possible and 2FA on the same device is still better then no 2FA at all. I don't want to carry around a key just for all my 2FA passwords but still want to use my phone for common tasks that require 2FA.
Or, are we treating the ephemeral 1-time-use token as something the user has?