- 3
- 2
- 30 Авг 2020
Всем салют, дорогие друзья!
Как вы уже поняли, сегодня мы расскажем о атаках на протокол SS7.
Давайте, что бы большинство из вас поняли, о чем идет речь, сразу поясним:
Что такое SS7?
Протокол SS7, также известный как Сигнализационная система № 7, относится к сети передачи данных и к ряду технических протоколов или правил, которые регулируют обмен данными по ним. Он был разработан в 1970-х годах для отслеживания и подключения вызовов в разных сетях операторов связи, но теперь он обычно используется для расчета биллинга сотовой связи и отправки текстовых сообщений в дополнение к маршрутизации мобильных и стационарных вызовов между операторами и региональными коммутационными центрами.
Что даст взлом SS7?
Прослушку звонков и перехват SMS любого человека на планете, в любой точке мира. Все, что нам нужно знать - номер телефона
Впечатляет, не так ли?
Как получить доступ?
Обратим внимание, что инструкция не предназначена для новичков, как собственно и любой способ взлома SS7.
Требование к ОС:
Используемые инструменты:
Этот инструмент в формате Java - .jar
Последние выпуски JDK 7u6 включают JavaFX SDK (версия 2.2 или более поздняя). Вам необходимо установить JavaFX SDK и среду выполнения и интегрировать их в стандартную структуру каталогов JDK.
Теперь об установке 64-битной JRE на платформах Linux:
ЭТА ПРОЦЕДУРА УСТАНАВЛИВАЕТ JAVA RUNTIME ENRIVONMENT (JRE) ДЛЯ 64-БИТОВОГО LINUX, С ИСПОЛЬЗОВАНИЕМ ДВОЙНОГО АРХИВНОГО ФАЙЛА (.TAR.GZ). ЭТИ ИНСТРУКЦИИ ИСПОЛЬЗУЮТ СЛЕДУЮЩИЙ ФАЙЛ:
Перед запуском клиента в любой сети Ss7:
SERVER_IP = «IP-адрес STP, к которому вы подключаетесь»
CLIENT_IP = «IP-адрес, предоставленный вам в STP»
SERVERPORT = «Порт STP» CLIENTPORT = «Порт, предоставленный клиентом» IS_SSERVER = FALSE «должен быть всегда ложным» LocalC = «Код точки, назначенный вам»
Remote_SPCSPC = «Код точки STP» Local= «Локальный SSN» Remote_SSN =SSN = «Удаленный SSN» ”Routingt =“ контекст маршрутизации, назначенный вам STP ”NETWORK_INDICATOR =« Индикатор сети »
Local_GT = «Локальный глобальный заголовок, назначенный вам»
Remote_GT = «удаленный глобальный заголовок, который вы тестируете» «` «Индикатор сети» Local_GT = «Локальный глобальный заголовок, назначенный вам»
Remote_GT = »удаленный глобальный заголовок, который вы тестируете» «`
Команды для симуляции сети SS7
Как перехватить SMS с помощью MapSMS.jar:
Шаг 1
1. Отправляем запрос SendRoutingInfoForSM, адресовав сообщение MAP (часть мобильного приложения) по MSISDN (целевой номер телефона)
2. HLR (Home Resource Locator) отвечает: собственным адресом, обслуживающим адрес MSC, IMSI (Международная идентификация мобильного абонента (IMSI) - это международный стандартизированный уникальный номер для идентификации мобильного абонента. IMSI определен в Рекомендации МСЭ-Т E 0,212.
IMSI состоит из кода страны мобильной связи (MCC), кода мобильной сети (MNC) и идентификационного номера мобильной станции (MSIN)
Шаг 2
1. Регистрируем номер телефона жертвы на поддельном MSC
2. HLR устанавливает новое местоположение для нашего целевого номера
3. HLR просит настоящий MSC освободить память
Шаг 3
1. Кто-то отправляет SMS на номер жертвы
2. MSC переводит SMS в SMS-C
3. SMS-C запрашивает HLR для определения местоположения целевого номера
4. HLR отвечает поддельным адресом MSC
5. SMS-C переводит SMS на фальшивый MSC
Ваш Wireshark перехватывает СМС и это все,
Как вы уже поняли, сегодня мы расскажем о атаках на протокол SS7.
Давайте, что бы большинство из вас поняли, о чем идет речь, сразу поясним:
Что такое SS7?
Протокол SS7, также известный как Сигнализационная система № 7, относится к сети передачи данных и к ряду технических протоколов или правил, которые регулируют обмен данными по ним. Он был разработан в 1970-х годах для отслеживания и подключения вызовов в разных сетях операторов связи, но теперь он обычно используется для расчета биллинга сотовой связи и отправки текстовых сообщений в дополнение к маршрутизации мобильных и стационарных вызовов между операторами и региональными коммутационными центрами.
Что даст взлом SS7?
Прослушку звонков и перехват SMS любого человека на планете, в любой точке мира. Все, что нам нужно знать - номер телефона
Впечатляет, не так ли?
Как получить доступ?
Обратим внимание, что инструкция не предназначена для новичков, как собственно и любой способ взлома SS7.
Требование к ОС:
- ОС Linux с поддержкой SCTP
- JRE 1.7 (среда выполнения Java SE) или выше
Для просмотра ссылки Войдиили ЗарегистрируйсяДля просмотра ссылки Войдиили Зарегистрируйся
Используемые инструменты:
- tsscale opensource ss7 stack
Для просмотра ссылки Войдиили Зарегистрируйся
Этот инструмент в формате Java - .jar
Последние выпуски JDK 7u6 включают JavaFX SDK (версия 2.2 или более поздняя). Вам необходимо установить JavaFX SDK и среду выполнения и интегрировать их в стандартную структуру каталогов JDK.
Теперь об установке 64-битной JRE на платформах Linux:
ЭТА ПРОЦЕДУРА УСТАНАВЛИВАЕТ JAVA RUNTIME ENRIVONMENT (JRE) ДЛЯ 64-БИТОВОГО LINUX, С ИСПОЛЬЗОВАНИЕМ ДВОЙНОГО АРХИВНОГО ФАЙЛА (.TAR.GZ). ЭТИ ИНСТРУКЦИИ ИСПОЛЬЗУЮТ СЛЕДУЮЩИЙ ФАЙЛ:
- jre-8uversion-linux-x64.tar.gz
- Изменяем текущий каталог на каталог, в который вы хотите установить JDK, а затем перемещаем туда двоичный файл архива .tar.gz
- Распакуем архив и установим JRE:
- Файлы Java Development Kit устанавливаются в каталог с именем jdk1.8.0_version в выбранном каталоге.
- Теперь распакуем файлы safeseven в ваш домашний каталог.
- Теперь откроем WireShark. (Wireshark предустановлен в Kali Linux)
- Выберем «Протокол SCTP» и начнем захват пакетов данных.
- Затем откроем терминал.
Перед запуском клиента в любой сети Ss7:
- Убедитесь, что вы изменили файл client_config
SERVER_IP = «IP-адрес STP, к которому вы подключаетесь»
CLIENT_IP = «IP-адрес, предоставленный вам в STP»
SERVERPORT = «Порт STP» CLIENTPORT = «Порт, предоставленный клиентом» IS_SSERVER = FALSE «должен быть всегда ложным» LocalC = «Код точки, назначенный вам»
Remote_SPCSPC = «Код точки STP» Local= «Локальный SSN» Remote_SSN =SSN = «Удаленный SSN» ”Routingt =“ контекст маршрутизации, назначенный вам STP ”NETWORK_INDICATOR =« Индикатор сети »
Local_GT = «Локальный глобальный заголовок, назначенный вам»
Remote_GT = «удаленный глобальный заголовок, который вы тестируете» «` «Индикатор сети» Local_GT = «Локальный глобальный заголовок, назначенный вам»
Remote_GT = »удаленный глобальный заголовок, который вы тестируете» «`
Команды для симуляции сети SS7
- Имитация HLR: java -jar server.jar hlr_config
- Имитация MSC/VLR: java -jar server.jar vlr_config
- Запуск STP: java -jar STP.jar stp_config
- Операции, связанные с MS: java -jar SMS.jar client_config
- Операции, связанные с USSD: java -jar ussd.jar client_config
- Операции, связанные с вызовом: java -jar Call_Handling.jar client_config
- Операции, связанные с мобильностью: java -jar Mobility.jar client_config
- Операции, связанные с мобильностью: java -jar Mobility.jar client_config
Как перехватить SMS с помощью MapSMS.jar:
Шаг 1
1. Отправляем запрос SendRoutingInfoForSM, адресовав сообщение MAP (часть мобильного приложения) по MSISDN (целевой номер телефона)
2. HLR (Home Resource Locator) отвечает: собственным адресом, обслуживающим адрес MSC, IMSI (Международная идентификация мобильного абонента (IMSI) - это международный стандартизированный уникальный номер для идентификации мобильного абонента. IMSI определен в Рекомендации МСЭ-Т E 0,212.
IMSI состоит из кода страны мобильной связи (MCC), кода мобильной сети (MNC) и идентификационного номера мобильной станции (MSIN)
Шаг 2
1. Регистрируем номер телефона жертвы на поддельном MSC
2. HLR устанавливает новое местоположение для нашего целевого номера
3. HLR просит настоящий MSC освободить память
Шаг 3
1. Кто-то отправляет SMS на номер жертвы
2. MSC переводит SMS в SMS-C
3. SMS-C запрашивает HLR для определения местоположения целевого номера
4. HLR отвечает поддельным адресом MSC
5. SMS-C переводит SMS на фальшивый MSC
Ваш Wireshark перехватывает СМС и это все,