Разработчики Google интегрировали в прошивку модема смартфонов Pixel парсер DNS, написанный на Rust. Это часть стратегии по внедрению memory-safe языков на уровне низкоуровневых компонентов и борьбы с целым классом уязвимостей памяти, которые исторически обнаруживаются в legacy-коде на C и C++.

Pixel 10 стал первым устройством серии, в модем которого встроили memory-safe язык. По словам разработчиков, в последние годы атакующие проявляют все больший интерес именно к сотовым модемам: кодовая база огромна, а сам модем представляет собой сложный и удаленно доступный вариант для атак.

«Новый парсер DNS на Rust значительно снижает риски, закрывая целый класс уязвимостей в проблемной зоне, и одновременно закладывает основу для более широкого внедрения memory-safe кода в других местах», — пишет Цзячэн Лу (Jiacheng Lu), инженер команды Google Pixel.

DNS-парсер выбрали для подготовки Rust-имплементации не случайно. Во-первых, протокол лежит в основе современной сотовой связи: даже базовые операции вроде переадресации вызовов сегодня опираются на DNS-сервисы. Во-вторых, сам протокол сложен и требует парсинга недоверенных данных, и в memory-unsafe реализации это исторически выливалось в out-of-bounds проблемы (например, как в случае CVE-2024-27227). Переписывание парсера на Rust устраняет целый класс подобных рисков.

В качестве основы разработчики взяли крейт hickory-proto (Rust-клиент, сервер и резолвер DNS) и доработали его для работы в bare metal и embedded-окружении. Чтобы справиться более чем с 30 зависимостями, тянущимися за крейтом, разработчики создали отдельный инструмент cargo-gnaw.

Отметим, что это не первая инициатива компании в области baseband-модемов. Еще в конце 2023 года эксперты Google рассказывали о роли санитайзеров Clang (IntSan и BoundSan) для обнаружения неопределенного поведения (undefined behavior). Кроме того, год спустя инженеры компании подробно описывали меры защиты прошивки от 2G-эксплоитов и атак на baseband, которые используют переполнения буфера для удаленного выполнения кода.

Параллельно с этим инженеры Google последовательно внедряют Rust в Android и низкоуровневые прошивки. В ноябре 2025 года компания сообщала, что в результате этих усилий доля уязвимостей, связанных с безопасностью памяти, в мобильной ОС опустилась ниже 20% от всех найденных багов за год.

Теперь же в Google подчеркивают, что внедрение DNS-парсера на Rust закладывает фундамент для дальнейшей интеграции memory-safe парсеров в baseband, и безопасность модема будет улучшаться и далее по мере развития кодовой базы.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии