Представлен экспериментальный скрипт CarrierSIM для iPhone с возможностью активации 5G и VoWiFi в РФ

В сети появился бесплатный экспериментальный способ активации 5G и VoWiFi в РФ. Проект CarrierSIM, который опубликовал пользователь форума 4PDA под ником vl_w. Решение работает только на iOS 27 (рекомендуется применять только в тестовых целях на свой страх и риск).

Официально 5G в РФ доступен только на Android-смартфонах, ограничен тестовыми площадками, а сети 5G в Москве пока не дают заметных преимуществ перед LTE. Для полноценной работы 5G на iPhone в РФ требуется, чтобы Apple активировала такую возможность. Но сейчас это нельзя реализовать официально из-за ограничения деятельности американской компании в России.

Проект CarrierSIM также не меняет оператора связи, СИМ-карту или тариф. Скрипт заставляет iOS использовать для российской СИМ системный профиль венгерского Vodafone, уже встроенный в прошивку iPhone.

Операторские профили на iPhone содержат настройки, по которым iOS определяет доступные сетевые функции. В российском профиле 5G для iPhone отключён, а в профиле Vodafone Hungary необходимые параметры присутствуют. CarrierSIM считывает уникальный идентификатор СИМ-карты и создаёт привязку, из-за которой система выбирает другой готовый профиль.

Чтобы записать привязку в файловую систему iPhone, решение CarrierSIM использует открытый проект AirLift. Его автор описывает найденный в iOS 27.0 способ выйти за пределы каталога синхронизации Apple Books и записывать файлы в другие пользовательские директории. CarrierSIM приспосабливает этот механизм для работы с операторскими профилями. Фактически скрипт CarrierSIM даёт возможность iPhone перечитать профили. После этого система считает, что конкретной СИМ соответствует Vodafone Hungary,. Потом на смартфоне открываются опции связи, которые были доступны в этом профиле.

Проект CarrierSIM использует недоработку в iOS, которую Apple может исправить в одном из следующих обновлений. Причём после перезагрузки смартфона настройка сети в некоторых случаях слетает и процедуру приходится повторять. Также новый сетевой профиль включает вызовы по Wi‑Fi и кодек EVS для iPhone 14 и новее — ранее это было недоступно.

Инструкция проекта

CarrierSIM — Vodafone HU для всех SIM

Один Python-скрипт для macOS и Windows. Для каждой SIM, сообщённой телефоном, независимо от страны устанавливается привязка к Vodafone_hu по полному IMSI. Если для одной из SIM нет корректного IMSI, вся операция останавливается. Пакет берётся из /System/Library/Carrier Bundles/iPhone на самом телефоне. Его содержимое не изменяется. Меняются только ссылки по IMSI. В assets.zip находятся независимые IPCC для пересканирования.

НАЗНАЧЕНИЕ И РЕЗУЛЬТАТЫ ТЕСТОВ АВТОРА

Скрипт создан для активации VoWiFi (звонков через Wi-Fi) в России. По результатам тестов автора подмена профиля также активирует кодек EVS и открывает 5G на части диапазонов. Работа функций зависит от оператора, тарифа, сети, модели телефона и версии iOS; скрипт не проверяет фактический кодек звонка или используемый радиодиапазон.

КАК ПОДКЛЮЧИТЬ VoWiFi

  1. После установки профиля откройте «Настройки → Сотовая связь → нужная SIM» и включите «Вызовы по Wi-Fi» (название пункта может отличаться).

  2. Включите авиарежим.

  3. Не выключая авиарежим, включите Wi-Fi и подключитесь к сети.

  4. Дождитесь подключения VoWiFi — появления обозначения вызовов через Wi-Fi рядом с названием оператора, если оно отображается в вашей версии iOS.

  5. После подключения VoWiFi авиарежим можно отключить. По результатам тестов автора далее VoWiFi должен подключаться автоматически, когда сеть и настройки оператора позволяют использовать звонки через Wi-Fi.

EVS

По наблюдениям автора, в штатных профилях Apple кодек EVS недоступен в России начиная с iPhone 14; также он не работал в Беларуси. После подмены профиля автор отмечает активацию EVS. Фактическое использование кодека в конкретном звонке зависит от поддержки и согласования со стороны сети.

5G / NR-ДИАПАЗОНЫ

По данным автора и предоставленной им таблице:

Беларусь — BY, MCC 257 NR: n1, n3, n7, n8, n20, n28, n38, n40. n78 недоступен. Работа n79 также не заявлена.

Россия — RU, MCC 250 NR: n1, n3, n7, n8, n20, n38, n40. n78 и n79 недоступны. n28 в предоставленном списке для РФ отсутствует.

