Исследователь обошёл C2PA-защиту камеры Google Pixel через рут-эксплойт
Исследователь безопасности Дэвид Бьюкенен (известный под ником retr0id) опубликовал 25 августа статью, в которой показал, что система подтверждения подлинности C2PA на Android практически бесполезна. Камерные приложения с поддержкой C2PA полагаются на механизмы Key Attestation («аппаратное подтверждение ключей») и/или Google Play Integrity («проверка целостности Google Play»), чтобы не дать пользователю подписать произвольный файл вместо реального снимка с сенсора устройства. Если эти механизмы обойти, вся модель доверия C2PA рушится.
Обойти их можно двумя способами. Первый, рут-эксплойт, повышающий привилегии программно: на момент публикации в открытом доступе уже есть эксплойт, работающий одним кликом даже на полностью пропатченных устройствах Google Pixel (уязвимость CVE-2026-43499). Второй, дешёвые аппаратные атаки с инъекцией сбоев (глитчинг), которые дают рут-доступ независимо от версии прошивки и в принципе не закрываются программным патчем.
Автор целенаправленно атаковал именно приложение Pixel Camera, потому что, по собственным словам Google, оно получило Assurance Level 2, высший уровень достоверности, определённый программой C2PA Conformance Program, и для мобильных приложений этот уровень на сегодня достижим только на Android. Бьюкенен подписал через это приложение сгенерированное нейросетью изображение, и система C2PA пометила его как настоящую неотредактированную фотографию; отдельно он подписал видео на YouTube, в описании которого появилась пометка «снято на камеру», хотя это не так (позже Google вручную убрал эту пометку из описания видео, никак это не прокомментировав).
Механизм атаки: Key Attestation проверяет, заблокирован ли загрузчик устройства, принадлежат ли ключи AVB (Android Verified Boot) производителю и стоит ли на устройстве последнее обновление безопасности. Обычный рут через разблокировку загрузчика эти проверки фиксируют, и серверы Google отказываются выдавать такому устройству ключи C2PA. Но при руте через эксплойт все три проверки остаются «чистыми», загрузчик формально заблокирован, ключи AVB не менялись, обновление стоит то же самое, и серверы Google по-прежнему выдают ключи скомпрометированному устройству. Сами ключи хранятся в защищённом чипе StrongBox (Titan M2 на новых Pixel) и не извлекаются даже с рут-правами, но атакующему это и не нужно: получив рут, он может попросить StrongBox подписать этими ключами любые данные, в том числе поддельное изображение (или, как отмечает автор, расшифровать переписку в Signal).
Для демонстрации Бьюкенен собрал инструментарий: рутовал полностью пропатченные Pixel с помощью открытого инструмента Root My Pixel (лично проверено на Pixel 8a и 9a) и написал утилиту keystork, клиент-серверный инструмент, который обращается к системному API хранилища ключей Android от имени любого установленного приложения через сокет, проброшенный по ADB. Готовый PoC-скрипт «подписать любое изображение», работающий против приложения Pixel Camera, опубликован на GitHub.
Бьюкенен сообщил об уязвимостях в Google не менее чем за 90 дней до публикации. Google закрыл отчёт со статусом «не будет исправлено (нереализуемо)», но отдельно выплатил автору вознаграждение $7500 по программе поиска уязвимостей, при этом прямо указав, что аппаратный глитчинг и атаки по побочным каналам формально не входят в область действия этой программы. То есть тот вектор атаки, который автор считает самым очевидным, программа вознаграждений Google в принципе не покрывает.
Проблема не ограничена Pixel: по словам автора, все проверенные им другие приложения-«C2PA-камеры» на Android опираются на те же Key Attestation или Play Integrity и ломаются тем же способом, значит, атакующему не обязательно рутовать именно Pixel, подойдёт любое, даже самое дешёвое и уязвимое Android-устройство. Публичный список «конформных» реализаций C2PA существует, и, по оценке автора, все приложения из этого списка, использующие в качестве метода аттестации Android_KeyAttestation или Google_PlayIntegrity, скорее всего уязвимы так же.
Полностью закрыть проблему сложно даже теоретически. Использованный автором приём (изменение битов в записях таблиц страниц памяти, PTE) по-прежнему работает на Pixel, но перестал работать на устройстве Samsung после обновления, включившего защиту Samsung RKP (Real-time Kernel Protection), она использует гипервизор уровня EL2, чтобы запретить перезапись определённых областей памяти даже при удавшемся аппаратном глитчинге. У автора есть непроверенные пока идеи, как обойти и эту защиту. Более глубокие аппаратные меры вроде Intel MEE или Apple SEP Memory Protection Engine считают всю внешнюю память DRAM недоверенной, но недостаточно быстры, чтобы прогонять через них всё Linux-ядро Android целиком (поэтому Apple применяет такую защиту только для своего SEP, а не для основного процессора, а Intel вовсе убрал похожую функцию из новых версий SGX). Полноценное решение потребовало бы переписать весь конвейер обработки изображений, включая ИИ-обработку, так, чтобы он выполнялся внутри аппаратно защищённого анклава, Бьюкенен не верит, что Google пойдёт на это, тем более что даже такая защита не остановит более простую атаку «сфотографировать экран».
Тем же приёмом с аппаратным глитчингом автор рутовал и другие устройства, например, ТВ-приставку Amazon Fire TV Stick и VR-гарнитуру Meta Quest 3s. При этом Meta уже закрыла ту же уязвимость CVE-2026-43499 на гарнитурах Quest в начале месяца, чтобы игроки не могли жульничать в VR-играх, тогда как на момент публикации у флагманских Pixel от Google патча всё ещё не было. Apple, по слухам, разрабатывает собственное решение для подтверждения происхождения медиаконтента, но оно пока не выпущено.
Автор благодарит доктора Нила Кравеца из Hacker Factor, который годами указывает на слабости C2PA и помогал координировать раскрытие уязвимостей, а также рабочую группу по оценке стандартов происхождения и подлинности контента (PASAWG), изучающую ту же проблему. Отдельно он упоминает, что во время подготовки статьи нашёл ещё одну, отдельную уязвимость, утечку приватного ключа, сообщил о ней Google за два дня до публикации, и, по его данным, патч вышел уже на следующий день.
Ключевые факты
- C2PA-камеры на Android держатся на Key Attestation и Play Integrity; рут-доступ ломает саму модель доверия
- Публичный рут-эксплойт CVE-2026-43499 работает одним кликом даже на полностью пропатченных Pixel; отдельно есть дешёвые аппаратные атаки-глитчинг, которые патчем не закрыть в принципе
- Автор подделал ИИ-изображение и видео, которые Pixel Camera (Assurance Level 2, высший уровень C2PA) и YouTube пометили как «снятые камерой»
- Google заплатил за находку $7500, но закрыл отчёт статусом «не будет исправлено (нереализуемо)»: аппаратный глитчинг формально вне области действия программы вознаграждений
- Проблема не ограничена Pixel, любое Android-приложение с C2PA на тех же механизмах аттестации уязвимо так же
Почему это важно
C2PA продают как криптографическое решение проблемы ИИ-подделок: камера подписывает кадр в момент съёмки, и подпись потом можно проверить. Эта работа показывает, что на Android, платформе, где, по собственным словам Google, реализация C2PA достигла максимального уровня достоверности из возможных, вся конструкция держится на программной проверке целостности устройства, а не на физике. Рут-доступ, полученный программно или аппаратно, полностью снимает эту проверку, и подделка становится неотличима от подлинника для самой системы верификации. Это удар не по одной уязвимости, а по базовому доверию к маркировке «снято камерой» как таковой.
Кому это важно
СМИ и платформам, которые рассматривают C2PA-метки как доказательство подлинности контента; разработчикам камерных приложений и производителям Android-устройств, встраивающим C2PA; регуляторам и организациям, продвигающим C2PA как ответ на дипфейки; специалистам по безопасности и верификации контента, которым придётся объяснять клиентам и редакциям, почему «подтверждённое камерой» не равно «настоящее».
Как это применить
Практического применения для обычного читателя нет, это предупреждение, а не инструкция. Значимо для тех, кто строит системы верификации: нельзя полагаться на C2PA-метку Android-устройства как на достаточное доказательство подлинности, особенно если приложение указывает Android_KeyAttestation или Google_PlayIntegrity как метод аттестации в списке конформных реализаций C2PA. Автор опубликовал инструменты (Root My Pixel, keystork) и PoC-скрипт на GitHub, они существуют как исследовательский код, демонстрирующий саму возможность подделки, а не как готовый продукт для массового злоупотребления.
Можно ли доверять
Источник, личный технический блог исследователя с проверяемым послужным списком (более ранняя работа по аппаратному рутованию с помощью зажигалки), с точными техническими деталями, ссылками на CVE и на опубликованный код. Google подтвердил ценность находки собственным ответом по программе вознаграждений (процитирован в статье) и выплатой $7500, а также формальным закрытием отчёта со статусом «не будет исправлено», то есть фактически не оспаривает саму уязвимость. Проблему годами поднимает и независимый исследователь Нил Кравец. Слабое место, это по-прежнему рассказ одной стороны о собственном исследовании без независимого повторения тестов третьими лицами.
Риски и подводные камни
Автор лично проверял технику лишь на Pixel 8a и 9a, а полный список уязвимых моделей и приложений не приводит, оценка «уязвимы все» основана на общем устройстве механизма, а не на проверке каждого устройства. Полные технические детали аппаратной атаки с глитчингом автор сознательно не раскрывает, оставляя их для будущей статьи. Устройства Samsung с включённой защитой RKP частично устойчивы к использованному приёму, у автора есть лишь нереализованные пока идеи обхода. Наконец, даже гипотетическая переработка Android под аппаратно защищённый анклав не остановила бы простейшую атаку «сфотографировать экран», так что предела у проблемы, по сути, нет.
«Спасибо, что отправили нам отчёт. Хотя аппаратный глитчинг и атаки по побочным каналам не входят в область действия нашей программы вознаграждений за уязвимости, наша служба безопасности сочла ваши находки ценными, и предоставленные вами данные помогут нам улучшить будущие версии продукта.»
— Google, официальный ответ по программе поиска уязвимостей
Компания Meta Platforms признана экстремистской организацией, её деятельность на территории РФ запрещена.