Статья Поднимаем GSM станцию с помощью YateBTS и bladeRF

00.jpg

Привет codeby.net!

Не так давно ко мне в руки попал такой устройство как bladeRF x115. Первое что мне захотелось сделать это поднять свою GSM станцию. Когда я начал этим заниматься у меня возникли сложности в процессе установки и настройки необходимого софта. Информации на русскоязычных площадках я не нашел а на зарубежных информация устарела. В процессе пришлось пройти через все грабли самому. В связи с этим собственно появилась мысль описать процесс установки и настройки YateBTS под bladeRF.

Настраивать будем под Ubuntu 18.04.

Для начало установим необходимые пакеты: sudo apt-get install -y libbladerf-dev git subversion autoconf apache2 php libapache2-mod-php g++ make libgsm1-dev libgusb-dev rlwrap

Затем установим ПО для bladeRF:
Код:
sudo add-apt-repository ppa:bladerf/bladerf
sudo apt-get update
sudo apt-get install bladerf

Установим FPGA в соответствии с вашей моделью bladeRF:
Код:
sudo apt-get install bladerf-fpga-hostedx40 # for bladeRF x40
sudo apt-get install bladerf-fpga-hostedx115 # for bladeRF x115
sudo apt-get install bladerf-fpga-hostedxa4 # for bladeRF 2.0 Micro A4
sudo apt-get install bladerf-fpga-hostedxa9 # for bladeRF 2.0 Micro A9

Устанавливаем Yate:
Код:
svn checkout http://voip.null.ro/svn/yate/trunk yate
cd yate
./autogen.sh
./configure
sudo make install-noapi
sudo ldconfig

Перемещаемся обратно домашнюю директорию: cd ~

Устанавливаем YateBTS:
Код:
svn checkout http://voip.null.ro/svn/yatebts/trunk yatebts
cd yatebts/

Прежде чем начать собирать проект нужно внести некоторые изменения иначе будет ошибка при зборки.

Откроем файл mbts/GPRS/MSInfo.cpp:
Код:
GPRSLOG(INFO,GPRS_MSG|GPRS_CHECK_OK) << "Multislot assignment for "<<this<<os;  - найдем эту строку
GPRSLOG(INFO,GPRS_MSG|GPRS_CHECK_OK) << "Multislot assignment for "<<this<<(!os.fail()); и заменим ее на эту

Сохраним изменение и перейдем к следующему файлу.

Тоже самое сделаем с файлом mbts/SGSNGGSN/Sgsn.cpp
Код:
SGSNLOGF(INFO,GPRS_OK|GPRS_MSG,"SGSN","Removing SgsnInfo:"<<ss);
SGSNLOGF(INFO,GPRS_OK|GPRS_MSG,"SGSN","Removing SgsnInfo:"<<(!ss.fail()));

SGSNLOGF(INFO,GPRS_OK|GPRS_MSG,"SGSN","Removing gmm:"<<ss);
SGSNLOGF(INFO,GPRS_OK|GPRS_MSG,"SGSN","Removing gmm:"<<(!ss.fail()));

Когда файлы будут исправлены можно перейти к сборке проекта.
Код:
./autogen.sh
./configure
sudo make install

Настраиваем Web GUI YateBTS:
Код:
cd /var/www/html
sudo ln -s /usr/local/share/yate/nipc_web yatebts
sudo chmod -R a+w /usr/local/etc/yate

- по этому адресу можно получить доступ к Web интерфейсу YateBTS

Настраиваем GSM BTS:
Откроем Web панель YateBTS

01.png


Переходим на вкладку BTS Configuration и выставляем настройки:
Код:
Radio.Band=900
Radio.C0=75
Identity.MCC=001
Identity.MNC=01
Radio.PowerManager.MaxAttenDB=35
Radio.PowerManager.MinAttenDB=35

02.png


После того как настройки выставлены нажимаем Submit. Теперь надо выставить разрешение на подключение к нашей станции. Переходим на вкладку Subscribers в правом нижнем углу выбираем Accept by REGEXP

03.png


В поле Regexp пишем .* и нажимаем Save.

04.png


Затем настроим перехват GSM сигнала. Для этого перейдем на вкладку BTS Configuration чуть ниже найдем вкладку Tapping. Выставим галочку напротив GSM и нажмем Submit.

05.png


Эта настройка позволяет захватывать GSM сигнал через GSMTAP. На этом минимальная настройка GSM сети закончена.

