[Из песочницы] Не баг, а фича Вконтакте
Вконтакте существует с 2006 года. В те времена, как и на всех других сайтах, авторизация происходила с помощью ввода почты и пароля. Но почту и пароль могут украсть злоумышленники, способов очень много, в основном используют фишинговые сайты.
Ввел пароль на левом сайте, а через час «ты» уже будешь просить друзей вконтакте закинуть 1000 руб на модем.
Улучшение безопасности
Когда взломов стало слишком много, а это случилось 11 февраля 2011, Вконтакте улучшили безопасность в социальной сети: каждый раз, когда под аккаунтом пользователя пытаются неожиданно зайти из новой страны, попытка входа блокируется сообщением, в котором предлагается ввести цифры номера телефона, на который зарегистрирована страница.
Конечно, это не предотвратило взломы, но злоумышленникам стало сложнее, ведь перед каждым входом, надо было смотреть из какой страны жертва и настраивать свой прокси или VPN на конкретную страну.
Авторизация: «email и пароль» или «номер и пароль»
Время шло, и Вконтакте столкнулся с огромным количеством ботов и фейков. Решение проблемы оказалось простым, достать новый номер сложнее, чем новую почту, поэтому с 21 ноября 2012 всех пользователей Вконтакте принудительно заставили привязать номер мобильного телефона.
И раз у каждого пользователя привязан мобильный телефон, то давайте откроем вход с помощью мобильного телефона? Вконтакте делает все для удобства пользователей.
Проблема
Ничего странного не замечаете? Если пользователь на фишинговом сайте ввел свой телефон и пароль, а не почту и пароль, то проверка ввода цифр телефона становится бессмысленной.
Текущее положение дел
На сайтах, где продают аккаунты, цены на «почта: пароль» и «номер: пароль» сильно различаются. Это говорит нам о том, что злоумышленники предпочитают «номер: пароль», так как не любят возиться с VPN и прокси.
Решение проблемы
Как видим, проверка цифр телефона сейчас является неэффективной.
В связи с этим стоит изменить проверку пользователя, который входит с ip другой страны.
Например так:
- Если с ip другой страны вводят почту и пароль, то спрашивать цифры телефона.
Если вводят номер телефона и пароль, то спрашивать часть почты. - Спрашивать имя или фамилию, а не цифры телефона
P.S
Используйте двухфакторную аутентификацию, она позволяет полностью исключить взлом аккаунта с помощью фишинга.
Если вдруг вы решите ввести свои данные на фишинговом сайте, то вводите почту, а не номер телефона.