Дом
ИИ-агент Google автоматически переписывает код для устранения уязвимостей в системе безопасности
Компания Google DeepMind представила нового агента искусственного интеллекта, который автономно выявляет и устраняет критические уязвимости в программном коде. Система, получившая название CodeMender, за последние полгода уже поставила 72 исправления безопасности для крупных проектов с открытым исходным кодом.
Обнаружение и устранение уязвимостей остается сложной и трудоемкой задачей, даже при использовании известных автоматизированных методов, таких как фаззинг. Предыдущие исследования Google DeepMind, включая инициативы, основанные на искусственном интеллекте, такие как Big Sleep и OSS-Fuzz, успешно выявили новые уязвимости нулевого дня в хорошо проверенных кодовых базах. Однако этот успех порождает новую проблему: по мере того как ИИ ускоряет процесс обнаружения недостатков, растет и давление на разработчиков, требующих их устранения.
CodeMender был создан для устранения этого растущего дисбаланса. Он функционирует как полностью автономный агент ИИ, который использует комплексный подход к защите программного обеспечения. Система работает как в реактивном режиме - исправляет вновь выявленные уязвимости по мере их появления, так и в проактивном - переписывает существующий код, устраняя целые классы рисков безопасности еще до того, как они могут быть использованы. Это позволяет разработчикам и специалистам по сопровождению проектов уделять больше времени созданию новых функций и повышению производительности программного обеспечения.
Система опирается на сложные мыслительные способности последних моделей Gemini Deep Think компании Google. Эта базовая технология помогает агенту отлаживать и решать сложные проблемы безопасности со значительной степенью автономности. CodeMender также оснащен набором инструментов, которые позволяют ему тщательно анализировать и оценивать код перед внесением изменений. Кроме того, он включает в себя этап проверки, чтобы убедиться, что предлагаемые исправления точны и не создают неожиданных проблем, которые часто называют регрессиями.
Учитывая высокие ставки на безопасность кода, даже по мере развития больших языковых моделей, одна ошибка в коде может стоить очень дорого. Поэтому автоматизированная система проверки CodeMender очень важна. Она систематически проверяет, что каждое предлагаемое исправление устраняет основную причину уязвимости, сохраняет функциональную корректность, не нарушает существующие тесты и соответствует кодовым соглашениям проекта. Только те исправления, которые отвечают всем этим строгим критериям, представляются на рассмотрение человека.
Чтобы повысить эффективность системы, команда DeepMind разработала новые методы для ИИ-агента. CodeMender использует передовой анализ программ, опираясь на статический и динамический анализ, дифференциальное тестирование, fuzzing и SMT-решатели. Эти инструменты помогают ему тщательно исследовать шаблоны кода, поток управления и поток данных, чтобы обнаружить основные причины дефектов безопасности и структурных недостатков.
Архитектура также опирается на многоагентную систему, в которой специализированные агенты занимаются различными аспектами конкретной проблемы. Например, один из специализированных инструментов, основанный на модели большого языка, анализирует различия между оригинальным кодом и модифицированными версиями. Это помогает основному агенту убедиться в том, что предлагаемые им изменения не приведут к нежелательным побочным эффектам, и позволяет ему скорректировать свою стратегию при необходимости.
В одном из примеров CodeMender устранил уязвимость, связанную с переполнением буфера кучи, которая была отмечена в отчете о сбое. Хотя конечное решение изменило всего несколько строк кода, первопричина была понятна не сразу. Используя инструменты отладчика и поиска кода, агент определил, что на самом деле проблема связана с неправильным управлением стеком элементов Extensible Markup Language (XML) во время разбора, расположенным в другом разделе кодовой базы. В другом случае агент разработал сложное исправление для сложной проблемы с временем жизни объекта, адаптировав систему генерации кода на языке C в целевом проекте.
Помимо реагирования на известные ошибки, CodeMender создан для проактивной защиты программного обеспечения от будущих атак. Команда развернула агента для добавления аннотаций -fbounds-safety в части libwebp, широко используемой библиотеки сжатия изображений. Эти аннотации направляют компилятор на вставку проверок границ в код, помогая предотвратить использование злоумышленниками переполнений буфера для выполнения произвольного кода.
Это улучшение особенно актуально, учитывая, что переполнение буфера кучи в libwebp, задокументированное как CVE-2023-4863, ранее использовалось в атаке zero-click на iOS. По словам DeepMind, если бы эти аннотации были на месте в то время, эта конкретная уязвимость и большинство других переполнений буфера в аннотированных разделах были бы сделаны неэксплуатируемыми.
Процесс проактивного исправления ИИ включает в себя детальное принятие решений. При добавлении аннотаций он может автономно устранять новые ошибки компиляции и сбои в тестировании, возникающие в результате его собственных модификаций. Если проверка обнаруживает, что изменение нарушило функциональность, агент использует эту обратную связь для самокоррекции и поиска альтернативного решения.
Несмотря на обнадеживающие первые результаты, Google DeepMind осторожно подходит к внедрению, отдавая предпочтение надежности. В настоящее время каждый патч, созданный CodeMender, перед отправкой в проекты с открытым исходным кодом проходит проверку человеческими экспертами. Команда постепенно увеличивает количество отправляемых исправлений, чтобы поддерживать высокие стандарты и систематически учитывать отзывы сообщества разработчиков.
В перспективе исследователи планируют наладить контакты с сопровождающими критически важных проектов с открытым исходным кодом и делиться с ними исправлениями, созданными CodeMender. Учитывая мнение сообщества, они намерены в конечном итоге выпустить CodeMender в качестве общедоступного инструмента для всех разработчиков программного обеспечения.
В ближайшие месяцы команда DeepMind также намерена опубликовать технические документы и отчеты с подробным описанием своей методологии и результатов. Эта инициатива представляет собой первый шаг в изучении того, как агенты ИИ могут проактивно исправлять код и фундаментально укреплять безопасность программного обеспечения для всех.
См. также: Атака на конфиденциальность CAMIA раскрывает, что запоминают модели ИИ

Хотите узнать больше об искусственном интеллекте и больших данных от экспертов отрасли? Посетите выставку AI & Big Data Expo в Амстердаме, Калифорнии или Лондоне. Это комплексное мероприятие является частью TechEx и проходит вместе с другими ведущими технологическими событиями, включая Cyber Security Expo. Нажмите здесь для получения дополнительной информации.
AI News доставляется компанией TechForge Media. Ознакомиться с другими предстоящими мероприятиями и вебинарами по корпоративным технологиям можно здесь.
Связанная статья
Олли делает ставку на приватность, чтобы выиграть гонку за лидерство в сфере ИИ-помощников
Чтобы быть по-настоящему полезным, ИИ-помощник должен глубоко понимать своего пользователя. Ollie — личный помощник, разработанный для повседневной жизни, — работает по принципу, согласно которому для
Как на мероприятии AI LIVE: London будут рассматриваться темы искусственного интеллекта и промышленной автоматизации
На саммите соберутся руководители высшего звена со всего мира, чтобы обсудить актуальные проблемы мировых отраслей — от радикальных изменений, вызванных искусственным интеллектом, до экономической нес
Anthropic выходит на рынок юридических технологий ИИ по мере усиления конкуренции
Anthropic unveiled a suite of new chatbot capabilities on Tuesday, aimed at delivering automated support to legal practices. Эти инструменты были представлены во вторник и направлены на предоставление автоматизированной поддержки юридическим фирмам.
Рекомендации по связанным специальным темам
Комментарии (0)
Компания Google DeepMind представила нового агента искусственного интеллекта, который автономно выявляет и устраняет критические уязвимости в программном коде. Система, получившая название CodeMender, за последние полгода уже поставила 72 исправления безопасности для крупных проектов с открытым исходным кодом.
Обнаружение и устранение уязвимостей остается сложной и трудоемкой задачей, даже при использовании известных автоматизированных методов, таких как фаззинг. Предыдущие исследования Google DeepMind, включая инициативы, основанные на искусственном интеллекте, такие как Big Sleep и OSS-Fuzz, успешно выявили новые уязвимости нулевого дня в хорошо проверенных кодовых базах. Однако этот успех порождает новую проблему: по мере того как ИИ ускоряет процесс обнаружения недостатков, растет и давление на разработчиков, требующих их устранения.
CodeMender был создан для устранения этого растущего дисбаланса. Он функционирует как полностью автономный агент ИИ, который использует комплексный подход к защите программного обеспечения. Система работает как в реактивном режиме - исправляет вновь выявленные уязвимости по мере их появления, так и в проактивном - переписывает существующий код, устраняя целые классы рисков безопасности еще до того, как они могут быть использованы. Это позволяет разработчикам и специалистам по сопровождению проектов уделять больше времени созданию новых функций и повышению производительности программного обеспечения.
Система опирается на сложные мыслительные способности последних моделей Gemini Deep Think компании Google. Эта базовая технология помогает агенту отлаживать и решать сложные проблемы безопасности со значительной степенью автономности. CodeMender также оснащен набором инструментов, которые позволяют ему тщательно анализировать и оценивать код перед внесением изменений. Кроме того, он включает в себя этап проверки, чтобы убедиться, что предлагаемые исправления точны и не создают неожиданных проблем, которые часто называют регрессиями.
Учитывая высокие ставки на безопасность кода, даже по мере развития больших языковых моделей, одна ошибка в коде может стоить очень дорого. Поэтому автоматизированная система проверки CodeMender очень важна. Она систематически проверяет, что каждое предлагаемое исправление устраняет основную причину уязвимости, сохраняет функциональную корректность, не нарушает существующие тесты и соответствует кодовым соглашениям проекта. Только те исправления, которые отвечают всем этим строгим критериям, представляются на рассмотрение человека.
Чтобы повысить эффективность системы, команда DeepMind разработала новые методы для ИИ-агента. CodeMender использует передовой анализ программ, опираясь на статический и динамический анализ, дифференциальное тестирование, fuzzing и SMT-решатели. Эти инструменты помогают ему тщательно исследовать шаблоны кода, поток управления и поток данных, чтобы обнаружить основные причины дефектов безопасности и структурных недостатков.
Архитектура также опирается на многоагентную систему, в которой специализированные агенты занимаются различными аспектами конкретной проблемы. Например, один из специализированных инструментов, основанный на модели большого языка, анализирует различия между оригинальным кодом и модифицированными версиями. Это помогает основному агенту убедиться в том, что предлагаемые им изменения не приведут к нежелательным побочным эффектам, и позволяет ему скорректировать свою стратегию при необходимости.
В одном из примеров CodeMender устранил уязвимость, связанную с переполнением буфера кучи, которая была отмечена в отчете о сбое. Хотя конечное решение изменило всего несколько строк кода, первопричина была понятна не сразу. Используя инструменты отладчика и поиска кода, агент определил, что на самом деле проблема связана с неправильным управлением стеком элементов Extensible Markup Language (XML) во время разбора, расположенным в другом разделе кодовой базы. В другом случае агент разработал сложное исправление для сложной проблемы с временем жизни объекта, адаптировав систему генерации кода на языке C в целевом проекте.
Помимо реагирования на известные ошибки, CodeMender создан для проактивной защиты программного обеспечения от будущих атак. Команда развернула агента для добавления аннотаций -fbounds-safety в части libwebp, широко используемой библиотеки сжатия изображений. Эти аннотации направляют компилятор на вставку проверок границ в код, помогая предотвратить использование злоумышленниками переполнений буфера для выполнения произвольного кода.
Это улучшение особенно актуально, учитывая, что переполнение буфера кучи в libwebp, задокументированное как CVE-2023-4863, ранее использовалось в атаке zero-click на iOS. По словам DeepMind, если бы эти аннотации были на месте в то время, эта конкретная уязвимость и большинство других переполнений буфера в аннотированных разделах были бы сделаны неэксплуатируемыми.
Процесс проактивного исправления ИИ включает в себя детальное принятие решений. При добавлении аннотаций он может автономно устранять новые ошибки компиляции и сбои в тестировании, возникающие в результате его собственных модификаций. Если проверка обнаруживает, что изменение нарушило функциональность, агент использует эту обратную связь для самокоррекции и поиска альтернативного решения.
Несмотря на обнадеживающие первые результаты, Google DeepMind осторожно подходит к внедрению, отдавая предпочтение надежности. В настоящее время каждый патч, созданный CodeMender, перед отправкой в проекты с открытым исходным кодом проходит проверку человеческими экспертами. Команда постепенно увеличивает количество отправляемых исправлений, чтобы поддерживать высокие стандарты и систематически учитывать отзывы сообщества разработчиков.
В перспективе исследователи планируют наладить контакты с сопровождающими критически важных проектов с открытым исходным кодом и делиться с ними исправлениями, созданными CodeMender. Учитывая мнение сообщества, они намерены в конечном итоге выпустить CodeMender в качестве общедоступного инструмента для всех разработчиков программного обеспечения.
В ближайшие месяцы команда DeepMind также намерена опубликовать технические документы и отчеты с подробным описанием своей методологии и результатов. Эта инициатива представляет собой первый шаг в изучении того, как агенты ИИ могут проактивно исправлять код и фундаментально укреплять безопасность программного обеспечения для всех.
См. также: Атака на конфиденциальность CAMIA раскрывает, что запоминают модели ИИ

Хотите узнать больше об искусственном интеллекте и больших данных от экспертов отрасли? Посетите выставку AI & Big Data Expo в Амстердаме, Калифорнии или Лондоне. Это комплексное мероприятие является частью TechEx и проходит вместе с другими ведущими технологическими событиями, включая Cyber Security Expo. Нажмите здесь для получения дополнительной информации.
AI News доставляется компанией TechForge Media. Ознакомиться с другими предстоящими мероприятиями и вебинарами по корпоративным технологиям можно здесь.
Олли делает ставку на приватность, чтобы выиграть гонку за лидерство в сфере ИИ-помощников
Чтобы быть по-настоящему полезным, ИИ-помощник должен глубоко понимать своего пользователя. Ollie — личный помощник, разработанный для повседневной жизни, — работает по принципу, согласно которому для
Как на мероприятии AI LIVE: London будут рассматриваться темы искусственного интеллекта и промышленной автоматизации
На саммите соберутся руководители высшего звена со всего мира, чтобы обсудить актуальные проблемы мировых отраслей — от радикальных изменений, вызванных искусственным интеллектом, до экономической нес
Anthropic выходит на рынок юридических технологий ИИ по мере усиления конкуренции
Anthropic unveiled a suite of new chatbot capabilities on Tuesday, aimed at delivering automated support to legal practices. Эти инструменты были представлены во вторник и направлены на предоставление автоматизированной поддержки юридическим фирмам.