Это список по данным автора, а не подтверждение работы каждого диапазона в полевых тестах. Фактическое подключение зависит от покрытия, настроек сети, модели, версии iOS и поддерживаемых сочетаний LTE + NR для NSA. Появление пункта 5G в настройках само по себе не подтверждает регистрацию в 5G или поддержку всех перечисленных диапазонов.

ОГРАНИЧЕНИЯ ДИАПАЗОНОВ

Подмена операторского профиля этим скриптом не обходит региональные ограничения NR-диапазонов. По данным автора, разрешения диапазонов находятся в подписанном GRI системного Default.bundle. Журналы исследованного iPhone подтверждают загрузку GRI из Default.bundle даже после смены оператора-донора. Скрипт не изменяет GRI и его подпись, поэтому смена профиля не снимает эти ограничения. Это ограничение данного способа; невозможность любых других способов обхода исследованием не установлена.

ОТОБРАЖЕНИЕ СЕТИ Отмеченный автором визуальный минус — значок «4G» вместо «LTE». Смена надписи сама по себе не меняет технологию связи и не влияет на её работу.

Исследование, разработка и тесты — Vladimir B / vlw (vlwwwwww@gmail.com).

МОДЕЛИ И iOS Ограничений по модели iPhone, плате, версии и сборке iOS нет. На непроверенной конфигурации выводится предупреждение без запрета запуска. Скрипт МОЖЕТ не работать: снятие проверки не обеспечивает совместимость AirLift или IPCC с любой iOS. Установка проверена на iPhone 17 с iOS 27.0.

Комплектные триггеры AVEA_tr, Swisscom_ch и O2_Germany версии 72.1 получены прямо с CDN Apple, из раздела iOS 27.0 официального каталога iTunes. Все три включают настройки всех перечисленных плат. Исходные IPCC не перепаковывались; контрольные суммы сверены с каталогом Apple. Проверка структуры и наличия подписей не заменяет физический тест.

Ниже справочник названий известных моделей, а не список разрешённых устройств. Неизвестная модель отображается по ProductType; отсутствие настроек платы в комплектном IPCC вызывает предупреждение, но не блокирует попытку.

  • iPhone 14: iPhone14,7 / D27AP

  • iPhone 14 Plus: iPhone14,8 / D28AP

  • iPhone 14 Pro: iPhone15,2 / D73AP

  • iPhone 14 Pro Max: iPhone15,3 / D74AP

  • iPhone 15: iPhone15,4 / D37AP

  • iPhone 15 Plus: iPhone15,5 / D38AP

  • iPhone 15 Pro: iPhone16,1 / D83AP

  • iPhone 15 Pro Max: iPhone16,2 / D84AP

  • iPhone 16 Plus: iPhone17,4 / D48AP

  • iPhone 16 Pro Max: iPhone17,2 / D94AP

  • iPhone 16: iPhone17,3 / D47AP

  • iPhone 16 Pro: iPhone17,1 / D93AP

  • iPhone 16e: iPhone17,5 / V59AP

  • iPhone 17 Pro: iPhone18,1 / V53AP

  • iPhone 17 Pro Max: iPhone18,2 / V54AP

  • iPhone Air: iPhone18,4 / D23AP

  • iPhone 17: iPhone18,3 / V57AP

  • iPhone 17e: iPhone18,5 / V159AP

  • iPhone 18 Pro Max: iPhone19,7 / V64SAP

  • iPhone 18 Pro Max (U.S.): iPhone19,3 / V64AP

  • iPhone 18 Pro: iPhone19,2 / V63AP

После записи скрипт проверяет выбор системного Vodafone_hu и подписи по журналу CommCenter. Прямое чтение /System через AFC не используется: AFC отклоняет такой путь даже при наличии нужного пакета. Результат проверяется обратным чтением и журналом. Ошибки подключения, записи или восстановления по-прежнему останавливают операцию.

БЫСТРЫЙ ЗАПУСК ДВОЙНЫМ ЩЕЛЧКОМ

macOS:

Запуск macOS.command Windows: Запуск Windows.cmd

Откроется русское меню. Установка на телефон — пункт 1, просмотр SIM — 2, проверка компьютера — 3, возврат штатных профилей — 4, восстановление после сбоя — 5. При первом запуске зависимости автоматически устанавливаются в .venv рядом со скриптом (нужен интернет).

Системный Python не изменяется. Python 3.11+ и компоненты Apple всё равно должны быть установлены заранее. Если macOS блокирует Запуск macOS.command, смотрите раздел «КАРАНТИН macOS» ниже.