Запускаем BTS:
Запускаем GMS станцию командой sudo yate -s. Если все настроено правильно вы должны увидеть много текста среди которого будет:
Код:
Release 6.1.1 formal build date Jun  6 2019 rev671
2019-06-06_10:27:05.242232 <mbts:NOTE> proc 27570 GSMConfig.cpp:80:regenerateBeacon: thread 139826990253888: regenerating system information messages, changemark 1
Starting MBTS...

Также определить работает ли станция можно посмотрев на плату первый и последний светодиод должен гореть стабильно а центральный мигать. Включив поиск на телефоне доступных сетей мы должны увидеть Test PLMN 1 - 1 2G это и есть наша тестовая сеть.

06.jpeg


Зарегистрировавшись в сети мы получим стандартное сообщение его можно изменить в файле /usr/local/share/yate/scripts/nib.js на строчки 379.

07.jpeg


В Web интерфейсе на вкладке Subscribers чуть ниже перейдя кликнув по ссылки Online Subscribers мы видим зарегистрированных пользователей которые были онлайн за последних 10 дней (частоту обновлений можно изменить в настройках).

08.png


Установка модуля SMSSend:
Из коробки отправить произвольное сообщение клиенту нельзя но это можно сделать через сторонний модуль YateBTS_smssend. Давайте его установим (если у вас запущен yate остановить его перед начал установки модуля).

Код:
git clone https://github.com/Ark444/YateBTS_smssend.git
cd YateBTS_smssend
sudo make
sudo make install

Если нет ошибок установка прошла успешна. Запустим Yate затем в новом окне терминала подключаемся к удаленному интерфейсу: rlwrap nc localhost 5038. Выводим список зарегистрированы пользователи командой nipc list registered:
Код:
IMSI            MSISDN
--------------- ---------------
00101001100110   55124323

И по шаблону составляем команду для отправки сообщения smssend <MSISDN> <CALLER> <message> - smssend 5569413 911 Hello CODEBY.NET после отправки наблюдаем результат

09.jpeg


На этом пожалуй закончу. Если вам понравился материал вы можете прочить следующую стать в премиум разделе EvilBTS или подменяем GSM сети с помощью YateBTS и bladeRF ;)

p.s Если вам понравилась какая либо статья не забывайте нажимать кнопку
2019-06-24_11-55-07.png
это дает мотивацию автором для написание нового материала так как это все делаться на чистом индуизме.
 
Последнее редактирование:
M

maxim n

Спасибо за статью, очень интересно! Вопрос что с помощью этой сети делать?)) в мир она "смотреть" не может, ограничено радиусом блейда?
 

n3d.b0y

Red Team
19.01.2018
181
476
BIT
176
Спасибо за статью, очень интересно! Вопрос что с помощью этой сети делать?)) в мир она "смотреть" не может, ограничено радиусом блейда?

Конкретно даную реализацию сети можно использовать исключительно для лабораторных тестов а делать можно с ней все что пожелаешь) Например можно попробовать прослушать трафик для перехвата смс с последующей расшифровкой.
 
Последнее редактирование:
  • Нравится
Реакции: А0038

Manul

Green Team
18.01.2019
135
184
BIT
2
Можно сделать частью охраной системы своего дома, прикинь сколько желания останеся вломится если он с порога получает смс типо "лапух я тебя вачеслю по твоему номеру"
чел кто берёт свою трубу с собой на делюгу заслуживает такого обращения, а мои наблюдения показывают что таких как минимум половина, если не больше, особенно если эпизод в черте города.
 
  • Нравится
Реакции: majklnovikov и InetTester

swap3r

Green Team
06.11.2016
71
59
BIT
0
Конкретно даную реализацию сети можно использовать исключительно для лабораторных тестов а делать можно с ней все что пожелаешь) Например можно пробовать прослушать трафик для перехвата смс с последующей расшифровкой.
прослушать звонки и смс можно будет только для исходящей активности (то есть, только исходящие звонки и смс)

Можно сделать частью охраной системы своего дома, прикинь сколько желания останеся вломится если он с порога получает смс типо "лапух я тебя вачеслю по твоему номеру"
чел кто берёт свою трубу с собой на делюгу заслуживает такого обращения, а мои наблюдения показывают что таких как минимум половина, если не больше, особенно если эпизод в черте города.
ага, только еще глушилку на 4дж и 3дж диапазон повесить надо, чтобы словили именно твою 2гшную соту и количество таких твоих сот должно быть равно количеству операторов, имеющих покрытие в твоем регионе ))
 
  • Нравится
Реакции: unost и n3d.b0y

