Как стать автором
Обновить

Сочетание методов верификации и аутентификации через почту и SMS: добавит ли безопасности и нельзя ли проще?

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров2.7K
Всего голосов 3: ↑3 и ↓0+3
Комментарии12

Комментарии 12

То есть делать на своём сайте авторизацию через логин-пароль незаконно?

У меня в голове от чтения ст.8 ч.10 п.4 случилось какое-то переполнение стека. Там на самом деле написано, что, типа, ты все-таки можешь делать авторизацию (уровень составителей опуса виден уже по тому, что они вместо "аутентификация" пишут "авторизация") как угодно, если это принадлежит гр. РФ или ЮЛ в РФ и удовлетворяет статье 16. В статье 16 вообще только общее бла-бла-бла, кроме одного единственного более-менее конкретного пункта - храните деньги в сберегательной кассе персональные данные на территории РФ. В общем, похоже, Google и проч. отпадает, но свой собственный сервер для аутентификации ты использовать можешь, если у тебя его БД в РФ находится (хотя, сами по себе отдельно логин с паролем ПД не являются, т.е. их можно хранить где угодно). Так я всё это понял.

Вот тоже возникает вопрос, если авторизация через своего телеграм-бота, телеграм по сути никаких данных не получает, просто отправляет ПИН и не может влиять на процессы, т.к. тело бота живет на сервере в РФ, это уже нарушение или еще нет?

Пользователю выдается номер телефона для звонка, который для него бесплатен. В течение определенного периода времени клиент звонит на указанный номер (звонок на данный номер осуществляется по кликабельной кнопке или через QR-код) и сразу же попадает в систему. 

У этого метода есть одна существенная проблема: а как человек вообще понимает, куда он звонит?
Условно, вы хотите войти в не очень известный интернет-магазин, интернет-магазин показал вам какой-то номер телефона, на который надо позвонить. А на самом деле перед этим сервер сходил на условный сервис электронной почты, где указал ваш номер, ему выдали номер для звонка, интернет-магазин его показал вам. Вы позвонили, звонок с вашего честного номера, теперь у этого мошеннического магазина есть полный доступ к вашей почте. И со стороны почты вопросов нет, ваш номер указан, ваш звонок пришел на нужный номер.

Человек должен иметь возможность понять, где он авторизуется. Тут же буквально реализуется страшилка - "позвонил по номеру - тебя взломали". Такие схемы авторизации опасно использовать.

Вы не звоните - вам звонят. Звонок принимать не надо - достаточно четыре последние цифры ввести в приложении/на сайте.
С безопасностью лучше, чем у СМС, но вот если у тебя дома связи не ловит (как у меня) - такие способы дополнительной аутентификации становятся головной болью.

Насколько я вижу, есть два пути:

Авторизация по входящему звонку (Call Password - маркетинговое название) - вам звонят, вы указываете сколько-то цифр позвонившего номера, чтобы показать, что вы получили звонок.

Авторизация по исходящему звонку (Call Password ID - маркетинговое название) - вам дают номер, вы на него звоните, показывая, что вам принадлежит номер, с которого вы звоните.

В первом случае вы не знаете, кто на самом деле звонит (это может быть как сервис, где вы пытаетесь авторизоваться, так и сервис, куда ваш номер телефона пробросили: авторизовывались в публичной WiFi-сети - отдали доступ к мессенджеру). Номер телефона не содержит информацию об отправителе.

Во втором случае вы не знаете, кому на самом деле звоните, номер телефона тоже не содержит эту информацию.

А чем эти способы в плане безопасности лучше, чем СМС?

Подумал второй раз и кажется, что по безопасности одно и то же. Во всяком случае СМС показал себя как небезопасный метод аутентификации (старый стандарт, не проектировался для этих целей, подвержен социальной инженерии как с точки зрения оператора связи, так и конечных пользователей, были проблемы с шифрованием). А насколько сложно узнать, кто тебе звонит, ничего не могу сказать - возможно это так же легко можно сделать.
Вообще есть ощущение, что эти приколы с операторами связи не являются безопасной аутентификацией, если они не были изначально спроектированы для этого.
Про аутентификацию по исходящему звонку слышу впервые, звучит как ужас)

По входящему звонку тоже хуже, чем по SMS.
Потому что в SMS написано - "это код для входа в Сбербанк, никому его не показывайте".

Если же Сбер перейдёт на авторизацию по звонку, а недобросовестный магазин закажет у Сбера звонок на телефон клиента и забёрет у клиента код, представившись, как будто звонок от магазина, клиент никак не узнает, откуда звонок - от банка или от магазина.

Я что-то не могу из закона понять - если у меня сайт размещен на сервере в Германии или Нидерландах и он, понятное дело, доступен в т.ч. из РФ является ли это "осуществлением деятельности в сети 'Интернет' на территории Российской Федерации"?

Тут похоже как в анекдоте: "мы продаём или покупаем"?
Если получаем от клиента деньги, то считается. А если предоставляем сервис идентификации - не считается.

распространенный метод двухфакторной аутентификации — отправка одноразового кода подтверждения

И для сброса пароля обычно предлагают тот же способ. Значит, аутентификация по SMS — не двухфакторная, а однофакторная, пароль в общем и не нужен.

И единственный фактор не под вашим контролем — система SMS ужасно архаичная, и эксплуатируется с перехватом сообщений разными способами, напр..

Email чуть лучше ... но он заменяет пароль от сайта на пароль от email. Или на SMS, тогда см. пункт 1.

  • Электронная почта. Она также может быть расположена на иностранном почтовом сервере, исходя из методики авторизации.

Просветите, плиз, какова эта методика? У меня домен .com на российском почтовом провайдере, сайт через Cloudflare идет. Куда будут смотреть?

Зарегистрируйтесь на Хабре, чтобы оставить комментарий