Перехоплення з використанням usrp спільно з gnuradio і airprobe

ерехват сигналів GSM може бути здійснений шляхом спільного використання USRP і GNU Radio. Універсальна Програміруємих радіоперіферія (USRP) - це відкрита апаратура, розроблена Меттом Еттасом, яку можна замовити через його компанію Ettus Research [11]. Це передавач, який може бути приєднаний до комп'ютера і пристосований до певних частотах за рахунок доповнення платами розширення. USRP містить програмований FPGA (ПЛІС), який може бути використаний для виконання деяких видів обробки сигналів. У стандартній конфігурації USRP створює 16-бітові I і Q семпли при прийомі заданої частоти. Ці комплексні семпли з реальною частиною (Q) описують косинус сигналу, а уявна частина (I) описує синус сигналу плюс 90 градусів. Таким чином, один семпл займає 32 біта і може бути посланий на хост-комп'ютер через комунікаційний порт для подальшої обробки.

На даний момент існує два типи обладнання: USRP і USRP2. USRP (або USRP1) може приймати сигнали в діапазоні шириною 32 MHz і передавати в діапазоні шириною 64 MHz. Він передає семпли на хост-комп'ютер за допомогою бездротової технології USB2.0, яке має практично максимальну пропускну здатність 32 Мбайт / сек. USRP2 може приймати на діапазоні шириною 50MHz і передавати на діапазоні шириною 200MHz. У порівнянні з USRP1, USRP2 також містить більш швидку FPGA (ПЛІС) і гігабітний етернет-порт замість USB-з'єднання.

GNU Radio [12] - це вільна програмна утиліта під GPL-ліцензією для створення програмного радіо. Вона була розпочата Еріком Блоссом. Вона працює для безлічі різних типів радіоапаратури, включаючи звукові карти, але в більшій мірі використовується в комбінації з USRP. В основному GNU Radio - це бібліотека, яка містить безліч стандартних функцій обробки сигналів, таких як фільтри і (де) модулятори.

I. Дозволити USRP слідувати за стрибає частотою.
II. Перехопити всі можливі частоти і намагатися слідувати за послідовністю пізніше.

Перше рішення вимагає множинних обчислень всередині FPGA USRP. Всі параметри для перескакує частоти повинні бути отримані від певних імпульсів даних, потім повинна бути обчислена наступна частота перескоку для кожного наступного импулься даних. Є три можливі конфігурації мобільних мереж щодо передачі параметрів послідовності перескоку частоти. В одному з них всі параметри передаються у відкритому вигляді. У двох інших конфігураціях ці параметри передаються після включення шифрування. У наших експериментах ми завжди спостерігали тільки стільникові вишки, які використовували так зване "раннє присвоювання", в якому параметри перескоку передавалися зашифрованими. Крім того, мережа завжди може послати команду на новий перескок частоти під шифруванням, незалежно від використаної конфігурації. Це вимагає дуже швидкого злому шифрування з метою отримувати значення частот перескоку в реальному часі. Поки що це неможливо. USRP FPGA може тільки семпліровалісь окремі частоти з певною пропускною спроможністю і посилати їх в комп'ютер. Тобто можливість мати FPGA (ПЛІС), для дешифрування та інтерпретації імпульсів даних з метою проходження послідовностям перескоку частоти зажадає безлічі робіт по створенню такого рішення. Залишається під питанням навіть те, що значно швидший FPGA USRP2 зможе дешіфровивать повідомлення і таким чином обчислювати послідовності перескоку в реальному часі. Таке завдання може зажадати додаткових FPGA, що збільшить вартість. Також затримки в налаштуванні апаратури USRP (час між коммандой "tune" і моментом, коли USRP отримує використовувані семпли з потрібної частоти) виглядають великими на даний момент і повинні бути знижені. Однак, при такій постановці завдання все повинно працювати для будь-якої стільникового вишці і незалежно від обсягів трафіку.

Друге рішення зажадає захоплення великого обсягу даних, а саме записи всіх каналів і визначення частоти перескоку пізніше. Проблема тут в зменшенні обсягу даних, що посилаються від USRP до комп'ютера. Стрибає частота може здійснювати максимальний стрибок між 64 несучими частотами. Всі ці несучі мають ширину 200 кГц і можуть бути рівномірно розподілені по всьому GSM-спектру. Так що в гіршому випадку атакуючому доведеться перехоплювати весь GSM-діапазон (для GSM900 це 25 MГц для прямого і зворотного лінка). Проблема полягає в продуктивності PC по відношенню до обробки даних. Кожен семпл USRP представлений двома 16-бітними числами. Для USRP1 з USB2.0 з'єднанням це означає, що максимальний потік даних, який може бути відправлений комп'ютера близько 8 MГц (8 MГц x 2 x 16 = 256 Мбіт / с). У USRP2 з'єднання GBE може пропускати 100 Мбайт даних (25 МГц х 2 х 16 = 800 Мбіт / с) і навіть 200 Мбайт / c, для прямого і зворотного зв'язку, що занадто багато для більшості PC.

Зрозуміло можливі деякі оптимізації. Одиночна стільниковий вишка ніколи не обслуговує весь діапазон GSM-частот. Це означає, що можна відразу відкинути всі частоти за межами верхньої і нижньої для даної конкретної стільникового вишки. Однак, таке рішення не працює для більшості ситуацій, так як максимальне число несучих (64) для одиночної стільникового вишки все ще занадто велике для USRP. Також, оскільки USRP може приймати тільки безперервний діапазон частот, то верхня і нижня частоти занадто далекі один від одного і ця методика не працює.

Однак, представлені вище заперечення не представляють проблеми, якщо атакують стільниковий вишка не провадить перескоку каналів або веде передачу тільки на невеликому числі частот і в вузькій ділянці спектру. На таких стільникових вишках прослуховування за допомогою USRP виглядає дійсно можливим. Неясно скільки насправді, якщо такі взагалі є, стільникових веж працюють за таким принципом. Це робить складним оцінку ризику в поточній ситуації. В ході цього дослідження було вивчено тільки невелике число вишок і жодна з них не задовольняла умовам, які б дозволяли проводити прослуховування з використанням USRP.

На даний момент друге рішення розглядається як найбільш коректне більшістю спільноти AirProbe. По крайней мере, на виході очікується більше шансів на успіх (хоча б для частини стільникових веж), хоча програмування FPGA і не означає простого завдання. Таке рішення, ймовірно, не буде працювати у всіх ситуаціях, створюючи проблеми з пропускною здатністю даних на PC, але деякі працюють системи для деяких стільникових веж вже достатні для того, щоб спільнота AirProbe продемонструвало можливість прослуховування GSM.