it still prevents drive by attacks. without 2fa, having accounts is basically free (take a list of leaked passwords, and try them on 20 sites). with 2fa, it will probably take 15-30 minutes per account of relatively adept social engineering. it won't stop a targeted attack, but it will prevent 95%