Атакуємо SS7: аналіз захищеності стільникових операторів в 2015 році



Перехоплення розмов по мобільних телефонах прийнято вважати складним завданням. Однак не тільки спецслужби володіють цим мистецтвом: атакувати абонентів може і хакер середнього рівня, якщо він обізнаний з будовою сигнальних мереж. Старі добрі уразливості SS7 дозволяють підслуховувати телефонні розмови, визначати місцеположення абонентів, перехоплювати SMS, відключати телефон від мережі.

У 2015 році фахівці Positive Technologies здійснили 16 проектів з аналізу захищеності мереж SS7 провідних мобільних операторів регіонів EMEA і APAC. Результати восьми найбільш інформативних проектів потрапили в нашу статистику. У цій статті ми розглянемо рівень захищеності абонентів стільникових мереж, а також всіх промислових і IoT-пристроїв, від банкоматів до GSM-систем контролю тиску на газопроводі, які також є абонентами стільникових мереж. У звіті описано основні виявлені проблеми та шляхи їх вирішення.

Преамбула: привіт з 70-x

Розроблена сорок років тому система SS7 (СКС-7) має певні недоліки в плані захищеності (наприклад, відсутні шифрування і перевірка справжності службових повідомлень). Довгий час це не представляло небезпеки ні для абонентів, ні для оператора: мережа SS7 була замкненою системою, в яку підключалися тільки оператори фіксованого зв'язку. Проте час йде, мережа еволюціонувала для підтримки потреб мобільного зв'язку та надання додаткових послуг. На початку 2000-х була запропонована специфікація SIGTRAN, що дозволила передавати службову інформацію SS7 по IP-мереж. Сигнальна мережа перестала бути ізольованою.

Звичайно, напряму потрапити в сигнальну мережа не вийде, потрібно SS7-шлюз. Але забезпечити доступ до нього не так складно. Можна отримати операторську ліцензії в країні, де на це дивляться крізь пальці, або придбати доступ на чорному ринку у діючого оператора. Існують способи потрапити в мережу через взломанное операторське обладнання, GGSN або фемтосоту. Якщо серед учасників хакерської групи є технічний спеціаліст компанії-оператора, то він може виконувати ряд атак за допомогою набору легітимних команд або підключити до SS7 своє обладнання.

Атаки через SS7 можуть виконуватися з будь-якого місця на планеті, що робить цей метод одним з найбільш перспективних для порушника. Зловмиснику не треба фізично знаходитися поряд з абонентом, як у випадку з підробленою базовою станцією, тому визначити його практично неможливо. Висока кваліфікація також не потрібно: у мережі є безліч готових додатків для роботи з SS7. При цьому оператори не можуть блокувати команди від окремих вузлів, оскільки це чинить негативний вплив на весь сервіс і порушує принципи функціонування роумінгу.

Вперше уразливості SS7 були публічно продемонстровано в 2008 році: німецький дослідник Тобіас Енгель показав техніку стеження за абонентами мобільних мереж. У 2014 році експерти Positive Technologies виступили з презентацією «Як підслухати людини на іншому кінці земної кулі» і представили детальний звіт «Уразливості мереж мобільного зв'язку на основі SS7». У 2015 році фахівці SR Labs в ефірі австралійської програми «60 хвилин», будучи в Німеччині, перехоплювали SMS-листування австралійського сенатора Ніка Ксенофонта і британського журналіста, а потім спостерігали за пересуваннями сенатора у відрядженні в Токіо.

Загальні результати

З міркувань конфіденційності ми не розкриваємо назви компаній, які брали участь у нашому дослідженні. Зазначимо лише, що половина досліджених мереж SS7 належать найбільшим мобільним операторам з числом абонентів більше 40 млн.



Обсяг абонентської бази операторів

Підсумковий рівень безпеки мереж SS7 всіх досліджених операторів мобільного зв'язку виявився вкрай невисокий. У 2015 році відносно операторів зв'язку та їх мереж SS7 могли бути реалізовані атаки, пов'язані з витоком даних абонентів (77% успішних спроб), порушеннями в роботі мережі (80%) і шахрайськими діями (67%).

Вхідні SMS-повідомлення можна було перехопити в мережах всіх учасників дослідження. Дев'ять з десяти атак (89%) досягли мети, і це дуже поганий результат. Судіть самі: SMS-повідомлення часто використовуються в системах двофакторної аутентифікації і для відновлення паролів від різних інтернет-сервісів. Перехоплення повідомлень виконувався методом UpdateLocation. Зловмисник реєструє абонента-жертву в фальшивою мережі, після чого всі вхідні повідомлення SMS приходять на зазначену ним адресу.



Частка успішних атак з метою отримання чутливої інформації

Несанкціонований запит балансу також був можливий майже повсюдно (92% атак). Для цієї атаки використовується повідомлення ProcessUnstructuredSS-Request, в тілі якого передається відповідна USSD-команда.

Голосові виклики виявилися захищені трохи краще: увінчалися успіхом тільки половина атак з метою прослуховування вхідних і вихідних дзвінків. Але і це величезний ризик для абонентів. Для перехоплення дзвінків використовувалася техніка підміни роумінгового номери. Прослуховування же вихідних дзвінків здійснювалося методом InsertSubscriberData. Потім у тому і іншому випадку виконувалося перенаправлення трафіку на інший комутатор.



