Начните вводить, чтобы искать

GemiGuard

База знаний · IMEI · Pixel · GrapheneOS

IMEI на Google Pixel: что его удерживает и почему его не меняют

Это один из самых частых вопросов, которые мы получаем от клиентов, заказывающих Google Pixel с GrapheneOS. Разбираем, где физически хранится IMEI в Pixel, какой механизм защищает его от изменения, почему этот механизм не является аппаратным предохранителем, что на самом деле делают программы «подмены IMEI» и почему они не решают ни одной практической задачи.

Время чтения: 14 мин

Краткий ответ

На Google Pixel, работающем в штатном состоянии — с заблокированным загрузчиком, включённой проверенной загрузкой и без root-доступа, — IMEI изменить невозможно. Это касается и заводской Android, и GrapheneOS, и любой другой операционной системы: ни у одной из них нет пути записи к тем данным, из которых модем берёт свой идентификатор.

Операционная система здесь вообще не является определяющим фактором. IMEI принадлежит не Android, а модему — отдельному процессору с собственной прошивкой, собственной памятью и собственным контролем целостности. Замена ОС на устройстве не меняет ни содержимое этой памяти, ни правила, по которым модем её проверяет.

Точность формулировки имеет значение, поэтому приводим её прямо: неизменность IMEI на Pixel обеспечивает не однократно программируемая аппаратная ячейка, а проверка целостности внутри подписанной прошивки модема в сочетании с проверенной загрузкой. Разница между этими двумя механизмами существенна, и ниже мы объясняем, почему.

Какое оборудование здесь задействовано

Все Pixel на платформе Google Tensor — от Pixel 6 до Pixel 10 включительно — используют сотовый модем Samsung семейства Shannon (Exynos). Серии Pixel 9 и Pixel 10 работают с модемом Exynos 5400: несмотря на перевод производства самого процессора Tensor G5 на TSMC, радиочасть Google оставил без изменений.

Модем представляет собой отдельный вычислительный блок. GrapheneOS описывает его как изолированный компонент: доступ к памяти разграничен через IOMMU и ограничен внутренней памятью и теми областями, которые драйвер явно предоставляет в совместное использование. Wi-Fi, Bluetooth и спутниковая навигация на разных поколениях реализованы либо внутри этого же модема в отдельных песочницах, либо на отдельных микросхемах.

Практический вывод прост: всё, что относится к сотовой связи — регистрация в сети, аутентификация, передача IMEI в ходе процедур сигнализации, — происходит внутри модема. Android видит только результат.

Где на Pixel физически хранится IMEI

Публично задокументированная структура хранения на Tensor-устройствах выглядит так.

Раздел devinfo. Небольшой раздел объёмом 8192 байта без файловой системы. Он содержит заголовок и две области тегов. В теговой области PS хранятся строковые значения, записываемые на заводе однократно: серийные номера, MAC-адреса, а также теги imei1 и imei2. Для Tensor-устройств именно devinfo является источником истины — в отличие от платформ Qualcomm, где первичным является EFS.

Энергонезависимая память модема (EFS). Значения IMEI дублируются в NV-элементах модема — в частности CAL.Common.Imei и CAL.Common.Imei_2nd. Это рабочая копия, с которой оперирует радиочасть.

Контрольное значение cpsha. В разделе persist, по пути /mnt/vendor/persist/modem/cpsha, в текстовом виде хранится контрольная сумма SHA-256, вычисленная прошивкой модема на основании значений IMEI. Это и есть ключевой элемент защиты.

Логика проверки такова: при запуске модем сверяет IMEI из раздела devinfo с контрольной суммой cpsha. Если значения не совпадают, модем не пытается «исправить» ситуацию и не использует подменённый номер — он сообщает 000000000000000 и на экран по коду *#06#, и в сеть. Устройство просто теряет сотовую связь.

Три уровня, которые удерживают IMEI неизменным

Уровень первый: требование отраслевых стандартов

