Синяя чертёжная схема сигнальной сети SS7 на плотной бумаге с узлами HLR, VLR и SMSC, соединёнными стрелками протокола MAP; запрос SendRoutingInfoForSM выделен красными чернилами как точка перехват...


В 2017 году клиенты немецких банков потеряли миллионы евро за несколько часов. Банковские серверы никто не ломал. Атакующие сначала собрали логины и пароли через malware на ПК жертв, а затем перехватили SMS с одноразовыми кодами через SS7 - перенаправили сообщения на подконтрольные устройства и вывели деньги со счетов (Süddeutsche Zeitung, подтверждение O2-Telefónica, 2017). В 2024 году AT&T раскрыла утечку записей звонков и SMS-метаданных ~110 миллионов абонентов - правда, тут причина была в компрометации облачной платформы Snowflake (украденные учётные данные, отсутствие MFA), а не в SS7. Но сам факт массовой утечки телеком-метаданных показывает, насколько эта информация ценна для атакующих. SS7 атаки и перехват SMS - не теоретический риск из презентации на конференции, а рабочий вектор, который эксплуатируют прямо сейчас.

Бизнес-логика атаки: зачем атакуют сигнальные сети​

Атака на SS7 - не самоцель, а звено в цепочке. Прежде чем лезть в протоколы, разберёмся с мотивацией:
  • Финансовое мошенничество - перехват одноразовых паролей SMS для подтверждения банковских транзакций. У злоумышленника уже есть логин и пароль жертвы (фишинг, infostealers, утечки баз) - ему нужен только второй фактор. По данным CrowdStrike Global Threat Report 2025, 75% вторжений в 2024 году использовали действительные учётные данные.
  • Таргетированная слежка - определение местоположения абонента SS7 в реальном времени. Журналисты, активисты, конкуренты, VIP-персоны.
  • Угон аккаунтов - перехват SMS для сброса пароля в мессенджерах, соцсетях, почте. MSISDN жертвы - единственное, что нужно знать для старта.
  • Телеком-фрод - маршрутизация вызовов через дорогие международные пути (premium rate fraud), обход биллинговых систем.
По данным IBM X-Force Threat Intelligence Index 2025, рост атак с использованием действительных учётных данных составил 71% год к году. SS7-перехват SMS - один из способов добыть недостающий второй фактор к уже украденным credentials.

Архитектура SS7: уязвимости сигнальных протоколов мобильных сетей​

SS7 (Signaling System No. 7) - набор протоколов телефонной сигнализации, стандартизированный в 1970-х. Он управляет установкой вызовов, маршрутизацией SMS, роумингом и биллингом в сетях GSM, UMTS и даже LTE (через interworking-функции). Ключевые компоненты сигнальной сети:
  • SSP (Service Switching Point) - коммутаторы, инициирующие и завершающие вызовы. Сюда относятся MSC (Mobile Switching Center).
  • STP (Signal Transfer Point) - маршрутизаторы сигнальных сообщений между узлами SS7.
  • SCP (Service Control Point) - базы данных для обработки сервисных запросов.
  • HLR (Home Location Register) - мастер-база абонентов: IMSI, профиль услуг, адрес текущего MSC/VLR.
  • VLR (Visitor Location Register) - временная база для роуминговых абонентов.
Корневая проблема - модель доверия. SS7 проектировался в эпоху, когда доступ к сигнальной сети имели только национальные операторы - крупные, государственные, проверенные. Протокол считает каждый узел легитимным по умолчанию. Нет аутентификации между узлами, нет авторизации запросов, данные летят в открытом виде. Как указывает Vehere: «SS7 assumes that any entity with access to the signaling network is legitimate and authorized» - любой узел с доступом автоматически доверенный.

Сегодня SS7-доступ можно получить через MVNO в странах со слабым регулированием, через скомпрометированных операторов, через роуминговые хабы. По данным TerraZone: «SS7 access available through MVNOs, resellers, and roaming hubs». Рынок доступа существует, и стоимость входа продолжает падать.

Ключевые MAP-операции как вектор SS7 атак​

Mobile Application Part (MAP) - прикладной протокол в стеке SS7, отвечающий за управление абонентскими данными. Именно MAP-операции эксплуатируются в атаках на телеком инфраструктуру:

