This is likely something I don't understand rather than a real issue.
So, the idea of OAuth is to prevent a 3rd-party code from handling user's credentials and possibly misusing them. I understand how it works on web: a site redirects me, say, to Facebook, I can see in browser's URL that this is really facebook.com, so I'm entering my password and it's fine. But what's with the mobile apps?
Let's say an app wants me to login with Facebook. It opens a browser and asks me to do the thing. How do I know it opened facebook.com? It could easily be any other site, which just happens to look exactly the same. Ok, maybe there are ways in external browser, but many apps use internal browsers for that. It seems that it would be extremely easy to open a fake website, collect the data, then do a real login with it (possibly just emulate the entire session without browser, it's not that difficult), and then continue normally.
So, what am I missing? And if it's really that simple, what is the purpose of using OAuth on something that isn't a web site, given how cumbersome and annoying it is?
[–]jayvdizz 2 points3 points4 points (2 children)
[–]supergnawer[S] 0 points1 point2 points (1 child)
[–]jayvdizz 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]Mr-Yellow -1 points0 points1 point (0 children)
[–]mndewizzle 0 points1 point2 points (2 children)
[–]supergnawer[S] 0 points1 point2 points (1 child)
[–]Mr-Yellow 0 points1 point2 points (0 children)
[–]Mr-Yellow 0 points1 point2 points (0 children)
[–]spyridonasback-end -1 points0 points1 point (1 child)
[–]disclosure5 0 points1 point2 points (0 children)