Спецификация 3GPP TS 22.016 в действующей редакции формулирует требование без оговорок: IMEI должен быть уникальным и не может изменяться после завершения производственного цикла оборудования; он должен противостоять вмешательству — манипуляциям и изменению — любыми средствами, в том числе физическими, электрическими и программными.

Документ GSMA TS.06 повторяет это требование и добавляет к нему собственные технические принципы безопасности IMEI, отдельно отмечая, что стандарты 3GPP требуют непрограммируемости IMEI, но не описывают, как именно производитель должен этого добиться.

Это важный момент. Стандарт задаёт результат, а не механизм. Каждый производитель выбирает собственную реализацию, и именно поэтому стойкость защиты различается от платформы к платформе.

Уровень второй: контроль целостности внутри прошивки модема

Это собственно реализация Google. Прошивка модема подписана и загружается под контролем проверенной загрузки. Она вычисляет контрольную сумму SHA-256 по алгоритму и с ключевым материалом, которые остаются внутри самой прошивки, и сверяет с ней содержимое devinfo.

Попытки воспроизвести этот алгоритм извне успехом не увенчались. Даже в случае успеха нет никаких гарантий, что Google будет использовать тот же ключевой материал в последующих версиях прошивки.

Уровень третий: проверенная загрузка и заблокированный загрузчик

Оба задействованных в схеме раздела недоступны для записи в штатном режиме работы. Запись в devinfo требует прямого доступа к блочному устройству, запись в /mnt/vendor/persist — прав суперпользователя. Ни обычное приложение, ни системное приложение без специальных привилегий, ни сама операционная система в нормальном режиме такого доступа не имеют.

На Pixel получение root-доступа требует разблокировки загрузчика. Разблокированный загрузчик отключает проверенную загрузку — тот самый механизм, на котором держится доверие ко всему остальному: к аппаратной аттестации ключей, к StrongBox на базе Titan M2, к защите от отката версий. GrapheneOS прямо квалифицирует устройство с разблокированным загрузчиком как незавершённую установку и не оказывает поддержку в таком состоянии.

Это не аппаратный предохранитель — и это принципиально

Распространённое представление о том, что IMEI в современных смартфонах «прожжён» в однократно программируемую ячейку (eFuse), для Pixel не подтверждается ни одним публичным источником. Аппаратные предохранители в этих платформах действительно используются — для счётчиков защиты от отката версий, для фиксации состояния загрузчика, для хранения отпечатков ключей корня доверия. Но задокументированный механизм защиты IMEI имеет иную природу: это криптографическая привязка, вычисляемая и проверяемая программно.

Различие не является формальным. Однократно программируемая ячейка физически не поддаётся перезаписи — обойти её невозможно в принципе. Проверку в прошивке обойти сложно, но принципиально возможно, если заставить саму прошивку пересчитать контрольную сумму для новых значений. Именно это и было сделано.

Мы считаем правильным изложить это прямо, а не повторять удобное, но неточное утверждение о физической невозможности. Клиент, принимающий решение относительно собственной модели угроз, должен опираться на точную картину.

Что известно об обходе и чего он стоит

В сообществе исследователей задокументирована процедура, которая на части поколений Pixel позволяла записать произвольный IMEI так, чтобы модем принял его и сообщал в сеть. Схема заключалась в изменении тегов imei1 и imei2 в разделе devinfo, переводе устройства в заводской режим загрузки и отправке модему служебной AT-команды AT+GOOGGETIMEISHA, которая заставляла прошивку пересчитать контрольную сумму уже для новых значений. Полученный результат записывался в файл cpsha.

Состояние этого направления на сегодня выглядит так.

Процедура никогда не работала без root-доступа. Все известные реализации прямо указывают root как обязательное условие. Это означает разблокированный загрузчик и отключённую проверенную загрузку.

