Исследователи из Calif и OpenAI рассказали о эксперименте, в ходе которого ИИ-агент Codex прошёл путь от выполнения кода в браузерном приложении до получения root-доступа (uid=0) на Samsung Smart TV. Агент обнаружил уязвимость в драйвере тайваньского производителя чипов Novatek, самостоятельно создал рабочий эксплойт и подтвердил успешное взломанное состояние сообщением «Worked». Подробности и PoC доступны на GitHub.
Для начала специалисты обеспечили первичный доступ через браузерное приложение и передали Codex исходные коды прошивки Samsung KantS2 (выпуск февраля 2020 года, Linux 4.1.10), инструменты для сборки ARM-бинарников и обёртку для обхода механизма Samsung UEP, запрещающего запуск неподписанных программ. Цель была конкретна — найти уязвимость и повысить привилегии до root, используя драйвер или известные CVE.
Codex просканировал устройство, обратив внимание на драйверы Novatek с world-writable device-нодами. В драйвере ntksys он обнаружил ошибку: устройство принимало физический адрес и размер от пользовательского процесса, сохраняло их и отображало через mmap в адресное пространство без проверки принадлежности памяти ядру. Права на device-ноду были 0666, что позволяло непривилегированным процессам произвольный доступ к физической памяти.
ИИ-агент самостоятельно построил цепочку эксплойта: сначала через соседний драйвер получил адрес DMA-буфера, подтвердил возможность чтения и записи физической памяти, затем выбрал стратегию data-only. Он нашёл в RAM структуру cred процесса и обнулил идентификаторы пользователя и группы, что привело к получению root-доступа без сложных трюков с ядром. Разработчики отмечают, что Codex сделал это самостоятельно, без подсказок.
В разделе «The Bromance» отчёта авторы приводят диалоги с Codex, показывающие, что агент требует ручной корректировки и не работает только с одним промптом. Однако полный цикл — от поиска уязвимости и аудита кода до эксплойта на живом устройстве — был выполнен. Следующим этапом станет создание полностью автономного агента, который сам будет искать первичный доступ.
P.S. Поддержать автора можно подпиской на канал «сбежавшая нейросеть», где рассказывают про ИИ с творческой стороны.