Лаунчеры принимают те же флаги, например “Запуск Windows.cmd” —status или ./“Запуск macOS.command” —check. При запуске двойным щелчком после каждого действия нажмите Enter: вы вернётесь в главное меню. Для завершения выберите 0. При запуске с флагами выполняется одна команда без меню.

КАРАНТИН macOS И ПРАВА ЗАПУСКА

Скачанный ZIP и распакованные файлы могут получить метку com.apple.quarantine. Если macOS не открывает Запуск macOS.command из-за неизвестного разработчика:

  1. Попробуйте открыть Запуск macOS.command один раз и закройте предупреждение.

  2. Откройте «Системные настройки → Конфиденциальность и безопасность».

  3. В разделе «Безопасность» найдите сообщение о заблокированном файле и нажмите «Всё равно открыть» / Open Anyway, если такая кнопка появилась. Подтвердите открытие. Название кнопки зависит от языка и версии macOS.

Если это не помогло, снимите карантин только с распакованной папки CarrierSIM, полученной из этого архива. Ниже пример для папки Downloads/CarrierSIM. Если папка лежит в другом месте или переименована, замените путь в командах. Кавычки сохраняйте, особенно если в пути есть пробелы.

Откройте Terminal и выполните:

/usr/bin/xattr -r -s -d com.apple.quarantine “$HOME/Downloads/CarrierSIM”

Команда удаляет только метку карантина у этой папки и её содержимого. Флаг -s обрабатывает сами симлинки, не переходя к их целям. Отключать Gatekeeper для всего Mac или запускать эту команду через sudo не требуется. После этого снова откройте Запуск macOS.command двойным щелчком.

Если появляется ошибка Permission denied / «Нет разрешения на выполнение»:

chmod u+x “$HOME/Downloads/CarrierSIM/Запуск macOS.command”

Либо запустите лаунчер через bash (право выполнения тогда не требуется):

bash “$HOME/Downloads/CarrierSIM/Запуск macOS.command”

Для просмотра атрибутов конкретного файла:

/usr/bin/xattr -l “$HOME/Downloads/CarrierSIM/Запуск macOS.command”

Если com.apple.quarantine отсутствует, дело не в карантине.

Сообщение «No such xattr: com.apple.quarantine» означает, что этой метки уже нет. «No such file» означает неверный путь: найдите распакованную папку в Finder. При «Operation not permitted» перенесите папку в доступный вам каталог, например Downloads, и повторите с правильным путём; не добавляйте sudo.

Если macOS сообщает именно об обнаруженном вредоносном ПО или файл неожиданно изменился, не обходите это предупреждение: скачайте архив заново. Снятие карантина не устанавливает Python или компоненты Apple. Официальная инструкция Apple по разрешению открытия: https://support.apple.com/102445

ПОДГОТОВКА

  1. Распакуйте весь архив в доступную для записи папку.

  2. Установите Python 3.11 или новее (на Windows — x64).

  3. Windows: нужны службы и DLL Apple из настольного iTunes x64. Apple Devices / Microsoft Store автоматически не поддерживаются. На macOS используются системные библиотеки Apple, компилятор не нужен.

  4. При запуске через Start зависимости установятся автоматически. Для ручного запуска один раз выполните из этой папки: macOS: python3 -m pip install -r requirements.txt Windows: py -m pip install -r requirements.txt Если Python требует виртуальное окружение, сначала создайте и активируйте его.

  5. Подключите iPhone кабелем, включите нужные линии, разблокируйте, подтвердите доверие компьютеру. Завершите синхронизацию Finder/iTunes.

ЗАПУСК (на Windows замените python3 на py) python3 carrier.py —check

Проверить файлы и библиотеки, без телефона. python3 carrier.py —status Прочитать SIM и показать план, без записи. python3 carrier.py

Привязать Vodafone HU ко всем найденным SIM. python3 carrier.py —help

Все флаги с описанием на русском.

При нескольких телефонах добавьте —udid ID. Используется только USB. Скрипт не скачивает пакеты или DLL; интернет нужен для установки зависимостей. IMSI не выводится в консоль. В локальных копиях и журналах могут быть идентификаторы SIM и телефона: не публикуйте папку runs.

КОПИИ И ВОССТАНОВЛЕНИЕ

Каждая операция сохраняется в runs/ДАТА-ID. –restore (без пути) или пункт 4 меню удаляет все корневые ссылки с именем из 15 цифр — IMSI. Обычные ссылки операторов, содержимое пакетов и другие файлы сохраняются. После удаления выполняются обратное чтение и пересканирование. Показываются реально выбранные iOS пакеты и результат проверки их подписей. Это отключение подмены по IMSI, а не сброс всех настроек телефона.