Google последовательно закрывает этот путь. Команда AT+GOOGGETIMEISHA изъята из образа радиочасти. Автор наиболее распространённого сценария прекратил сопровождение, отметив, что с выходом Android 16 QPR1 сценарий больше не работает. Участники сообщества сообщали о неудачных попытках на Android 14, 15 и 16 на протяжении всего первого полугодия 2026 года.

На серии Pixel 10 процедура неприменима. Исследователи прямо предостерегают от попыток — результатом становится неработоспособное устройство.

Алгоритм вычисления контрольной суммы не воспроизведён. Без этого обход остаётся зависимым от наличия служебной команды в конкретной версии прошивки, а не от понимания самой схемы.

Теперь о цене. Pixel с GrapheneOS покупают ради конкретного набора свойств: проверенная загрузка от корня доверия при каждом запуске, аппаратная аттестация, ограничение числа попыток подбора пароля на уровне защищённого элемента, устойчивость к инструментам извлечения данных. Каждое из этих свойств является производным от заблокированного загрузчика. Разблокировка ради смены IMEI обменивает весь этот набор на один изменённый идентификатор — притом что самой выгоды от такой замены, как показано ниже, не существует.

Мы не рекомендуем такую модификацию.

Программная подмена IMEI: что она делает на самом деле

Отдельно существует класс приложений, позиционирующих себя как средства «смены IMEI»: модули для Xposed и LSPosed вроде IMEI Masker, Android Faker, SpoofMyDevice.

Механизм их работы не имеет ничего общего с модемом. LSPosed представляет собой фреймворк перехвата вызовов в среде выполнения ART. Модуль подменяет значение, возвращаемое методами класса TelephonyManager — и только для тех приложений, которые пользователь заранее отметил в настройках модуля. Новое приложение, установленное после этого, получит настоящее значение, пока его не добавят в перечень вручную.

Что остаётся неизменным:

  • Код *#06# показывает настоящий IMEI, поскольку это значение поступает от модема, а не от Android.
  • Сеть получает настоящий IMEI, поскольку его передаёт модем в ходе процедур сигнализации, не обращаясь к Android вообще.
  • Root-доступ остаётся обязательным — со всеми последствиями, описанными выше.

То есть инструмент меняет ответ операционной системы отдельным приложениям и не меняет ничего из того, что видит оператор или кто-либо с доступом к сетевой инфраструктуре.

Задачи, которой не существует со времён Android 10

Ключевой вопрос относительно любого средства подмены IMEI на уровне ОС: какую именно проблему оно решает?

Начиная с Android 10, сторонним приложениям доступ к неизменяемым аппаратным идентификаторам закрыт полностью. IMEI, MEID, серийный номер, серийный номер SIM-карты и идентификатор абонента защищены разрешением READ_PRIVILEGED_PHONE_STATE. Это разрешение выдаётся только приложениям, подписанным платформенным ключом, и привилегированным системным компонентам. Приложения из Google Play объявить его не могут.

Приложение, рассчитанное на Android 10 или более новую версию и пытающееся прочитать IMEI, получает SecurityException. Устаревшие приложения получают пустое значение или заполнитель. Исключение составляет только текущее приложение для SMS и MMS.

GrapheneOS наследует это ограничение полностью и дополнительно убирает устаревший путь доступа к серийному номеру.

Таким образом, сценарий «приложение следит за мной через IMEI» на современном Pixel не реализуется независимо от наличия каких-либо модулей подмены. Мы не смогли определить ни одной практической задачи, которую программная подмена IMEI решает на устройстве с Android 10 или более новой версией. Издержки же вполне реальны: root, разблокированный загрузчик и потеря проверенной загрузки.

Даже настоящая смена IMEI не скрывает устройство в сети

Предположим на минуту, что IMEI всё-таки изменён на уровне модема. Анонимности в сотовой сети это не даёт.

Проект GrapheneOS формулирует это сжато: IMEI не является единственным аппаратным идентификатором устройства, доступным сотовой сети, и смена одного лишь IMEI скрывает один распространённый идентификатор, а не делает устройство неидентифицируемым.

