Отображение номера вызывающего абонента (Caller ID) не решило все проблемы индустрии со спамом. Автоматический обзвонщик может совершать вызовы с любым номером в поле «from» (практика, известная как подмена Caller ID). STIR/SHAKEN — это ответ индустрии на этот пробел.
Что такое подмена Caller ID?
Подмена Caller ID — это практика намеренного искажения информации об источнике вызова, передаваемой вместе с телефонным звонком, из-за чего отображаемый номер не принадлежит реальному абоненту.
Любой, кто инициирует вызов по протоколу SIP, обычно может установить в этом поле любой номер по своему желанию. Именно это позволяет роботу-обзвонщику отображаться на телефоне как банк, государственное учреждение или даже сосед с аналогичным кодом региона и префиксом (иногда это называют «подменой номера соседа»).
Сама по себе подмена не всегда является вредоносной. Существуют некоторые легитимные сценарии использования, например, когда компания отображает центральную линию поддержки вместо номера конкретного сотрудника. Но это также механизм, стоящий за большинством мошеннических звонков и автообзвонов, поэтому регуляторы и операторы создали STIR/SHAKEN специально для борьбы с этим: не путем технического запрета подмены, а путем предоставления принимающему оператору возможности узнать, был ли номер проверен сетью, инициировавшей вызов.
Что такое STIR/SHAKEN?
STIR/SHAKEN — это фреймворк аутентификации вызовов, который позволяет принимающему оператору проверить, действительно ли идентификатор вызывающего абонента (Caller ID) во входящем вызове был подтвержден оператором, который его инициировал.
STIR (Secure Telephone Identity Revisited) и SHAKEN (Signature-based Handling of Asserted information using toKENs) работают вместе, чтобы прикрепить криптографически подписанный токен, называемый PASSporT, к вызову при его выходе из сети исходного оператора.
Токен передается в заголовках SIP Identity. Принимающий оператор проверяет его и решает, насколько доверять отображаемому Caller ID, что в свою очередь влияет на то, пройдет ли вызов без помех, прибудет с меткой «Возможно спам» или «Возможно мошенничество», либо будет заблокирован окончательно.
Уровни аттестации STIR/SHAKEN
Токен содержит один из трех уровней аттестации:
Уровень A (полная аттестация). Исходный оператор аутентифицировал абонента и подтвердил, что абонент уполномочен использовать этот номер.
Уровень B (частичная аттестация). Оператор аутентифицировал абонента, но не смог подтвердить, что номер принадлежит ему.
Уровень C (шлюзовая аттестация). Вызов поступил в сеть оператора из внешнего источника вообще без проверенной идентичности.
Аттестация существует только там, где оператор инициирует вызов. Платформа, которая перепродает чужой SIP-транк, просит этого провайдера транка поручиться за ее трафик. Платформа, владеющая путем инициализации, может подписывать вызовы самостоятельно.
Соответствие требованиям SignalWire и стандартная аттестация STIR/SHAKEN
SignalWire полностью совместим со стандартом STIR/SHAKEN. По умолчанию каждый исходящий вызов, совершенный с телефонного номера, приобретенного на платформе SignalWire, получает уровень аттестации C.
Аттестация уровней A и B доступна, но требует процесса проверки. Клиенту, которому требуется более высокий уровень аттестации, например, колл-центру, желающему, чтобы его исходящие номера аутентифицировались как полностью проверенные, необходимо открыть тикет в службу поддержки для запуска этого процесса.
Как получить полную аттестацию STIR/SHAKEN
Запросите проверку, чтобы уйти от стандартного уровня C. Это процесс, управляемый службой поддержки, а не переключатель в панели управления самообслуживания, поскольку он зависит от знания провайдером клиента, сценария использования и конкретных задействованных номеров.
Подтвердите право собственности на Caller ID
Прежде чем телефонный номер можно будет использовать в качестве исходящего Caller ID на SIP-эндпоинте, клиент подтверждает право собственности на него с помощью процесса «позвонить мне и ввести код» (или аналогичного ресурса REST API verified_callers). Это отдельный элемент управления от уровня аттестации, но он решает ту же фундаментальную проблему: гарантирует, что номер, отображаемый при вызове, действительно контролируется стороной, совершающей его.
Ни один из элементов управления не заменяет другой. Аттестация — это то, что сеть сообщает принимающему оператору о доверии к Caller ID. Подтвержденные Caller ID — это то, что SignalWire требует от собственных клиентов, прежде чем разрешить им заявлять номер как свой собственный.
Также стоит помнить, что аттестация — это сигнал на сетевом уровне, а не доказательство подлинности внутри приложения. Не считайте Caller ID достаточным для чего-либо конфиденциального. Обработчик функций, который авторизует смену учетной записи только на основе входящего Caller ID, доверяет значению, которое находится выше любой проверки аттестации. Рекомендуемый шаблон — использовать второй фактор, например проверочный код, перед совершением любых важных действий.
Реализация с открытым исходным кодом: libstirshaken
SignalWire не просто внедрила STIR/SHAKEN для выполнения требований FCC. Компания спонсировала libstirshaken, реализацию фреймворка с открытым исходным кодом, созданную в рамках проекта FreeSWITCH, одну из самых ранних реализаций STIR/SHAKEN с открытым исходным кодом.
Цель состояла в том, чтобы предоставить верификацию вызовов непосредственно в руки разработчиков, а не оставлять ее запертой внутри проприетарных стеков операторов связи, что сделало генерацию сертификатов безопасности, от которых зависит STIR/SHAKEN, более дешевой и простой.
Начните совершать исходящие вызовы уже сегодня
Создайте бесплатную учетную запись SignalWire, купите свой первый телефонный номер и присоединяйтесь к сообществу и команде на SignalWire Community.










