Может ли оператор сети GSM получить доступ к версии прошивки устройства?
Может ли оператор сети GSM получить доступ к версии прошивки устройства?
Насколько мне известно, они могут читать IMSI и IMEI или расширенный IMEI, а именно IMEI-SV, который кодирует какую-то нумерацию версий (но не используется всеми производителями.
Может ли поставщик телекоммуникационных услуг каким-либо другим способом узнать версию прошивки модема или как-то запросить устройства?
Можно ли использовать AT-команды? Могут ли они быть выполнены в масштабе для запроса всей сети с миллионами устройств (если это даст номер версии прошивки)
2 ответа
Во-первых, стоит сказать, что большая часть обсуждения ниже относится к мобильным сетям в целом, а не только к сети "GSM".
У большинства операторов есть сети, которые используют и смешивают технологии сетей 2G, 3G, 4G и т. Д., И даже эти термины не являются строгими определениями (дополнительные сведения о сетях разных поколений и общем именовании см /questions/41256275/otobrazhenie-konstant-ios-7-v-2g-3g-4g-lte-i-t-d/41256288#41256288)
3GPP, орган стандартизации, стоящий за большинством мобильных сетей, обсудил управление устройствами, и существует по крайней мере несколько проектов, которые охватывают такие детали, как прошивка, версия ОС и т. Д., Например:
- 3GPP TR 32.802 - Технико-экономическое обоснование управления пользовательским оборудованием (UEM) https://www.3gpp.org/ftp/tsg_sa/TSG_SA/TSGS_14/Docs/PDF/SP-010652.pdf
Open Mobile Alliance также разработал спецификацию для управления устройствами, и это, вероятно, будет иметь большее значение. Вы можете видеть, что версия прошивки включена в данные, указанные в их спецификациях:
- Стандартизированные объекты управления устройствами OMA - https://www.openmobilealliance.org/release/DM/V1_2-20070209-A/OMA-TS-DM_StdObj-V1_2-20070209-A.pdf
Термин "прошивка" также немного неоднозначен - если вы хотите почувствовать версию ОС мобильного телефона, iPad и т. Д., Подключение к сети, вы можете работать на более высоком уровне и просматривать заголовки в HTTP-запросах от устройства, особенно в строке пользовательского агента. Например, запрос из браузера на iPhone может включать:
Mozilla / 5.0 (iPhone; CPU iPhone OS 10_3_1, например Mac OS X) AppleWebKit/603.1.30 (KHTML, например Gecko) Версия / 10.0 Mobile / 14E304 Safari / 602.1
(см. больше примеров здесь: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent)
В частности, для модемов стоит упомянуть спецификацию TR-069 для управления CPE (Customer Premise Equipment). Эта спецификация принадлежит миру широкополосного доступа и продиктована интернет-провайдерами, и операторы широкополосной связи должны управлять беспроводными (и проводными) модемами в домах и помещениях своих клиентов. Он также встроен в некоторые GSM-модемы, поэтому стоит также знать о нем - спецификация здесь:
Обратите внимание, что ссылки выше верны на момент написания - если они не работают, просто найдите номера спецификаций.
Я не знаю ни одного стандарта уровня протокола, заставляющего сотовое устройство (не только GSM) уведомлять о своей версии FW. Фактически, он не играет никакой роли в сетевой регистрации, как, например, IMEI и IMSI (которые используются для гарантии идентичности абонента и устройства).
В любом случае несколько операторов управляют версиями FW (и SW) устройств через протоколы, определенные OMA Alliance:
Протокол OMA-DM, который позволяет оператору сети получать (и устанавливать!) Несколько настроек: не только версии FW (используемые для развертывания обновлений FW), но также настройки режима SMS или APN и т. Д.
Например, в документе спецификации OMA-TS-DM_StdObj-V1_2-20070209-A описан объект управления DevDetail:
DevDetail _____ [...] |__ DevType |__ OEM |__ FwV |__ Swv |__ Hwv |__ [...]
Каждая информация получается / устанавливается / выполняется путем предоставления
CMD URI
команда, такая какGET /DevDetail/FwV
Протокол LwM2M (Light Weight Machine To Machine), более новый стандарт, подходящий для сетей с низкой пропускной способностью (например, LTE CAT-M, специально для устройств IoT).
В этом легком протоколе обмен данными осуществляется через CoAP через UDP (или его защищенные двойные CoAP на основе DTLS). Каждая информация доступна с помощью URI, состоящего из (до) четырех UINT16:
<Obj ID>[/<Obj Instance>[/<Resource ID>[/<ResourceInstance>]]]
Например, в документе спецификации LwM2M Specification 1.1 описан объект устройства (ID объекта 3):
/3/0/3 : FW version /3/0/18 : HW version /3/0/19 : SW version