Что остаётся доступным для сети:

Профиль возможностей устройства. При регистрации устройство передаёт сети подробный перечень собственных радиотехнических возможностей — поддерживаемые диапазоны, комбинации агрегации несущих, категории пропускной способности, алгоритмы безопасности, набор поддерживаемых служб. Исследователи в области безопасности сотовых сетей показали, что этот обмен происходит до аутентификации, без защиты целостности и без проверки со стороны сети, и что его достаточно для определения модели устройства.

Радиочастотный отпечаток. Физические характеристики передатчика — остаточное смещение частоты, нелинейности усилителя, переходные процессы — уникальны для каждого экземпляра оборудования и поддаются классификации. В публикациях, посвящённых идентификации по радиочастотному отпечатку на основании преамбулы PRACH, для 5G-смартфонов приводится точность классификации около 92 % при отношении сигнал/шум 25 дБ. Ни один программно записанный идентификатор на это не влияет.

Идентификаторы абонента. IMSI или SUPI привязаны к SIM-карте, а не к аппарату. Постоянный IMEI с разными SIM-картами и постоянная SIM-карта с изменённым IMEI одинаково образуют заметную корреляцию.

Дополнительный фактор — редкость. Нетипичное поведение само по себе является идентифицирующим признаком. GrapheneOS отдельно отмечает применительно к конфигурациям с ротацией идентификаторов, что они резко выделяют пользователя на фоне остальных абонентов именно в силу своей немногочисленности, и это облегчает отслеживание.

Позиция проекта GrapheneOS

Официальная документация GrapheneOS формулирует позицию в одном предложении: изменить IMEI на серийном устройстве невозможно, и GrapheneOS не может добавить такую возможность, поскольку её не поддерживает аппаратная платформа.

Этот ответ относится к устройству в том состоянии, в котором GrapheneOS предназначена работать: с заблокированным загрузчиком и проверенной загрузкой. Именно в таком состоянии мы передаём устройства клиентам.

Заключение

IMEI на Google Pixel принадлежит модему, а не операционной системе. Его удерживают три вещи: требование стандартов 3GPP и GSMA, проверка целостности SHA-256 внутри подписанной прошивки модема и проверенная загрузка с заблокированным загрузчиком.

Это не аппаратный предохранитель. Обход технически существовал на части поколений, требовал root-доступа, последовательно закрывается производителем и неприменим к Pixel 10. Ценой такого обхода является полный отказ от тех свойств безопасности, ради которых и покупают Pixel с GrapheneOS.

Программные средства «подмены IMEI» работают на другом уровне — они меняют ответ Android отдельным приложениям и не меняют ничего из того, что передаётся в сеть. При этом со времён Android 10 сторонние приложения вообще не имеют доступа к IMEI, так что проблемы, которую эти средства якобы решают, на современном устройстве не существует.

Если задача состоит в том, чтобы не быть отслеженным через сотовую сеть, IMEI — не то направление, на котором стоит сосредоточить усилия. Режим полёта полностью отключает приём и передачу сотовой радиочасти, оставляя Wi-Fi доступным, — и это единственный способ исключить отслеживание устройства сетью.

Pixel 8, Pixel 9 и Pixel 10 с GrapheneOS. Мы подбираем модель под вашу модель угроз, устанавливаем GrapheneOS, блокируем загрузчик и передаём устройство с полным руководством по эксплуатации. Подробнее о GrapheneOS →

Связанные материалы: Pixel с GrapheneOS · обфускация IMEI на GL.iNet Mudi.

Источники

Стандарты

  • 3GPP TS 22.016 «International Mobile station Equipment Identities (IMEI)», V19.0.0 (2025-10), раздел 2. — 3gpp.org
  • GSMA TS.06 «IMEI Allocation and Approval Process», V27.0 (06.01.2025), раздел 7 «IMEI Security and Integrity Guidelines». — imeidb.gsma.com

Документация GrapheneOS

  • GrapheneOS, Usage guide, раздел «Carrier functionality» — утверждение о невозможности смены IMEI на серийном устройстве. — grapheneos.org
  • GrapheneOS, FAQ, «Can apps access hardware identifiers?» — grapheneos.org
  • GrapheneOS, FAQ, «Is the baseband isolated?» — grapheneos.org
  • GrapheneOS, FAQ, «What does GrapheneOS do about cellular tracking, interception and silent SMS?» — grapheneos.org
  • GrapheneOS, FAQ, о разблокированном загрузчике как незавершённой установке. — grapheneos.org
  • GrapheneOS, публикация от 17.10.2024 о недостаточности смены одного лишь IMEI. — grapheneos.social

Ограничения доступа к идентификаторам в Android

  • Android Developers, «Privacy changes in Android 10», раздел о неизменяемых идентификаторах. — developer.android.com
  • Android Open Source Project, «Device identifiers». — source.android.com

Механизм хранения IMEI в Tensor-устройствах

  • lexipwn — инструмент и техническое описание структуры раздела devinfo, механизма cpsha и команды AT+GOOGGETIMEISHA. — codeberg.org
  • Privacy Guides Community, обсуждение «Pixel (Tensor chip) IMEI modification guide», в том числе сообщения об изъятии команды AT+GOOGGETIMEISHA из образа радиочасти и о неработоспособности процедуры на Pixel 10. — discuss.privacyguides.net
  • Pixel-IMEI-Restore — независимое описание той же последовательности действий. — github.com

Аппаратная платформа

  • 9to5Google, об использовании модема Exynos 5400 в Tensor G5 и серии Pixel 10. — 9to5google.com

Идентификация устройства в сети помимо IMEI

  • Shaik et al., «Show Me Your Attach Request and I’ll Tell You Who You Are: Practical Fingerprinting Attacks in 4G and 5G Mobile Networks» — о передаче перечня возможностей устройства до аутентификации без защиты.
  • «Radio Frequency Fingerprint Identification for 5G Mobile Devices Using DCTF and Deep Learning», Sensors. — pmc.ncbi.nlm.nih.gov

Средства программной подмены идентификаторов

  • LSPosed — фреймворк перехвата вызовов ART. — github.com
  • Репозиторий модулей LSPosed: Android Faker, SpoofMyDevice, IMEI Masker. — modules.lsposed.org

Нужны эти модели оптом? Напишите нам

ЮМОР · ПОДАРКИ · TSODS

Как сделать свою женщину счастливой: научное руководство из 24 шагов

Сатирическое руководство от Международного института домашней гармонии: почему пылесос — не подарок, как тайно узнать её размер, зачем покупать комплектами и при чём здесь стабильный Wi-Fi. В партнёрстве с TSODS.

VPN · PIXEL · GRAPHENEOS

VPN на Pixel с GrapheneOS: почему приложение в телефоне не закрывает весь трафик

Механизм принуждения в Android применяется к идентификаторам приложений, а системные идентификаторы исключены из него на уровне сетевой подсистемы. Какие категории Google прямо называет выведенными из-под туннеля, почему раздача интернета не попадает в него никогда, откуда берутся утечки DNS и какая единственная конфигурация — сотовая связь выключена, только Wi-Fi, туннель на маршрутизаторе — не даёт утечек.

GPS · ЛОКАЦИЯ · АППАРАТНЫЙ АНАЛИЗ

GPS и локационная телеметрия в GL.iNet Mudi GL-E750V2 и Puli GL-XE300

Передают ли Mudi и Puli GPS-координаты пользователя? Короткий ответ — нет. Подробное объяснение аппаратной конфигурации, статуса GPS в прошивке GL.iNet и как самостоятельно проверить через AT-команды. Контекст относительно триангуляции базовых станций.

Свяжитесь с нами через удобный канал

Напишите, какая модель и сколько единиц нужно — и получите оптовую цену и подтверждение наличия прямо в Telegram. Без анкет и условий.