–recover (без пути) или пункт 5 находит незавершённый этап для этого iPhone в папке runs. Если этапов несколько, скрипт останавливается для разбора, а не выбирает произвольный. Обычно адреса папок вводить не нужно.

Для ручного возврата к конкретной копии оставлен дополнительный флаг –restore-backup “runs/ДАТА-ID”. Копия сделана после установки триггера, и сам триггер остаётся в каталоге. Также можно явно указать —recover “ЭТАП”. Не удаляйте runs до окончания установки. При временном обрыве скрипт сначала восстанавливает незавершённый этап и только затем повторяет установку. Если восстановление не удалось, новая запись отменяется: используйте —recover.

Незавершённые этапы от прошлых запусков блокируют новую установку. Если сбой случился только при rescan, каталог уже записан: смотрите error.json. Не запускайте несколько копий скрипта одновременно.

Windows с нестандартной установкой Apple: py carrier.py —check —apple-dir “C:путьMobile Device Support” —apple-dir “C:путьApple Application Support”

Указывайте папки библиотек одной установленной версии Apple, не случайные DLL.

ПРОВЕРКА РЕЗУЛЬТАТА

Скрипт читает записанный каталог обратно, запускает пересканирование и ищет выбранные пакеты и результат проверки подписей в журнале CommCenter. Код выхода 0 — операция завершена; 1 — ошибка; 2 — каталог записан, но выбор нужного пакета не подтверждён журналом. Установка пакета не подтверждает работу n78, других частот или 5G. После установки включите авиарежим на 15 секунд и проверьте связь, звонки и интернет. Каталог CountryBundles не изменяется. Однако iOS может сама выбрать другую страну и пакет обслуживающей сети вслед за операторским пакетом.

ПРОВЕРЕНО

Локальные тесты выбора SIM, таблицы моделей, разрешения системных ссылок, сохранности файлов, восстановления и остановки перед записью; загрузка AirTraffic/CoreFoundation на macOS Apple Silicon. Полный цикл Python-транспортом и системными ссылками проверен на подключённом iPhone 17 / 27.0 (24A437): обе SIM выбрали Vodafone_hu, подписи приняты. Физический запуск на остальных моделях и Windows ещё не проверен. Это экспериментальная версия, а не гарантия совместимости с любым компьютером или будущей iOS.

Целевые пакеты: подписанные Apple файлы в установленной iOS телефона. IPCC-триггеры iOS 27.0 / 72.1: AVEA_tr: https://updates.cdn-apple.com/20260914/carrierbundles/140-93457/2A35FABC-3831-479D-9128-B57AD2C94A2D/AVEA_tr_iPhone.ipcc

SHA256 bb6bf489f93da2d3ef9f8a69ce819d6b90588af8177116b7ff2c8233811c7cac Swisscom_ch: https://updates.cdn-apple.com/20260914/carrierbundles/142-02578/9860B1D5-0761-4E45-A9C6-2161EDA569AD/Swisscom_ch_iPhone.ipcc

SHA256 2fe320c72e85853942ba1073d80f219cdee211a0423f5d980978a492662a999f Каталог: https://itunes.apple.com/WebObjects/MZStore.woa/wa/com.apple.jingle.appserver.client.MZITunesClientCheck/version/

Таблица устройств: https://api.ipsw.me/v4/devices?type=ipsw (2026-09-27).

iPhone 18 Pro: https://www.apple.com/iphone-18-pro/specs/

Протокол переноса основан на AirLift (0xjohnnydev/airlift, c75b3ea), лицензия MIT приложена.

Третий триггер — O2_Germany 72.1: https://updates.cdn-apple.com/20260914/carrierbundles/142-17747/8DA66AA2-999A-4D68-B89B-18312F54884D/O2_Germany_iPhone.ipcc

SHA256 5f8166b3e33d14230273b85320795f1eb1f29214d2c0594056d0b0e448c029f1 Он нужен, если две SIM одновременно пересекаются с AVEA и Swisscom.

Выбранный триггер не должен совпадать ни с одной из обнаруженных SIM.

ОЖИДАНИЕ И ПОВТОРНЫЕ ПОПЫТКИ

По умолчанию скрипт ждёт подключения и готовности iPhone до 180 секунд. После выбора устройства повторное подключение допускается только к нему.

Временные сбои связи: до 3 попыток, с восстановлением незавершённой операции перед повтором.

Постоянные ошибки (модель, подписи, повреждённая копия) не запускают слепой повтор. Числа можно изменить: —attempts 5 —wait-seconds 300.

После строки «Копии и журнал» установка ещё идёт. Дождитесь всех четырёх этапов и сообщения «Готово» с подтверждением профиля для SIM 1 / SIM 2.

Проверка проекта на VirusTotalПроверка проекта на VirusTotal

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев