Ответ на пост «Звонки от мошенников с подменой номера телефона»
Решил отдельным постом продублировать коммент. Вдруг кому пригодится.
Сперва вопрос за кадром: почему такое возможно?
Если коротко, то это подмена идентификатора звонящего (CallerID spoofing) через виртуальную АТС. Общие принципы хорошо описаны тут. Инструкции для конкретных АТС тоже расписаны.
На самом деле всё проще в реализации (вопрос безопасности не рассматриваем сейчас) и для "шутки" с подменой номера достаточно теперь пальца и немного денег. Вот пример функционала бота в Телеграме.
Тогда почему остается возможность подмены номера по SIP протоколу?
Потому что это технология "двойного назначения". Её можно использовать и во благо, и во зло. Например, когда вам звонят доставщики еды, вы видите единый номер компании, а не реальный номер курьера. Агрегаторы такси туда же. Банки, турфирмы и т.п. В общем, B2C-компании, которые решили в заботу о пользователе поиграть.
Кроме того, это legacy. Когда придумывали стандарты связи, то в первую очередь думали, чтобы всё заработало. Вопроса безопасности не стояло. В итоге её прикручивали на ходу, а не внедряли при проектировании. Эту логику легко проследить на примере Интернета: сперва сделали http, а потом придумали SSL-сертификаты со всем паровозом из удостоверяющих центров, чтобы получить более-менее безопасное httpS.
Ведь у ОПСОСОв все номера телефонов зафиксированы, нельзя выбрать номер, какой захотелось. Разве ее нельзя ограничить\заблокировать\ввести подтверждение по смс?
Действительно, ОПСОСы видят и знают, но не делают. Но не потому что они дураки, а потому что не весь трафик проходит через них. Здесь стек из виртуальных и реальных сетей связи, которые к тому же географически распределены по разным странам. Чтобы всех вывести на чистую воду, нужно, чтобы все между собой договорились о каких-то единых стандартах и об обмене информацией. Вряд ли это возможно. А если начать что-либо блочить со своей стороны, то неизвестно что у кого отвалится. Например, к международному роумингу придёт белый и пушистый зверёк.
Поэтому сейчас вижу, как реализуются 2 направления противодействия.
Первое. На локальном уровне организовать обмен информацией между организациями и её анализ. Этим с прошлого года типа озаботились банки. Коротко схема выглядит так:
1. Кто-то звонит пользователю из-под номера банка. ОПСОС это видит.
2. ОПСОС в режиме реального времени отправляет запрос к банку: "из-под такого-то твоего номера сейчас звонят на такой-то номер?"
3. Банк в режиме реального времени присылает ответ.
4. Если "Да", то всё ок, звонок пропускают. Если "Нет", звонок рвётся, а пользователь даже не в курсе, потому что вся проверка проходит ещё до того, как в линию пошли гудки.
Естественно, такой банкет требует денег. В данном случае платят банки. Потому что это им надо. Закона нет, который бы обязывал заботиться о пользователе.
Второе. Менять стандарты, чтоб было как по учебнику: security by design. Пробуют так сделать в США. FCC (Федеральная комиссия по связи) потребует от телефонных компаний, которые принимают звонки из-за пределов США, внедрить протоколы STIR (Secure Telephone Identity Revisited) и SHAKEN (Signature-based Handling of Asserted Information Using toKENs), которые работают с использованием цифровых сертификатов на основе криптографии с открытым ключом. Но это ещё больше денег, чем для первого пункта. Увенчается ли успехом - хз. Продолжаем наблюдение.
Есть и другие экзотические предложения по борьбе. Глушилки в тюрьмах, распознавание голоса. Когда-то описывал их в этой статье.
В итоге пока проблема лежит в основном на плечах самих пользователей. Кто-то пользуется WhoCalls и подобными приложениями. Кто-то ограничивает детям\родителям списки звонящих через белые листы. Кто-то просто бдит.