Методи визначення місцезнаходження абонента (частки успішних атак)

Визначити фізичне місцезнаходження абонента вийшло у всіх мережах, крім однієї. Основні методи — SendRoutingInfo і ProvideSubscriberInfo, причому останній давав результат при кожній другій атаці (53%).

Найбільш цінна інформація про абонента — IMSI. Цей ідентифікатор потрібен для більшості атак. Найлегше виявилось отримати його методом SendRoutingInfo.



Методи крадіжки інформації про абонента (частки успішних атак)

Інший метод визначення IMSI — SendRoutingInfoForSM — виявився ефективний в 70% випадків. Дане повідомлення використовується при вхідному СМС-повідомленні для запиту маршрутної інформації та локалізації абонента-одержувача. Дізнатися ідентифікатор абонента можна було і з допомогою команди SendIMSI, але з меншою ймовірністю (25%).

Шахрайство

У кожній із систем були виявлені недоліки, що дозволяють реалізовувати якісь шахрайські дії з боку зовнішнього порушника. Прикладами таких дій можуть служити перенаправлення викликів, переказ коштів з рахунку абонента, зміна профілю абонента.



Шахрайство: частки успішних атак

Більшість атак з метою перенаправлення вхідних викликів виявилися успішними (94%). Це підтверджує наявність в мережах SS7 істотних проблем, пов'язаних з архітектурою протоколів і систем.

Вихідний дзвінок вдалося перенаправити лише в 45% випадків. Для перенаправлення застосовувався метод InsertSubscriberData.

Атаки з метою перенаправлення вхідних викликів здійснювалися з використанням двох технік — підміни роумінгового номери і маніпуляції з переадресацією. Підміна роумінгового номера здійснюється в момент дзвінка на атакується абонента, який повинен бути попередньо зареєстрований у фальшивій мережі. У відповідь на запит роумінгового номери атакуючий відправляє номер для перенаправлення виклику. Плата за встановлене з'єднання ляже на оператора.

Маніпуляція з переадресацією — несанкціонована установка безумовної переадресації. Всі вхідні виклики для абонента будуть перенаправлятися на вказаний номер. Платити за дзвінки доведеться абоненту.



Методи перенаправлення вхідного дзвінка (частки успішних атак)

Зміна профілю абонента було можливо в кожної другої атаки, здійсненої методом InsertSubscriberData (54%). Атакуючий має можливість змінити профіль абонента таким чином, що вихідні дзвінки будуть здійснюватися в обхід системи тарифікації. Ця атака може використовуватися у схемах шахрайства з генерацією трафіку на платні номери і дорогі напрямки за рахунок оператора.

DoS-атака на абонента

Щоб зробити абонентське обладнання (телефон, модем, GSM-сигналізацію або датчик) недоступним для вхідних транзакцій, зловмисник може здійснювати цілеспрямовані атаки на абонентів мобільної мережі. Більшість досліджених нами мереж SS7 уразливі для DoS-атак (успішні були 80%).

У всіх випадках застосовувався метод UpdateLocation; для атаки потрібно знати ідентифікатор IMSI абонента. У мережу оператора відправляється повідомлення UpdateLocation, інформуючи HLR, що абонент провів реєстрацію (підробленою мережі). Після цього вхідні виклики на абонента направляються на адресу, вказану при атаці.

Причини проблем

Більшість атак на мережі SS7 були можливі через відсутність перевірки реального місця розташування абонента. На другому і третьому місцях у списку причин — неможливість перевірки належності абонента мережі і відсутність фільтрації невикористовуваних сигнальних повідомлень. На четвертій позиції — помилки конфігурації SMS Home Routing.



Середнє число успішних атак в одній мережі SS7 (в залежності від нестачі)

Що можна зробити

Більшість недоліків, що дозволяють визначити місце розташування абонента і вкрасти дані, які можуть бути усунені зміною конфігурації мережевого обладнання. Необхідно як мінімум встановити заборону на обробку повідомлень AnyTimeInterrogation і SendIMSI на HLR.

Архітектурні проблеми протоколів і систем вирішуються шляхом блокування небажаних повідомлень. В першу чергу слід звернути увагу на SendRoutingInfoForSM, SendIMSI, SendRoutungInfoForLCS, SendRoutingInfo. Фільтрація допоможе уникнути ризиків, пов'язаних з відмовою в обслуговуванні, перехопленням SMS-повідомлень, передавання викликів, прослуховуванням дзвінків, зміною профілю абонента.

Проте не всі зазначені повідомлення мережі SS7 можуть виявитися небезпечними. Необхідно реалізувати фільтрацію таким чином, щоб відсікалися тільки небажані повідомлення, використовувані в атаках. Для цього рекомендується впроваджувати додаткові засоби захисту, наприклад, системи виявлення вторгнень. Подібні системи не впливає на трафік мережі, але дозволяють виявити дії порушника і визначити необхідні налаштування фільтрації повідомлень.

Повна версія дослідження: www.ptsecurity.ru/research/analytics.

Автори: Дмитро Курбатов, Сергій Пузанков, Відділ безпеки телекомунікаційних систем Positive Technologies
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.