swap3r

Green Team
06.11.2016
71
59
BIT
0
там другие методики для 3-4g. Из вариантов:

- операторская фемтосота с измененной прошивкой с выходом в сеть оператора абонента (на дефконе преза была, в теме по осмокому я ссылки вроде, как давал)
- призрачный телефонист (выглядит очень красиво и оборудование недорогое)
- своя сота, подобная описанной в этой теме, с выходом в какую-то операторскую сеть (абонент оказывается в роуминге в данном случае, что для него заметно буде)

Это из того, что вспомнилось, может что-то и забыл, то другие поправят.
 
  • Нравится
Реакции: prado

swagcat228

Заблокирован
19.12.2019
341
86
BIT
0
Внатуре чётко!

Вопрос: а в концепте, который описан в статье, человек подключившийся к нашей соте сможет позвонить? или отправить смс? но самое главное - сможет ли он воспользоваться интернетом?

если да - то мы сможем перехватить траффик? вернее даже не так. сможем ли мы расшифровать перехваченный интернет траффик?
Я слыхал что в казахстане силовики принудительно МИТМят клиентов сотовых сетей в целях безопасности. как же тогда HSTS?
 

mdxxiv

New member
27.11.2019
3
0
BIT
0
не могу поднять веб интерфейс на kali пробовал все как в yatewiki но пишет что нет доступа к стр :/

Внатуре чётко!

Вопрос: а в концепте, который описан в статье, человек подключившийся к нашей соте сможет позвонить? или отправить смс? но самое главное - сможет ли он воспользоваться интернетом?

если да - то мы сможем перехватить траффик? вернее даже не так. сможем ли мы расшифровать перехваченный интернет траффик?
Я слыхал что в казахстане силовики принудительно МИТМят клиентов сотовых сетей в целях безопасности. как же тогда HSTS?
Там же описано как включить GSMTAP дальше Wireshark.
 

swagcat228

Заблокирован
19.12.2019
341
86
BIT
0
не могу поднять веб интерфейс на kali пробовал все как в yatewiki но пишет что нет доступа к стр :/
curl из консоли что возвращает? есть ошибки какие-то? больше инфы

Там же описано как включить GSMTAP дальше Wireshark.
а причем тут вайршарк. вопрос про HTTPS
 

swap3r

Green Team
06.11.2016
71
59
BIT
0
n3d.b0y, а на лайме подобное запустить можно? и на обычной х86 архитектуре (а не на малинках)
интересует именно yatebts, а не openbts?
как выбрать лаймсдр в качестве радиоинтерфейса для yatebts?
 

Gansta

New member
30.09.2019
4
0
BIT
27
вопрос по
bladeRF 2.0 Micro A4
скачал спец версию yate-rc запустилась сеть телефон видит,
но нет коннекта ,не регистрируется телефон ,
ВНИМАНИЕ ВОПРОС!?!
кто смог??? и как??? это сделать???
 

Vurdalak

Member
18.02.2020
5
0
BIT
0
Опять старо.. такую хрень ещё со старыми телефонами Моторола делали..
 

Jusse

One Level
24.06.2019
3
1
BIT
0
А что ж насчет хотя бы имси катчера? на сколько я понимаю блейд и хак рф имеют возможность зацепить ту частоту в которой мы нуждаемся
 

zxv_zz

Well-known member
26.12.2019
97
0
BIT
15
Всем привет, выполнил все по инструкции, запускается, вручную подключается, но вот при попытке просмотра подключенных абонентов получаю ошибку

111.png

Помогите разобраться где не так(
 

Ser7hem

New member
09.04.2020
1
0
BIT
0
вопрос по
bladeRF 2.0 Micro A4
скачал спец версию yate-rc запустилась сеть телефон видит,
но нет коннекта ,не регистрируется телефон ,
ВНИМАНИЕ ВОПРОС!?!
кто смог??? и как??? это сделать???
Покажи хоть лог или скрин какой, подробней описывай ошибку/проблему.
У меня на bladeRF 115 работает без проблем.
Сам как все поставленные задачи по работе с GSM решу, буду запускать LTE станцию.
 

Вложения

  • Screenshot_3.jpg
    Screenshot_3.jpg
    225,6 КБ · Просмотры: 448
  • Screenshot_2020-05-17-00-36-14-503_com.wilysis.cellinfolite.jpg
    Screenshot_2020-05-17-00-36-14-503_com.wilysis.cellinfolite.jpg
    111,6 КБ · Просмотры: 446
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!