MAP-операцияOpcode (3GPP TS 29.002)Легитимное назначениеИспользование в атаке
SendRoutingInfoForSM (SRI4SM)45Запрос маршрута для доставки SMSПолучение IMSI и адреса MSC/VLR жертвы
UpdateLocation2Обновление местоположения при смене MSCРегистрация жертвы на поддельном MSC
InsertSubscriberData (ISD)7Обновление профиля абонента в VLRПодмена адреса биллинговой системы
ProvideSubscriberInfo (PSI)70Запрос текущей информации об абонентеОпределение Cell ID и координат
AnyTimeInterrogation (ATI)71Интерактивный запрос местоположенияОтслеживание абонента в реальном времени
CancelLocation3Удаление записи из VLR при handoverDoS: отключение абонента от сети

Каждая из этих операций - штатная функция сети. Проблема в том, что SS7 не проверяет, имеет ли запрашивающий узел право на конкретную операцию. Любой узел с корректным Global Title (GT) может отправить любой запрос. Вот и всё.

Цепочка SS7 атаки: от покупки доступа до перехвата SMS​

📚 Часть контента скрыта. Этот материал доступен участникам сообщества с рангом One Level или выше
Получить доступ просто — достаточно зарегистрироваться и проявить активность на форуме

Перехват SMS через SS7: пошаговый разбор​

Шаг 1: Разведка. Атакующий шлёт SendRoutingInfoForSM (SRI4SM) с MSISDN жертвы (номер телефона) на HLR домашнего оператора. Запрос выглядит легитимно - именно так SMSC оператора-отправителя узнаёт, куда доставить SMS. HLR возвращает IMSI (уникальный идентификатор SIM-карты), адрес обслуживающего MSC и адрес VLR.

Шаг 2: Подмена маршрутизации. Получив IMSI и адрес MSC, атакующий шлёт UpdateLocation - сообщает HLR, что абонент зарегистрировался на новом MSC/VLR (контролируемом атакующим). HLR обновляет запись, и все входящие SMS начинают маршрутизироваться на поддельный узел. Параллельно может уйти InsertSubscriberData (ISD) в VLR жертвы для подмены адреса биллинговой системы - это открывает перехват и голосовых вызовов.

Шаг 3: Перехват. Банк или сервис отправляет SMS с OTP-кодом. Сообщение уходит на поддельный MSC атакующего. Жертва SMS не получает или получает с задержкой (если атакующий настроил проксирование обратно на реальный MSC - чтобы не спалиться). Атакующий вводит перехваченный код и получает доступ к аккаунту.

Определение местоположения абонента через SS7​

Для трекинга используются ProvideSubscriberInfo (PSI) и AnyTimeInterrogation (ATI). PSI возвращает Cell ID базовой станции, к которой подключен абонент. ATI даёт обновления в реальном времени. Точность - от нескольких сотен метров в городе до нескольких километров за городом.

В терминах MITRE ATT&CK это System Location Discovery (T1614, тактика Discovery). По данным CellCrypt, коммерческие surveillance-вендоры (CSV) продают системы трекинга на базе SS7 как готовый продукт - описано в отчёте «Bad Connection» о злоупотреблениях протоколами SS7 и Diameter.

Diameter протокол: атаки на 4G/5G сигнальные сети

Diameter разрабатывался как замена SS7 для сетей 4G/LTE и 5G - с улучшенной аутентификацией и контролем политик. На практике наследует те же фундаментальные проблемы.

CellCrypt прямо пишет: «security audits of major carriers worldwide have revealed widespread Diameter vulnerabilities, with many networks failing to implement even basic filtering and access controls».

ХарактеристикаSS7Diameter
Аутентификация между узламиОтсутствуетПредусмотрена, часто не внедрена
Шифрование сигнализацииНетTLS/IPSec возможен, редко используется
Фильтрация сообщенийSS7 firewallDiameter Edge Agent (DEA)
Interworking с legacyНативноЧерез IWF - критическая точка атаки
Основные атакиПерехват SMS, трекинг, DoSInformation disclosure, DoS, fraud

Критически опасен вектор downgrade-атаки с 4G на 2G: уязвимости Diameter комбинируются с SS7 для принудительного перевода 4G/5G-устройства на 2G-сеть, где шифрование слабое или отсутствует. CellCrypt: «Diameter vulnerabilities can be combined with SS7 attacks to force modern 4G/5G devices down to vulnerable 2G networks, where encryption is weak or absent entirely».

