CVE-2026-15461 in ZephyrИнформация

Сводка

по VulDB • 10.09.2026

В драйвере GNSS модема Sierra Wireless HL78xx (drivers/modem/hl78xx/, позже drivers/modem/vendor_standalone/hl78xx/) структура match_data типа struct gnss_nmea0183_match_data встроена внутрь структуры hl78xx_gnss_data. Вспомогательная функция сопоставления NMEA0183 (drivers/gnss/gnss_nmea0183_match.c) требует, чтобы контекст был первым элементом, поскольку её обратные вызовы напрямую преобразуют user_data в struct gnss_nmea0183_match_data. В затронутых версиях match_data являлась вторым элементом (после const struct device dev), поэтому она находилась по смещению, отличному от нуля, тогда как функция gnss_nmea0183_match_init() инициализировала её по правильному адресу. Зарегистрированные обработчики NMEA вместо этого передают весь объект данных устройства (data->devices.gnss->data, offset 0), что приводит к type confusion со смещением между местом инициализации состояния и местами его чтения/записи в обратных вызовах парсера.

При разборе предложений NMEA от приемника GNSS обработчики GGA/RMC записывают распознанные данные фиксации (fix data) по неверному адресу внутри структуры, а обработчик GSV (gnss_nmea0183_match_gsv_callback, активный при CONFIG_GNSS_SATELLITES) считывает указатель на спутники и его границы из неправильных смещений — байтов без указания адреса в структуре hl78xx_gnss_data — а затем записывает распознанные записи struct gnss_satellite через этот ложный указатель. Это представляет собой запись данных по неинициализированному/дикому (wild) указателю с мусорным значением границы.

Обработчики NMEA регистрируются по умолчанию (CONFIG_HL78XX_GNSS_SOURCE_NMEA является источником GNSS по умолчанию) на устройствах, использующих GNSS HL78xx. Драйвер работает в контексте ядра, а данные NMEA поступают от радиочастотного тракта приемника GNSS, поэтому сторона, способная повлиять на сигнал GNSS (например, спуфинг GNSS/GPS вблизи радиоаппаратуры), может заставить парсер на стороне ядра выполнить ошибочную запись. Наиболее вероятным последствием является сбой системы (denial of service), поскольку ложный указатель разрешается в фиксированное значение, близкое к NULL; возможна также коррупция соседней памяти на целевых платформах без MMU. Конфиденциальность не затрагивается. Для эксплуатации требуется включенная и активная функция спутников, поэтому сложность атаки высока.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Ответственный

Zephyr

Резервировать

10.07.2026

Раскрытие

10.09.2026

Модерация

принято

Вход

VDB-402103

EPSS

0.00000

KEV

Нет

Деятельности

Очень низкий

Источники

Want to know what is going to be exploited?

We predict KEV entries!