News for hackers. Stuff that matters.
Re:Don’t Get Clever with Login Forms by colinramsay on Friday February 15, 2019 @11:36AM (#19172225)
There's been a recent tendency to split login forms into username/password over two screens as mentioned in this article. It's maddening. Password managers can't deal with this, unsurprisingly. I don't see the benefit this provides for anyone.
Re:Don’t Get Clever with Login Forms by amaccuish on Friday February 15, 2019 @11:40AM (#19172270)
That is quite useful however with some federated auth flows, where you just need the email to see where to send them for the actual auth (e.g. Office365 and SAML login), otherwise you'd needlessly be entering your password.

I also much prefer it to the previous way e.g. Office365 worked, where once you'd tabbed away from the email box, they'd detect you needed to be redirected and send you off, whilst most people had begun typing their passwords.

Re:Don’t Get Clever with Login Forms by jakob223 on Friday February 15, 2019 @03:21PM (#19174355)
Dropbox does an AJAX request when you enter your username, and it's fast enough that when you get to the password field it's already greyed out if you use SSO.
Re:Don’t Get Clever with Login Forms by khalilravanna on Friday February 15, 2019 @06:11PM (#19175626)
This should be the answer. As soon as the user enters a valid email (regex test) send a request to server to figure out what path they need to go down in the “federated flow”. What we shouldn’t do is diminish the experience for some because the flow for some others is different.
Re:Don’t Get Clever with Login Forms by underwater on Friday February 15, 2019 @09:24PM (#19176610)
You shouldn't have a giant sign asking people for something they don't have, it's confusing and discourages people from using your product.
Re:Don’t Get Clever with Login Forms by franciscop on Friday February 15, 2019 @10:08PM (#19176795)
It should be onblur, otherwise you'd send requests for:

- [email protected]

- [email protected]

- [email protected].

- [email protected]

- [email protected]

And you'd have to account for all those tricky race conditions happening there

Re:Don’t Get Clever with Login Forms by pmontra on Friday February 15, 2019 @11:30PM (#19177078)
And [email protected] could be the email of another user, so you'll never be able to login with yours.
Re:Don’t Get Clever with Login Forms by velobro on Saturday February 16, 2019 @12:52AM (#19177300)
HelpScout's login is anothrt good example! Definitely echoing other's thoughts that it's the correct way to handle it
Re:Don’t Get Clever with Login Forms by 8ytecoder on Friday February 15, 2019 @11:47AM (#19172350)
Yeah, federated flows were my guess too. However, the password fields could have been present and hidden in the same page supporting both password managers and avoiding a page transition. And also the hundred other sites that don't need federated flows but think they need to copy this feature as well. Together it's annoying to hit password managers twice for every login.
Re:Don’t Get Clever with Login Forms by amaccuish on Friday February 15, 2019 @11:54AM (#19172438)
> However, the password fields could have been present and hidden in the same page supporting both password managers and avoiding a page transition

But then you run the risk of your password of being submitted to the wrong portal no?

> And also the hundred other sites that don't need federated flows but think they need to copy this feature as well

Very true. It seems to be becoming increasingly prevalent :(

Re:Don’t Get Clever with Login Forms by 8ytecoder on Friday February 15, 2019 @12:50PM (#19172998)
i) Hidden and ii) Nothing I enter should be submitted anyway in an SSO flow.
Re:Don’t Get Clever with Login Forms by blattimwind on Friday February 15, 2019 @01:24PM (#19173345)
Page 1: Email/account name, Page 2: Okay, here are some recatpchas, Page 3: Password. Mistyped it? Start back on Page 1 please.
Re:Don’t Get Clever with Login Forms by tomc1985 on Friday February 15, 2019 @12:28PM (#19172799)
Pretty sure that is why... you enter your username and it checks to see what authentication flow to use, if it's a password flow then you get a password screen.

Pisses me off too

Re:Don’t Get Clever with Login Forms by jrwoodruff on Friday February 15, 2019 @01:16PM (#19173262)
Bingo. This is why we went with a stepped process. Did you log in with Google, Twitter, Enterprise SSO, or Email? Do you even have an account, maybe you need to create one?

It frustrated everyone.

Since we've implemented the stepped process (and made other changes) complaints have all but disappeared, and the number of failed sign in attempts has been significantly reduced, successful logins has increased slightly, and overall login attempts dropped.

It's not perfect, but all indicators are it's better than a screen full of options - it allows us to guide users to the correct action.

Sure, it can still be annoying, but less so than what it was.

Re:Don’t Get Clever with Login Forms by MrStonedOne on Friday February 15, 2019 @05:26PM (#19175295)
The way google does auth is also two screened, email -> next -> password

But! the "screen" is fake. the password field exists and is visible to the password manager (but not the end user) right off the bat, so it doesn't disrupt them.

Re:Don’t Get Clever with Login Forms by usr1106 on Saturday February 16, 2019 @01:46AM (#19177431)
Yeah, google might do it technically smart.

But the user experience is extra poor, because they do not honor the Accept-Language header, but insist to use the local language of your public IP address. When travelling that can often be a language you don't understand. And when travelling you often get an extra security step, because they haven't seen you in that country before. Extra painful in a language you don't understand.

Disclaimer: I use Cookie Autodelete and Firefox containers. So they get a bit less info about me than about the average user. But ignoring Accept-Language makes no sense to me. Pretty unlikely the user does not understand the language of the browser but the local language of the IP address.

Re:Don’t Get Clever with Login Forms by repolfx on Saturday February 16, 2019 @11:35AM (#19179377)
It's extremely common that Accept-Language headers are wrong because people don't know how to configure their OS or browser with the right language preferences, e.g. they add their language preference second or not at all.
Re:Don’t Get Clever with Login Forms by usr1106 on Saturday February 16, 2019 @03:25PM (#19180742)
Sounds weird to me. 99% of the users probably don't configure anything. (So do I, because I don't see the need. My preferred language is the language of my operating system. Otherwise I would change it in the operating system.) By default the browser should send Accept-Language the same as the localization in use. It doesn't sound likely that people would use the browser in a language they don't understand.
Re:Don’t Get Clever with Login Forms by lnl on Tuesday February 19, 2019 @04:29AM (#19197737)
Google is the developer of the most popular web browser. If this is really a common problem, they can make UI changes to their browser to make that more accessible. It is not so hard to imagine a way to do it for even the most casual users, e.g. maybe using something similar to the Google Translate headers I notice when I use Chrome.

Besides, I have difficulty believing that this is a common problem. I have never seen a user whose OS was configured to a wrong language. Even if they have zero computer knowledge, they just ask someone else to fix it as the first thing. Computers/smartphones are already scary for technophobes; they wouldn't even touch them when they are in a language they don't understand.

This is especially irritating for VPN users as it is not just a problem when traveling, but all the time. I essentially gave up on hoping to get Google pages in a language that I understand. However, they made the situation worse in the past year: even if I use my country's localized Google domain, Google ignores that and gives me results according to my IP: websites from a different country about a possibly irrelevant subject, in a language I don't understand.

Re:Don’t Get Clever with Login Forms by StavrosK on Friday February 15, 2019 @01:37PM (#19173466)
Your comment confuses me, can you clarify?

> This is why we went with a stepped process. [..] It frustrated everyone.

But then:

> Since we've implemented the stepped process (and made other changes) complaints have all but disappeared

Re:Don’t Get Clever with Login Forms by thisacctforreal on Friday February 15, 2019 @01:52PM (#19173606)
"[..]" was a list of all the problems that frustrated people before the stepped process.
Re:Don’t Get Clever with Login Forms by StavrosK on Friday February 15, 2019 @02:22PM (#19173868)
Oh, I see, thanks. The list sounded to me like a description of the stepped process, so I was confused.
Re:Don’t Get Clever with Login Forms by schwap on Friday February 15, 2019 @01:56PM (#19173638)
Choose login method first = frustration (users may not remember what IdP they used) Stepped process = drop in complaints
Re:Don’t Get Clever with Login Forms by ecnahc515 on Friday February 15, 2019 @02:52PM (#19174132)
OMG yes. We went with "choose the login option" and it sucked. Everyone created multiple accounts (we didn't support combined identity at the time) and it just..sucked.
Re:Don’t Get Clever with Login Forms by Silhouette on Friday February 15, 2019 @05:11PM (#19175194)
Not that I disagree, but we have possibly the world's most boring login system with nothing but email/password and even then people manage to create multiple accounts. And then [email protected] will email us, asking why the facilities they set up last month aren't working any more, completely failing to mention that they set them up using their [email protected] account.
Re:Don’t Get Clever with Login Forms by cr0sh on Friday February 15, 2019 @06:18PM (#19175673)
Maybe I'm not following things right, but instead of doing it this way, why not have the screen with email and password (and whatever else - forgot password, submit button, etc) - but have the screen do the check on the email - and if the flow is different, change the screen (remove fields, change labels, etc), or redirect to a new screen?

That way, those that use password managers could still continue so (as it would check and see that yes, password flow - or whatever), but for others, it would do something else.

Re:Don’t Get Clever with Login Forms by underwater on Friday February 15, 2019 @09:31PM (#19176639)
Imagine a real world equivalent: a store that loudly states "Membership card needed for purchase", but in actual fact have massive exceptions if you do try and purchase without a membership. This wouldn't be a smart business decision (how many non-members do you know who fill their prescriptions at Costco).
Re:Don’t Get Clever with Login Forms by swiftcoder on Saturday February 16, 2019 @12:02AM (#19177170)
The password field in this scenario doesn't have to be visible. As long as it's attached to the DOM the password manager can still fill it. Then you make the password field visible if the email address doesn't match a known SSO integration.
Re:Don’t Get Clever with Login Forms by underwater on Saturday February 16, 2019 @07:18PM (#19181822)
That is good advice. And I would get behind Brad promoting that as a design pattern.
Re:Don’t Get Clever with Login Forms by rhizome on Friday February 15, 2019 @05:11PM (#19175191)
This feels similar to the VRFY problem in SMTP. Input an email address and find out their auth provider?
Re:Don’t Get Clever with Login Forms by krferriter on Saturday February 16, 2019 @02:13AM (#19177509)
You can do this without it being two separate views. Send a request on lose focus of the username field to check if the account is from a federated service.
Re:Don’t Get Clever with Login Forms by chayesfss on Friday February 15, 2019 @12:31PM (#19172819)
Yes, splitting up auth flow allows you to query auth requirements, query apis for risk/security and more
Re:Don’t Get Clever with Login Forms by joshklein on Friday February 15, 2019 @01:47PM (#19173562)
What reasons are there to avoid doing this asynchronously?

(Please note that I’m opposed to requiring user agent javascript to access something claiming to be a website, but let’s assume we’re talking about something behaving like a single-page application post-authentication anyway.)

Re:Don’t Get Clever with Login Forms by enlyth on Friday February 15, 2019 @05:25PM (#19175288)
I'll give my perspective as a web dev, it can be tricky to time the requests and decide when to query the API asynchronously.

Consider a user starts typing an email address, when do you send out the first async request to find out what authentication flow is required?

On each onChange event, first time the email is valid, would have issues that your email is [email protected], but [email protected] is already valid, so you're probably going to debounce the call by a few hundred ms.

What if the user makes typos, or if they are typing in the email very slowly, and so on.

You might say it doesn't matter, just don't show any UI feedback until its valid, or keep refreshing the current status, but the problem is your control flow is decided by the email that's typed in. You want to redirect certain users to an SSO page, others to type in their passwords, and so on. [email protected] might need a different authentication flow than [email protected], which are both valid addresses.

Another choice is the onBlur event, but this becomes clunky. Think about when it's triggered and how you would incorporate this into a nice UX, I don't think it's possible.

The inversion of control, giving the user time to fill the form in, and press an explicit "Ready, I've typed my correct email in, what's next?" button, makes the flow easy to code.

I hope this helps.

Re:Don’t Get Clever with Login Forms by Raidion on Friday February 15, 2019 @06:22PM (#19175701)
This is so true it hurts. It honestly sounds like a pretty great idea, so I can see why product would be behind it. "We won't have a login experience like other providers, it would be a total $BRAND_EXPERIENCE_HERE" Then you start getting into the weeds and it's really just not possible to do well.
Re:Don’t Get Clever with Login Forms by jakear on Friday February 15, 2019 @03:22PM (#19174367)
Dropbox manages to provide both fields, but instantly switch the password to be a “sign in with blah blah” when you’ve typed your email and it recognizes it as using a different provider.
Re:Don’t Get Clever with Login Forms by chrisan on Saturday February 16, 2019 @07:01AM (#19178240)
> That is quite useful however with some federated auth flows

This can't be a large majority. I only ever hear complaints.

Whats wrong with the suggested way (Harvest example) of having both on the same screen and letting the user choose

Re:Don’t Get Clever with Login Forms by Scooty on Friday February 15, 2019 @01:08PM (#19173175)
The few times I've seen this (Google and Amazon I think), my password manager (Lastpass) has had no problem, but I've run into several sites where simple two input and a button login forms don't autofill correctly. Usually the username field will get cleared when the password gets autofilled, so I have to manually paste the username.

I wish password managers would become popular with non-tech people already. I can't wait for a day where there's just a "Sign in manually" link for the few people that manage to remember their 1200 usernames/passwords. Password managers shouldn't need to rely on autofilling inputs at all.

Re:Don’t Get Clever with Login Forms by SlowRobotAhead on Friday February 15, 2019 @01:26PM (#19173368)
Agreed. I have a handful of split username then password on a new page sites, and LastPass handles those just fine.

It doesn’t do well with banks that think they are being clever though.

Re:Don’t Get Clever with Login Forms by swiftcoder on Saturday February 16, 2019 @12:10AM (#19177190)
I'm honestly not sure why the password managers don't offer federated login (with SSO helped out by their browser extension). As a website owner, I'd love to be able to throw a "login with lastpass" link on the sign in page.
Re:Don’t Get Clever with Login Forms by Too on Sunday February 17, 2019 @02:30AM (#19183163)
OpenID provides federated login and is already widely used. It's not frictionless however and didn't really take off as much as people first expected due to usability problems with login-urls as user ids and anonymity to website owners.
Re:Don’t Get Clever with Login Forms by tylerl on Friday February 15, 2019 @02:23PM (#19173881)
Actually this is necessary in order to support federated auth.

Password managers have already figured out how to support this transparently, so it's a non-issue anymore... Including even Chrome's built in manager, which is not exactly cutting edge. If yours can't cope then it's a sign that your software isn't being actively maintained very well.

Re:Don’t Get Clever with Login Forms by icebraining on Friday February 15, 2019 @02:33PM (#19173977)
Yeah, haven't had problems with Firefox's manager either.
Re:Don’t Get Clever with Login Forms by krferriter on Saturday February 16, 2019 @02:16AM (#19177517)
Why is it a requirement to have two separate views? Why not just do the check when the user leaves the username textbox. I don't see the reason for the other page to be displayed separately.
Re:Don’t Get Clever with Login Forms by __jal on Friday February 15, 2019 @03:23PM (#19174371)
1Password has gotten confused a few times for me. (No way I'd ever use Chrome's. Or Apple's, for that matter.) Although now that I think about it, I think not in a while.

Still annoys me - a classic example of offloading the costs of technical decisions on the user, even if those costs are "just" mental energy and a page load. At the very least, if you feel you need to do this, make the login pages very, very lightweight. One I log in to daily has huge background images that are utterly, stupidly useless, wasteful, annoying and for some reason uncacheable.

Re:Don’t Get Clever with Login Forms by zrail on Friday February 15, 2019 @11:57AM (#19172472)
1Password handles this just fine. You just have to hit the button twice.
Re:Don’t Get Clever with Login Forms by numbsafari on Friday February 15, 2019 @12:07PM (#19172580)
Came here to say the same. This absolutely works with 1Password, even if you have multiple accounts for a single site (eg Google, or multiple test accounts for a site you run).

Split logins are very useful for federated auth, as well as for supporting different kinds of multi-factor auth.

Re:Don’t Get Clever with Login Forms by enobrev on Friday February 15, 2019 @02:06PM (#19173720)
Bitwarden and LastPass seem to handle it fine as well in my experience
Re:Don’t Get Clever with Login Forms by dankyung on Friday February 15, 2019 @11:25PM (#19177059)
1Password X actually handles this without having to hit the button twice.
Re:Don’t Get Clever with Login Forms by mbesto on Friday February 15, 2019 @12:06PM (#19172572)
Sure, but it's definitely YMMV.
Re:Don’t Get Clever with Login Forms by reaperducer on Friday February 15, 2019 @12:50PM (#19173005)
1Password isn't the only password manager in the world.
Re:Don’t Get Clever with Login Forms by behringer on Friday February 15, 2019 @01:14PM (#19173239)
So submit a bug report to your favorite password manager.
Re:Don’t Get Clever with Login Forms by jackweirdy on Friday February 15, 2019 @12:08PM (#19172590)
If your platform supports 2FA, differing authentication mechanisms, or really anything that can make one accounts login process different to another, splitting it into 2 steps allows you to request the user ID first, then show the appropriate auth form for the second step.

I agree you can achieve this by other means, but services may have their own reasons for doing it this way.

Re:Don’t Get Clever with Login Forms by scarface74 on Friday February 15, 2019 @04:13PM (#19174774)
I’m thinking about how sites like the Amazon card payment site works. You enter your username and password, it sends you an MFA text that iOS automatically recognizes and offers to populate in the field.
Re:Don’t Get Clever with Login Forms by usgmr on Friday February 15, 2019 @12:23PM (#19172744)
>Password managers can't deal with this, unsurprisingly.

I use a password manager too and often wonder about this. Does this responsibility fall on the website's designer/developer or the password manager?

In one hand, I'd like my password manager to work on every site too but on the other, being a web developer/designer, I don't want another thing to support. We already have browsers and browser versions, and browsers and browser versions in specific platforms to keep track of. Do I want another layer of something to keep track of?

(This is totally unrelated but another thing I apply this question to is a page's/websites ability to support reading mode. You have straightforward pages that you can read wholly in something like Firefox's Reader View or Instapeper/Pocket. Then there are those pages that rely too much on some javascript library (sliders, read more, etc.) to display properly that gets broken when seen through reading mode.)

Re:Don’t Get Clever with Login Forms by brianpan on Friday February 15, 2019 @12:50PM (#19173001)
Both. It's basically an accessibility problem.

Should screen readers be able to handle some unusual pages? Yes. Should websites design for accessibility? Yes.

Re:Don’t Get Clever with Login Forms by MrStonedOne on Friday February 15, 2019 @05:31PM (#19175328)
As a web designer, your goal wrt security should be to make your site only work with password managers, and never work with manually entered passwords.

Password managers aren't "Another thing to support" but "The only secure way to do passwords"

If your user can remember their password, they also likely: reused it elsewhere, have some pattern to it or minor changes that could be figured out from a email search in any password database, made it simple enough to be not secure.

Re:Don’t Get Clever with Login Forms by breatheoften on Saturday February 16, 2019 @01:02AM (#19177331)
I agree with this — I’ve “helped” a few friends transition their lives to password managers (basically just sat with them and kept suggesting sites they probably use that they might want to go change their password for — after they’ve done 5 or 6, they understand how to do it and are very likely to keep using it going forward).

I think this has to be highest benefit easy-ish thing you can do for someone to aid their computing lives in 2019 ...

Everything sites can do to help users undergo this transition would help them in the long run ...

The big password manager implementations need to do better as well — I don’t understand why iCloud Keychain doesn’t support generating random passwords that conform to the (horrific) password complexity checks you see out there in the world sometimes ... those sites are wrong to have such a broken feature but there are enough such broken sites out there that a clean workaround is needed on the password manager side ...

It would also be nice to have a solution for security questions built in — my solution is an OpenSSL command line for the random password generation and shared notes in which I record security questions and answers for sites. It’s better than actually providing real answers to security questions at least ... support for this functionality should really just be built into my password manager — the alternative likely thing is that a user will use actual answers to security questions for password reset all across the internet and this is not a thing the password managers should support their customers doing ...

Re:Don’t Get Clever with Login Forms by usgmr on Saturday February 16, 2019 @05:21AM (#19178027)
I agree with you somewhat. I think my role as a developer/designer is to make sure that my forms work with pw managers. But I think encouraging users to use a manager should rest upon password managers. I can nudge them to use a secure password but the decision to write something like "please use a password manager" isn't usually my decision.

Also, let's admit it, unless you do something really crappy like remove copy-paste, forms don't exactly "not work" with managers. Most of the time, you don't have to do anything special and it would work. Some just take a bit more time because you have to cop-paste it and not autofill. But people who are already using pw managers don't just stop using it (or start memorizing their passwords) because one site can't be autofilled. They just copy paste it, at worst, they manually input it while looking at the password from their pw manager of choice.

My line about "supporting" it is a bit off. I used the wrong words. It goes to say that you should support it. Again, you have to do something really out of your way to completely block off password managers from your forms so really, I think the norm is that they support it. My thought goes more along the line of whether I should be the one to adjust when the form works on some pw manager but not on another or when the pw manager can handle other sites properly and not mine. "Working" and "handling" here means it can be autofilled (most of the time).

Re:Don’t Get Clever with Login Forms by mikeash on Friday February 15, 2019 @12:28PM (#19172797)
Thinking pragmatically, a password manager can fix this in one spot, while weird web pages will always be around.
Re:Don’t Get Clever with Login Forms by JadeNB on Friday February 15, 2019 @01:48PM (#19173571)
> (This is totally unrelated but another thing I apply this question to is a page's/websites ability to support reading mode. You have straightforward pages that you can read wholly in something like Firefox's Reader View or Instapeper/Pocket. Then there are those pages that rely too much on some javascript library (sliders, read more, etc.) to display properly that gets broken when seen through reading mode.)

Sites that want to display readable pages don't have to work on compatibility with Reader View; they can just provide readable pages. I use Reader View mostly to work around sites' intentionally user-unfriendly design patterns (articles unnecessarily split across multiple pages), and only occasionally to work around presumably unintentionally bad design (Kill Sticky does most of that work for me). To the extent that that's true, sites are likely to be interested in being less, not more, compatible with Reader View.

Re:Don’t Get Clever with Login Forms by mnm1 on Friday February 15, 2019 @01:16PM (#19173254)
As a developer you should support a proper form that works with password managers. Period. Anything else is a failure on the developer's part to create a working login. It's also a massive security hole you've introduced by encouraging people not to use password managers. They will try to remember the password and we all know where that leads to. Sorry, if you think you can develop a login form that doesn't support password managers and call that a decent effort, you're badly mistaken. That's just shit engineering.
Re:Don’t Get Clever with Login Forms by hombre_fatal on Friday February 15, 2019 @02:28PM (#19173929)
Why don't you respond to one of the comments that point out sensible reasons why a website might do this instead of using this as an opportunity to suggest that people are just incompetent?
Re:Don’t Get Clever with Login Forms by DannyB2 on Friday February 15, 2019 @12:23PM (#19172748)
Not only, as someone else pointed out, does the 2nd step of the login (eg, password) vary depending on WHO is logging on, it is theoretically possible that there is no 2nd step in some cases.

Maybe you have a USB dongle, and after entering your name or email, you are authenticated. Maybe the machine is trusted for any user who logs in, because it has a USB dongle. Or maybe only certain users, but more than one user is trusted associated with that USB dongle.

Or maybe if YOUR phone is detectable as near by, then you have no 2nd login step.

There are lots of arguments why putting the user ID and password onto a single form is just plain wrong. This isn't the 20th century anymore.

Re:Don’t Get Clever with Login Forms by tylerrobinson on Friday February 15, 2019 @11:45AM (#19172335)
I can't argue with the lack of password manager support. But I know where Product is coming from on these approaches. Asking for an email address on its own screen allows the form to check whether you have an existing account or need to set up a new one. You avoid a link that says "Don't have an account, Register Here". Is it worth it? I suppose it's subjective. Maybe the designer thinks that is a good reduction in friction.

Probably more compelling is that the form can pick up your email domain and redirect to Single Sign On if the domain is known.

Re:Don’t Get Clever with Login Forms by NLips on Friday February 15, 2019 @11:52AM (#19172413)
That's a security failing - you shouldn't let the website user know that a given account exists.

The right way to do this is have a log in form (one or two pages - doesn't matter) and a separate create account form. You can try to log into a non-existant account, which will fail in exactly the same way as a wrong password. You can try to create an already existing account, which will result in exactly the same behaviour to the webpage user as creating a non-existing account - a page saying "An email has been sent to the email address <foo>".

Re:Don’t Get Clever with Login Forms by nickles on Friday February 15, 2019 @12:31PM (#19172821)
> That's a security failing - you shouldn't let the website user know that a given account exists.

It's not an issue if you let users pick their own username. There's simply no way to get around this (apart from assigning usernames). In other cases, usernames being publicly available is a desired feature.

[0] https://imgur.com/a/qCupYyQ

Re:Don’t Get Clever with Login Forms by astura on Friday February 15, 2019 @05:25PM (#19175290)
It really depends on what the site is and what the user ID is. For example, I know the account "NLips" exists on hacker news, that's not a "security failing," nor can that information be hidden, however, it would be a security issue if I could put my boss's email into a porn site to see if he has an account.
Re:Don’t Get Clever with Login Forms by etxm on Friday February 15, 2019 @11:51AM (#19172396)
Is there no longer a panic over letting an attacker know that an account does exist?

I remember that being a thing for a while, but haven’t built user facing UI systems in a few years.

Re:Don’t Get Clever with Login Forms by nickles on Friday February 15, 2019 @12:33PM (#19172842)
> Is there no longer a panic over letting an attacker know that an account does exist?

There's simply no way to get around this if users can pick their own usernames (other than assigning them in an unpredictable manner). In other cases, usernames being publicly available is a feature, not a bug.

[0] https://imgur.com/a/qCupYyQ

Re:Don’t Get Clever with Login Forms by etxm on Friday February 15, 2019 @01:29PM (#19173398)
It’s difficult for an email system, but for other systems this can be solved by having a “display name” and a login (which may be your email).
Re:Don’t Get Clever with Login Forms by nickles on Friday February 15, 2019 @01:44PM (#19173522)
> this can be solved by having a “display name” and a login

You have three choices with a user specified login name. You can:

(1) notify a user why account creation has failed (due to a duplicated login name)

(2) fail silently and have frustrated users leave your account creation page

(3) allow duplicated login credentials

In my mind, (2) and (3) are worse than (1). Since the question regards security practices, obfuscating the login name with a display name does not mitigate this vulnerability.

If you rate limit the account creation endpoint, you will minimize the ability of an attacker to brute force all usernames of your service, but you cannot prevent an attacker from determining if a specific account exists (apart from assigning login credentials).

Re:Don’t Get Clever with Login Forms by etxm on Friday February 15, 2019 @02:12PM (#19173778)
Oh good point. I forgot about the whole sign up validation portion :)
Re:Don’t Get Clever with Login Forms by tln on Friday February 15, 2019 @12:27PM (#19172792)
It's a tradeoff between security and usability

https://security.stackexchange.com/questions/158075/is-it-un...

Re:Don’t Get Clever with Login Forms by xemdetia on Sunday February 17, 2019 @12:17AM (#19182790)
For things that are pentested/audited to some level of compliance standard this is still very much known. It's under the heading of the error message gives too much away.
Re:Don’t Get Clever with Login Forms by reificator on Friday February 15, 2019 @12:04PM (#19172550)
I haven't heard an update on that front for many years, so I'd assume it should still be a concern.

Many of the same sites that do this will also have a recovery form that refuses to leak information.

Re:Don’t Get Clever with Login Forms by etxm on Friday February 15, 2019 @12:10PM (#19172614)
That’s important. I find it funny[1] when you get the “email does not exist” error on a password reset page.

[1] by “funny” I mean not funny

Re:Don’t Get Clever with Login Forms by reaperducer on Friday February 15, 2019 @12:52PM (#19173019)
I wonder if that's a way for spammers to harvest known good e-mail addresses.
Re:Don’t Get Clever with Login Forms by scarejunba on Friday February 15, 2019 @01:32PM (#19173423)
Those are available for free on the internet dude. This is a non-concern. The bad guys don't listen to GDPR. There are entire email lists available.
Re:Don’t Get Clever with Login Forms by dbdjfjrjvebd on Saturday February 16, 2019 @12:57AM (#19177320)
And how are such lists constructed?
Re:Don’t Get Clever with Login Forms by scarejunba on Saturday February 16, 2019 @02:24AM (#19177541)
You just breach someone with a lot of them.
Re:Don’t Get Clever with Login Forms by dbdjfjrjvebd on Saturday February 16, 2019 @10:28AM (#19178972)
Would it not be easier/more legal to scrape them using leaky login forms?
Re:Don’t Get Clever with Login Forms by scarejunba on Saturday February 16, 2019 @05:02PM (#19181215)
I believe the breached lists rapidly become public. You can find them on the internet.
Re:Don’t Get Clever with Login Forms by nevir on Friday February 15, 2019 @12:04PM (#19172555)
It's still a concern, but often forgotten.
Re:Don’t Get Clever with Login Forms by lowercased on Friday February 15, 2019 @11:55AM (#19172445)
> Maybe the designer thinks that is a good reduction in friction.

Maybe the designer should use the site as many of their users use it, and realize the inconvenience it causes people (broken password managers, bad browser experience in general, etc).

Re:Don’t Get Clever with Login Forms by dontbenebby on Friday February 15, 2019 @12:52PM (#19173020)
>Password managers can't deal with this, unsurprisingly

Maybe I'm overly paranoid but I choose to manually copy my passwords out of my manager into the login form.

Then again I also use a PW manager that doesn't support cloud storage. (Though you could always throw your DB into Dropbox if you desired)

Re:Don’t Get Clever with Login Forms by tylerl on Saturday February 16, 2019 @01:30AM (#19177393)
> Maybe I'm overly paranoid but I choose to manually copy my passwords out of my manager into the login form.

Holy crap, don't do that. You're eliminating the primary benefit of using a password manager.

Browser integrated password managers can't be phished; they only auto-fill on the correct site, they're not fooled by convincing URLs, and the better ones respect https requirements.

This isn't a matter of convenience. Putting human judgment in the critical path makes things worse, not better, even when it's your own judgment. Don't let paranoia and distrust of automation draw you into a pattern of bad decision making.

Re:Don’t Get Clever with Login Forms by 0xfeba on Friday February 15, 2019 @03:35PM (#19174465)
KeyPass? That's what I use and I probably am 50/50 between using autofill or Copy+Paste. And it autoclears after a few seconds.

And I store my DB in Dropbox, but not the key.

Re:Don’t Get Clever with Login Forms by jiveturkey on Friday February 15, 2019 @01:23PM (#19173339)
You're doing it wrong.

The password manager (implemented correctly) will only fill in the form on the legitimate site. This protects against phishing.

Re:Don’t Get Clever with Login Forms by dontbenebby on Friday February 15, 2019 @01:45PM (#19173533)
Yes, but I'm more worried about a flaw in the software revealing my DB than phishing, something I am an expert on.

I also have some measures in place to detect. (Ex: hard coded lists of URLs that open in a "financial" container)

I don't claim it's perfect, but it's my way of doing things, I like it, and I don't think it opens me up to an unreasonable amount of risk.

(Also, for lower-value passwords, like netflix, HN, etc I just use my browser's built in password manager.)

Re:Don’t Get Clever with Login Forms by Cpoll on Friday February 15, 2019 @03:19PM (#19174337)
LastPass did this wrong, they had a bug in their url parser that let you trick it into selecting the wrong site data to form-fill with.

With the c+p workflow, you can completely cut out any attack vectors (because the website doesn't interact with your password manager in any way).

Re:Don’t Get Clever with Login Forms by jiveturkey on Saturday February 16, 2019 @01:59PM (#19180290)
you can't cut out phishing. IDN homoglyphs used to be an easy way to get burned. AFAIK this is now prevented at least by mainstream browsers (those for which a pw mgr plugin would exist anyway). 'rn' vs 'm' is still a multi-letter homoglyph that works and is very very difficult to identify.

I would prefer to trust the pw mgr to send password to only the recorded website, than for me to remember and pay attention no matter how tired or distracted I might be, to what that website is. 'rn' vs 'm' as noted, but also citibank.com vs cittibank.com vs citibankcorp.com, or worse for sites that may not have a .com, how am I supposed to remember it's for TLD .io vs TLD .phisher?

You can only cut out the attack vectors if you act perfectly. That's simply not dependable. All I personally need to reassure myself of this is to look at the number of bugs I write per day.

Re:Don’t Get Clever with Login Forms by jiveturkey on Wednesday February 20, 2019 @12:05PM (#19209544)
Timing is good on this one: https://arstechnica.com/information-technology/2019/02/behol...

I didn't investigate in detail but it appears that it is a fake iframe. Even X-Frame-Options et al to prevent 3rd party iframe doesn't solve it because the iframe is fake to begin with!

Very very hard for you to prevent copy/paste to a fake iframe SSO.

Re:Don’t Get Clever with Login Forms by jakelazaroff on Friday February 15, 2019 @12:59PM (#19173092)
What's the benefit of doing it that way?
Re:Don’t Get Clever with Login Forms by wccrawford on Friday February 15, 2019 @01:08PM (#19173170)
He gets to have the added insecurity if putting it on his clipboard for other programs to see on the way by.

/s

I actually can't imagine how it could be safer than having the password manager do it directly.

Re:Don’t Get Clever with Login Forms by pwg on Friday February 15, 2019 @01:47PM (#19173561)
> He gets to have the added insecurity if putting it on his clipboard for other programs to see on the way by.

If the local system is trustworthy, then none of the other programs are sniffing the clipboard looking to harvest passwords. And therefore there is no issue here.

If the local system is untrustworthy and contains malware sniffing the clipboard looking to harvest passwords, then using or not using a password manager is irrelevant [1]. Instead there is a bigger issue needing cleaning up, that of returning the local system to a trustworthy state.

[1] because an untrustworthy local system running clipboard sniffing malware is also likely running key logging malware, so even if the passwords were only ever memorized they will still get captured whenever they are typed in.

Re:Don’t Get Clever with Login Forms by pvg on Friday February 15, 2019 @04:06PM (#19174716)
A password can end up on the clipboard and get picked up by some utility, stored in a history, log or swap file or otherwise get misplaced - this doesn't require a compromised system full of malicious software, just bugs and/or unexpected or unintended behaviour or interactions, which are fairly common.
Re:Don’t Get Clever with Login Forms by saagarjha on Friday February 15, 2019 @02:21PM (#19173857)
This is not necessarily true. iOS, for example, does not allow for key logging but will happily allow Facebook to grab whatever you have on your clipboard, which it does of course because it's Facebook.
Re:Don’t Get Clever with Login Forms by pmjordan on Friday February 15, 2019 @03:18PM (#19174335)
I think I've spotted iOS clearing the clipboard if you task-switch after pasting the contents into a password input field. Which is presumably precisely to defend against this kind of data theft.
Re:Don’t Get Clever with Login Forms by saagarjha on Saturday February 16, 2019 @05:43AM (#19178077)
Huh, this must be new. I'll look into it; it's nice to hear that this security loophole is at least partially fixed!
Re:Don’t Get Clever with Login Forms by efreak on Saturday February 16, 2019 @12:51AM (#19177297)
Unless you're running a clipboard history program. I know at least two people that user such software; it basically saves the past 10 or so clipboard contents for later use.
Re:Don’t Get Clever with Login Forms by johndough on Friday February 15, 2019 @02:20PM (#19173846)
One possible way to exploit this is:

  - user copy-and-pastes password
  - user forgets to clear clipboard
  - user opens a link in a new tab with middle-click
  - link was actually a text form
  - middle-click pasted the password into the textfield
(only on platforms with middle-click configured as paste)

I noticed this when I had an image url in my clipboard and tried on open a link on imgur.com in a new tab. Instead of opening the link, the image url in my clipboard was uploaded.

Re:Don’t Get Clever with Login Forms by Operyl on Friday February 15, 2019 @03:11PM (#19174259)
A lot of password managers clear or restore the clipboard after a short period.
Re:Don’t Get Clever with Login Forms by dontbenebby on Friday February 15, 2019 @01:24PM (#19173347)
My manager autoclears the paste buffer.
Re:Don’t Get Clever with Login Forms by dontbenebby on Friday February 15, 2019 @01:06PM (#19173148)
I've seen some CVEs where malicious websites induce your browser to autofill (basically steal passwords).

So the intention is that I stop some script from siphoning my passwords.

This admittedly opens me up to phishing, but to mitigate I also have containers set up for various facets of my life.

(So it's a big red flag if what's supposedly my bank doesn't open in the "bank" container".)

Edit: I also value storing the database locally versus "in the cloud"

Re:Don’t Get Clever with Login Forms by wccrawford on Friday February 15, 2019 @01:08PM (#19173179)
That's why you should turn off auto-fill.
Re:Don’t Get Clever with Login Forms by saagarjha on Friday February 15, 2019 @02:21PM (#19173863)
This is why most password managers no longer autofill without user interaction.
Re:Don’t Get Clever with Login Forms by FabHK on Friday February 15, 2019 @01:06PM (#19173151)
Your web browser doesn't have any connection to your password manager. Who knows what your web browser is doing, why would you give it any access to your credentials?
Re:Don’t Get Clever with Login Forms by icebraining on Friday February 15, 2019 @02:36PM (#19174005)
How can you not give your browser your credentials? Do you login on a site using curl and manually copy session cookies?
Re:Don’t Get Clever with Login Forms by FabHK on Friday February 15, 2019 @07:39PM (#19176155)
You can manually copy over one credential at a time - no need to connect the browser to your entire bucket of credentials.
Re:Don’t Get Clever with Login Forms by donarb on Friday February 15, 2019 @02:07PM (#19173726)
The Safari browser can be linked to the Keychain Manager, both products coming from Apple.
Re:Don’t Get Clever with Login Forms by CM30 on Friday February 15, 2019 @01:09PM (#19173190)
Makes you use the password manager credentials to access your login credentials for other services. Works to stop nosy coworkers, siblings, spouses, etc.
Re:Don’t Get Clever with Login Forms by alarge on Friday February 15, 2019 @01:15PM (#19173241)
Not sure I understand your point here. You need to use your password manager credentials to autofill also (at least for 1Password). The only reason to copy/paste is if you don't think your password manager will put the right info into the right boxes.
Re:Don’t Get Clever with Login Forms by weej on Friday February 15, 2019 @03:34PM (#19174458)
Really? I don't have that problem with LastPass. It simply inspects the domain in the URL and DOM element name for the given web page. If it's a password field in the form (even if on separate page that's stand alone) maps back to the domain the creds are stored in LastPass it will give me the option to inject the password into the form field.
Re:Don’t Get Clever with Login Forms by astura on Friday February 15, 2019 @05:19PM (#19175254)
The only time I've seen this an issue with LastPass is when the username field is on a different domain than the password field. In this case I'll save the username and password as different password entries. Otherwise it's a non-issue.

Great Lakes Credit Union is an example of a site that does this.

Re:Don’t Get Clever with Login Forms by Semaphor on Friday February 15, 2019 @02:08PM (#19173739)
While it can't handle the email part, at least mine nowadays handles the password field. I use KeePassXC-Browser (connecting to KeePass despite the name) and it recognizes the password field even if I entered the email in an (annoying) extra step.
Re:Don’t Get Clever with Login Forms by varjolintu on Saturday February 16, 2019 @01:56AM (#19177466)
Actually it can handle the email part also. You just have to add the site URL to Site Preferences in the extension's settings and enable Username-only detection. It's a necessary extra step so the credentials wouldn't be filled to search fields or to other single input fields. It's quite hard to detect if an input field is actually a username field.
Re:Don’t Get Clever with Login Forms by Semaphor on Saturday February 16, 2019 @09:37AM (#19178705)
oh, that's good to know. Thank you, this will make Microsoft logins much more bearable.
Re:Don’t Get Clever with Login Forms by sbr464 on Saturday February 16, 2019 @12:29AM (#19177245)
One possible solution is to allow a url or query param to load a full auth form for each supported provider, in addition to the default stepped screen. That would allow a user to bookmark the form relevant to their auth method.
Re:Don’t Get Clever with Login Forms by Operyl on Friday February 15, 2019 @03:05PM (#19174226)
My password manager can deal with it:

Cmd + \, Enter, Cmd + \, Enter.

It is a little saddening, perhaps, but to say it’s breaking password managers entirely is a wrong.

Re:Don’t Get Clever with Login Forms by WrtCdEvrydy on Friday February 15, 2019 @11:41AM (#19172282)
Twilio does this and LastPass can work with it if you type your email address in the first screen, it will fill the password.
Re:Don’t Get Clever with Login Forms by andrewshadura on Friday February 15, 2019 @04:21PM (#19174831)
The Firefox’s built in password manager deals with it just fine. No idea how, and no idea why others can’t cope if it can.
Re:Don’t Get Clever with Login Forms by pbreit on Friday February 15, 2019 @02:57PM (#19174173)
I don't see why password managers can't deal with this. In fact don't most handle it OK?
Re:Don’t Get Clever with Login Forms by 0xfeba on Friday February 15, 2019 @03:32PM (#19174448)
Yeah I can set a delay or custom keypresses, or field IDs in KeyPass. This and OP just have to configure it properly.
Re:Don’t Get Clever with Login Forms by Benjammer on Friday February 15, 2019 @05:26PM (#19175298)
Enterprise authentication flows for multi-tenant applications with internal users, tenant users, super users, and de-coupling the identity resolution from the authentication resolution and authorization resolution.
Re:Don’t Get Clever with Login Forms by TomK32 on Friday February 15, 2019 @02:23PM (#19173880)
Browserpass doesn't have any problem with those.
Re:Don’t Get Clever with Login Forms by bobbybroadcast on Friday February 15, 2019 @03:19PM (#19174339)
It doesn't? Am I confused about something? When I do it I always have to enter the login, then click again and enter the password.
Re:Don’t Get Clever with Login Forms by hnu0847 on Friday February 15, 2019 @04:27PM (#19174885)
KeePass allows you to program a delay between entering the username and password, but I agree having two separate screens is annoying.
Re:Don’t Get Clever with Login Forms by peterhunt on Friday February 15, 2019 @03:39PM (#19174507)
For good reason. It gives you more flexibility for when to throw login challenges to mitigate credential stuffing attacks.
Re:Don’t Get Clever with Login Forms by SomeHacker44 on Saturday February 16, 2019 @09:30AM (#19178682)
I never have problems with 1Password and login screens split into two or even 3 screens (for MFA). Just sayin'.
Re:Don’t Get Clever with Login Forms by blktiger on Friday February 15, 2019 @01:21PM (#19173321)
Microsoft does this and the built-in password manager on Safari works with it just fine.
Re:Don’t Get Clever with Login Forms by davchana on Friday February 15, 2019 @06:10PM (#19175616)
Google chrome perfectly handles my bank HDFC login, split on two pages.
Re:Don’t Get Clever with Login Forms by manigandham on Friday February 15, 2019 @04:07PM (#19174726)
Chromes built in password manager handles this fine.
Re:Don’t Get Clever with Login Forms by scarface74 on Friday February 15, 2019 @04:08PM (#19174734)
The built in iOS password manager handles it.
Re:Don’t Get Clever with Login Forms by jiveturkey on Friday February 15, 2019 @01:19PM (#19173292)
1password deals with this just fine.
Re:Don’t Get Clever with Login Forms by optimuspaul on Friday February 15, 2019 @12:45PM (#19172960)
my password manager has no problems with this
Re:Don’t Get Clever with Login Forms by avip on Friday February 15, 2019 @02:11PM (#19173769)
Security.
Re:Don’t Get Clever with Login Forms by gammateam on Friday February 15, 2019 @02:26PM (#19173909)
This was my first thought too

I saw it on Expensify yesterday

Doesn't this break a best practice? If you input an email address it tells you whethere there IS or ISN'T a user, and if there IS it asks you for their password.

I thought the best practice was to make it unclear whether an email or username is in the system, which would make this a huge regression

Re:Don’t Get Clever with Login Forms by erichurkman on Friday February 15, 2019 @03:03PM (#19174213)
> I thought the best practice was to make it unclear whether an email or username is in the system

It's useless obfuscation. 99% of systems that tell you "if you entered a valid username, we'll email you a password reset link" also don't allow duplicate accounts by email. Try to register a duplicate on their sign up page and they will tell you "this email address is already in use."

Useless "security" obfuscation and creates a terrible user experience trying to reset passwords.

Re:Don’t Get Clever with Login Forms by hombre_fatal on Friday February 15, 2019 @02:31PM (#19173954)
It doesn't change anything. If the email doesn't exist, you can always redirect to the password form.

If the user is confused about their credentials, they'll have to use the "I forgot" system in both cases.

Re:Don’t Get Clever with Login Forms by gammateam on Friday February 15, 2019 @02:51PM (#19174127)
Expensify shows an avatar for the user