Interworking Function (IWF) - шлюз между SS7 и Diameter - самая опасная точка. Если IWF не защищён, SS7-атаки пролезают в Diameter-домен. Vehere: «if these gateways are improperly secured, SS7-based attacks can propagate into newer network domains». Рекомендация FCC (CSRIC-6) подтверждает: «The use cases found in SS7 may exist in Diameter as well, namely: location tracking, voice/SMS interception, subscriber denial of service».

Обход двухфакторной аутентификации SMS через SS7

Перехват SMS через SS7 превращает SMS-based 2FA из защиты в уязвимость. Механика обхода двухфакторной аутентификации SMS - три шага:
  1. Атакующий получает credentials жертвы - через фишинг, infostealers или утечки баз данных
  2. Инициирует вход в банк или сервис, система запрашивает SMS-код
  3. Через SS7 (SRI4SM + UpdateLocation) перехватывает SMS с OTP и вводит код
Это Multi-Factor Authentication Interception (T1111, Credential Access) по MITRE ATT&CK. Инцидент 2017 года в Германии - подтверждённый пример этой цепочки в банковской сфере. Аналогичные инциденты фиксировались в Великобритании и других странах (по данным отраслевых отчётов). Каждый сервис, использующий SMS как единственный второй фактор, уязвим к этому вектору - вне зависимости от сложности пароля или стойкости серверной инфраструктуры.

Детектирование SS7 атак и защита сигнальных сетей​

Требования к окружению​

  • Для анализа трафика: Linux (Debian/Ubuntu 20.04+) или Windows 10+ с Wireshark 4.x (декодеры SCCP/MAP/TCAP входят в стандартную поставку; для корректного декодирования MAP PCAP должен содержать полный стек MTP3/M3UA → SCCP → TCAP, иначе придётся указать протокол вручную через Decode As)
  • Входные данные: PCAP-файлы с сигнального интерфейса или зеркало STP/SCP
  • Для production-мониторинга: SS7/Diameter firewall (Positive Technologies SS7 FW, AdaptiveMobile SMS Shield или аналоги) с интеграцией в SIEM
  • Для тестирования: стенд на базе osmocom (osmo-msc, osmo-hlr) или коммерческие SS7-тестеры (P1 Security PTA, EXFO)

Wireshark-фильтры для сигнального трафика​

Базовый набор Wireshark display filters для обнаружения подозрительной SS7-активности в PCAP-дампах:
Код:
gsm_map.opcode == 45                   # SRI4SM - разведка
gsm_map.opcode == 2                    # UpdateLocation - подмена MSC
gsm_map.opcode == 7                    # InsertSubscriberData
gsm_map.opcode == 70                   # ProvideSubscriberInfo
gsm_map.opcode == 71                   # AnyTimeInterrogation
sccp.calling.ssn == 6 || sccp.calling.ssn == 7  # HLR/VLR source
Для Diameter-сигнализации на интерфейсе S6a:
Код:
diameter.cmd.code == 316 && diameter.flags.request == 1  # Update-Location-Request
diameter.cmd.code == 317 && diameter.flags.request == 1  # Cancel-Location-Request
diameter.applicationId == 16777251     # S6a (LTE subscriber mgmt)
Фильтры покрывают MAP-операции и Diameter-команды, которые чаще всего всплывают в атаках. Начинаем с фильтрации по opcode, дальше - смотрим Global Title источника и сверяем с легитимными роуминговыми партнёрами.

Критерии аномалий для SS7 firewall​

SS7 firewall анализирует сигнальные сообщения в реальном времени. Паттерны для детектирования:
  1. Частота SRI4SM с одного GT - более 50 запросов за 5 минут с одного Global Title на разные MSISDN = массовая разведка
  2. Географическая несогласованность - UpdateLocation с GT страны, в которой абонент не мог оказаться с момента последнего обновления (Россия → Нигерия за 10 минут - ну-ну)
  3. UpdateLocation без предшествующего SRI - легитимный роуминговый сценарий всегда начинается с SRI, «голый» UpdateLocation - признак атаки
  4. ATI/PSI от внешних GT - запросы местоположения от узлов за пределами доверенной сети
  5. ISD от незарегистрированного VLR - попытка модифицировать профиль абонента от узла, которого нет в списке роуминговых партнёров
По методологии GSMA FS.11 (SS7 security) и FS.19 (Diameter security) оператор должен поддерживать whitelist легитимных GT и Diameter-identities для каждого роумингового партнёра, блокировать запросы от неизвестных источников и логировать все аномалии.

Если маппить на NIST CSF v2.0: DE.AE-01 (установление baseline сигнального трафика), RS.AN-01 (расследование алертов от SS7 firewall) и PR.AA-01 (управление идентификацией собственных узлов сигнальной сети - STP/DEA).

Чеклист защиты от SS7 атак для операторов​

Готовый чеклист - можно отдавать команде эксплуатации сигнальной сети как есть:
  1. Внедрить SS7 firewall с фильтрацией по категориям MAP-операций - минимум: блокировка SRI4SM, UpdateLocation, ATI от нелегитимных GT
  2. Настроить whitelist GT для каждого роумингового партнёра - разрешать только операции, необходимые по роуминговому соглашению
  3. Включить Home Routing для SMS - все входящие SMS проходят через SMSC домашней сети, минуя прямую маршрутизацию через MSC
  4. Внедрить Diameter Edge Agent (DEA) на границе Diameter-сети с валидацией AVP и фильтрацией по Application-ID
  5. Защитить Interworking Functions (IWF) - SS7-Diameter шлюзы должны применять те же правила фильтрации, что и SS7 firewall
  6. Настроить мониторинг аномалий - интеграция SS7 firewall с SIEM, алерты на паттерны из раздела «Критерии аномалий»
  7. Провести аудит по GSMA FS.11 и FS.19 - регулярная оценка защищённости сигнальных интерфейсов, не реже раза в год
  8. Рекомендовать сервис-провайдерам альтернативу SMS-based 2FA - TOTP, FIDO2, push-аутентификация с привязкой к устройству
  9. Ограничить доступ к SS7/Diameter интерфейсам - физическая и логическая сегментация, контроль доступа к STP/DEA
  10. Проводить регулярный пентест сигнальной сети - по методологии GSMA, с использованием SigPloit на тестовом стенде или коммерческих тестеров (P1 Security PTA, EXFO)
Восемь лет работы с сигнальными сетями операторов разных масштабов - от региональных MVNO до федеральных - привели к неудобному выводу: SS7 firewall решает проблему только частично. Firewall фильтрует известные паттерны атак, но не устраняет корневую причину - протокол, где доверие зашито на уровне архитектуры. Видел операторов с «внедрённым» firewall, где правила стоят в permissive mode, потому что боятся сломать роуминг. В результате firewall стоит для галочки, а SRI4SM от произвольного GT проходит к HLR без проблем.

Diameter не спасает. По документам у него есть TLS и взаимная аутентификация. На практике многие операторы не включают их на Diameter-интерфейсах - «партнёр не поддерживает» или «увеличивает latency на 2 мс». IWF между SS7 и Diameter - открытая дверь: если SS7-сторона пропускает вредоносное сообщение, оно транслируется в Diameter-домен без повторной валидации.

Единственное честное решение - убрать SMS из цепочки аутентификации. Не «рекомендовать переход на TOTP», а запретить SMS-based 2FA для всего, что имеет финансовый или операционный импакт: банки, криптобиржи, корпоративные VPN. FIDO2-ключи, TOTP-приложения, push-аутентификация с привязкой к устройству - альтернативы давно работают. Ждать, пока все операторы мира правильно настроят SS7 firewall и корректно внедрят Diameter-security - стратегия, которая уже обошлась индустрии в сотни миллионов потерь от fraud. Через два-три года смартфоны с поддержкой только 4G/5G станут массовыми и 2G/3G-сегмент начнёт отключаться, но SS7 interworking будет жить ещё долго - и атаки через него тоже.

Проверьте прямо сейчас: какие из ваших сервисов всё ещё используют SMS как единственный второй фактор? Если в списке есть хоть один банк или корпоративный VPN - вы знаете, что делать.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

Похожие темы

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🧭 Навигатор · ИБ 2026
Не знаешь, какой трек твой?
5 направлений ИБ, реальные зарплаты и точка входа для каждого — в одном треде.
JuniorSenior+
100K → 600K+ ₽ /мес
Открыть навигатор →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab