В прошлом месяце социальная сеть, полностью управляемая агентами ИИ, стала самым горячим экспериментом в Интернете. Если вы о нем не слышали, Moultbook — это, по сути, социальная сеть для агентов. Боты публикуют сообщения, отвечают и взаимодействуют без вмешательства человека. И в течение нескольких дней казалось, что это все, о чем можно говорить – создание культов с автономными агентами, хвастовство людьми и создание собственного общества.
Затем охранная фирма Viz опубликовала отчет, показывающий массовую утечку в экосистеме MoltenBook. [1]. Неправильно настроенная база данных SupaBase предоставила 1,5 миллиона ключей API и 35 000 адресов электронной почты пользователей непосредственно в общедоступный Интернет.
Как это произошло? Основная причина заключалась не в сложном взломе. Это было кодирование вибрации. Разработчики создали его с помощью vibe-кодирования, и в процессе ускорения сборки и использования ярлыков упустили из виду уязвимости, добавленные агентами кодирования.
Вот реальность кодирования вибрации: Агенты кодирования оптимизируют код для запуска, а не для обеспечения его безопасности.
Почему агенты терпят неудачу?
В нашем исследовании в Колумбийском университете мы оценили лучшие агенты кодирования и инструменты кодирования Vibe. [2]. Мы получили важную информацию о том, где происходят сбои этих агентов, выделив безопасность как одну из наиболее значимых моделей сбоев.
1. Скорость превыше безопасности: LLM оптимизирован для принятия. Самый простой способ предложить пользователю принять блок кода — это зачастую удалить сообщение об ошибке. К сожалению, препятствием, вызывающим ошибку, иногда является охранник.
На практике мы видели, как агенты удаляли проверки, ослабляли политики базы данных или отключали потоки аутентификации просто для устранения ошибок во время выполнения.
2. ИИ не знает о побочных эффектах: ИИ часто не знает всего контекста кодовой базы, особенно при работе с большими и сложными архитектурами. Мы постоянно видим это при рефакторинге, когда агент исправляет ошибку в одном файле, но изменяет или устраняет утечки безопасности в файлах, которые ссылаются на него, просто потому, что он не увидел соединения.
3. Сопоставление с образцом, а не суждение: LLM на самом деле не понимают семантику и смысл кода, который они пишут. Они просто прогнозируют на основе своих обучающих данных, куда, по их мнению, поступят следующие токены. Они не знают, почему существует проверка безопасности и представляет ли ее удаление риск. Все, что они знают, это то, что он соответствует синтаксическому шаблону, исправляющему ошибку. Для ИИ стена безопасности — это просто ошибка, препятствующая запуску кода.
Эти модели сбоев не являются теоретическими — они постоянно возникают в ходе ежедневного развития. Вот несколько простых примеров, с которыми я лично столкнулся во время своего исследования.
3 ошибки безопасности кодирования Vibe, которые я недавно видел
1. Утечка ключей API
Вам нужно вызвать внешний API (например, OpenAI) из интерфейса React. Чтобы это исправить, агент просто помещает ключ API в начало вашего файла.
// What the agent writes
const response = await fetch('https://api.openai.com/v1/...', {
headers: {
'Authorization': 'Bearer sk-proj-12345...' // <--- EXPOSED
}
});
Это делает ключ видимым для всех, поскольку с помощью JS вы можете «проверить элемент» и увидеть код.
2. Публичный доступ к базе данных
Это происходит постоянно с Supabase или Firebase. Проблема в том, что при получении данных я получал сообщение об ошибке «Отказано в доступе». ИИ предложил политику ИСПОЛЬЗОВАНИЯ (True) или публичного доступа.
-- What the agent writes
CREATE POLICY "Allow public access" ON users FOR SELECT USING (true);
Это исправляет ошибку при запуске кода. Но это сделало всю базу данных общедоступной в Интернете.
3. XSS-уязвимости
Мы проверили, можем ли мы отображать необработанный HTML-контент внутри компонента React. Агент немедленно добавил изменение кода, чтобы использовать опасноSetInnerHTML для рендеринга необработанного HTML.
// What the agent writes
ИИ редко предлагает библиотеки дезинфицирующих средств (например, DomPurify). Это просто дает вам грубую поддержку. Это проблема, поскольку в результате ваше приложение становится уязвимым для атак с использованием межсайтовых сценариев (XSS), при которых вредоносные сценарии могут запускаться на устройствах ваших пользователей.
В целом, это не просто разовые страшилки. Они согласуются с тем, что мы видим в более широких данных об изменениях, вызванных ИИ:

Как правильно вибрировать код
Нам не следует прекращать использование этих устройств, нам необходимо изменить способ их использования.
1. Лучшие сигналы
Мы не можем просто сказать агенту «сделать это безопасным». Это не сработает, потому что «безопасный» слишком расплывчат для LLM. Вместо этого нам следует использовать разработку на основе спецификаций, где мы можем иметь заранее определенные политики безопасности и требования, которым агент должен соответствовать перед написанием любого кода. Это может включать, помимо прочего: отсутствие доступа к общедоступной базе данных, написание модульных тестов для каждой добавленной функции, очистку пользовательского ввода и отсутствие жестко запрограммированных ключей API. Хорошей отправной точкой является включение этих политик в OWASP Top 10, стандартный список наиболее значимых угроз веб-безопасности.
Более того, исследования показывают, что подсказки по цепочке мыслей, в частности просьбы агента обдумать последствия безопасности перед написанием кода, значительно уменьшают небезопасный вывод. Вместо того, чтобы просто спрашивать решения, мы можем спросить: «Каковы риски безопасности, связанные с этим подходом, и как бы вы их избежали?».
2. Лучшие отзывы
При кодировании вибрации очень заманчиво просто посмотреть на пользовательский интерфейс (а не на код), и, честно говоря, в этом вся перспектива кодирования вибрации. Но в настоящее время мы еще не там. Анджей Карпати – исследователь искусственного интеллекта, придумавший термин «кодирование вибрации» – недавно предупредил, что, если мы не будем осторожны, агенты могут просто спровоцировать безрассудство. Он объяснил, что, поскольку мы все больше полагаемся на ИИ, наша основная работа смещается от написания кода к его проверке. Точно так же мы работаем со стажерами: мы не позволяем стажерам запускать код в производство без должной проверки, и мы должны поступать точно так же с агентами. Выявляйте различия, тестируйте модульные тесты и обеспечивайте хорошее качество кода.
3. Автоматическое ограждение
Поскольку кодирование вибраций стимулирует двигаться быстро, мы не можем быть уверены, что люди смогут уловить все. Мы уже должны автоматизировать проверки безопасности агентов. Мы можем добавить условия предварительной фиксации и сканеры конвейера CI/CD, которые сканируют и блокируют фиксации с помощью жестко запрограммированных секретов или обнаруживают опасные шаблоны. Такие инструменты, как GitGuardian или TruffleHog, хороши для автоматического сканирования раскрытых секретов перед объединением кода. Недавняя работа над агентами с расширенными инструментами и системами проверки «LLM в цикле» показывает, что модели ведут себя гораздо более надежно и безопасно в сочетании с детерминированными проверочными программами. Модель генерирует код, инструменты проверяют его, а любые небезопасные изменения кода автоматически отклоняются.
заключение
Агенты кодирования позволяют нам работать быстрее, чем когда-либо прежде. Они улучшают доступность, позволяя людям с любым опытом программирования создавать все, что они могут себе представить. Но это не должно происходить в ущерб безопасности и защищенности. Используя ранние методы проектирования, тщательно анализируя различия в коде и обеспечивая четкие ограничения, мы можем безопасно использовать агенты ИИ и создавать более качественные приложения.
Ссылка
- https://www.wiz.io/blog/expose-moltbook-database-reveals-millions-of-api-keys
- https://daplab.cs.columbia.edu/general/2026/01/08/9-critical-failure-patterns-of-coding-agents.html
- https://vibefactory.ai/api-key-security-scanner
- https://apiiro.com/blog/4x-velocity-10x-vulnerability-ai-coding-assistants-are-shipping-more-risks/
- https://www.csoonline.com/article/4062720/ai-coding-assistants-amplify-deeper-cybersecurity-risks.html