Все заметки
Вайбкодинг выкатывает приложение, а вместе с ним — утечку

6 июня 2026 г.

Вайбкодинг выкатывает приложение, а вместе с ним — утечку

В январе запустилась ИИ-соцсеть Moltbook; основатель хвастался, что «не написал ни строчки кода». Через три дня исследователи нашли всю её базу открытой миру — 1,5 миллиона токенов доступа, 35 000 адресов почты, личные сообщения. Это не случайность. Исследования снова и снова находят, что примерно 45% сгенерированного ИИ кода содержит известную уязвимость. Демо теперь бесплатно. А проверка безопасности — это то, что вайбом не сделать, и счёт за её пропуск — чьи-то данные.

В январе с шумом запустилась ИИ-соцсеть Moltbook. Её основатель сказал вслух тихую часть: он «не написал ни строчки кода», он собрал всё на ИИ-инструментах. Через три дня исследователи из Wiz нашли всю боевую базу открытой в интернете — 1,5 миллиона токенов доступа, 35 000 адресов почты и личные сообщения пользователей, читаемые любым, кто посмотрит.

Причина почти неприлично показательна. Сгенерированный ИИ код положил ключ от базы прямо в JavaScript на стороне браузера и так и не включил row-level security — ту самую настройку, что превращает этот ключ из мастер-ключа в безобидную метку. С ней ключ можно безопасно показывать. Без неё этот ключ — входная дверь, подпёртая открытой. Агент написал код, который работал в демо и был нараспашку в продакшене, и разницу никто не проверил.

Moltbook — не случайность. Это предсказуемая форма куда более крупной проблемы, и если вы выкатываете написанный ИИ код, стоит понять, почему это повторяется.

Цифра, которую никто не хочет на слайде

Исследования здесь удивительно согласованы, и они плохи. Тесты Veracode показали, что около 45% сгенерированного ИИ кода вносит известную уязвимость по OWASP — и, что уничтожающе, доля «прохождения по безопасности» держится около 55% уже два года якобы революционных обновлений моделей. Модели стали умнее писать код. Безопаснее они не стали.

Дальше накапливается. Независимый анализ нашёл, что у произведённого ИИ кода в 2,74 раза выше уровень уязвимостей, чем у написанного человеком, он не защищается от XSS в 86% случаев и уязвим к log injection в 88% образцов. И это вылезает в реальности: только за март Vibe Security Radar из Georgia Tech зафиксировал 35 новых CVE, вызванных прямо ИИ-кодом, против шести в январе. Кривая утечек гнётся не туда, и быстро.

Почему модель по умолчанию пишет небезопасный код

Дело не в том, что модель глупая. Она делает ровно то, о чём попросили.

Вы говорите агенту «сделай мне форму регистрации» — и он делает: форма работает. Безопасности не было в запросе, значит, её нет и в ответе. Модель оптимизирует то, что видно в демо: счастливый путь, где правильный пользователь делает правильное. У неё нет чутья на несчастливый путь, потому что он невидим. Никто смотрящий демо не пытается прочитать чужие данные, внедрить скрипт или задолбить эндпоинт. Это делает атакующий — позже, когда вы не смотрите.

В этом вся ловушка. То, что вайбкодинг умеет хуже всего, — ровно та часть, которой не видно в демо, а безопасность — это сплошной несчастливый путь. Тот самый баг с вывернутой логикой авторизации вылез в более чем 170 боевых приложениях: ИИ написал контроль доступа, который блокировал залогиненных и давал анонимам полный доступ. В демо работало, потому что основатель, который тестировал, был залогинен. Дыра открывается только для того, кто нет.

Безопасность — это проверка, которую вайбом не сделать

Я уже писал, что дешёвый код — дорогой: стоимость ИИ-кода не исчезает, она съезжает вниз по течению к тому, кто его сопровождает. Безопасность — самая острая версия этого счёта, потому что платите его не вы. Его платят ваши пользователи своими утёкшими данными, и приходит он весь сразу.

Это не значит «не строй на ИИ». Я строю с агентами каждый день. Это значит, что генерация и проверка — разные работы, а ИИ схлопнул только первую. Несколько вещей без вариантов, выученных лёгким путём — наблюдая, как другие учат их тяжёлым:

  • Считайте, что любой секрет, который разместил агент, лежит не там, пока не проверили. Ключ Moltbook в браузерном JavaScript — самый частый провал. Ищите ключи грепом; уносите на сервер.
  • Включайте скучные ограждения, которые платформа уже даёт. Moltbook умер, потому что row-level security была выключена. Защита существовала; агент просто её не включил. Дефолты — ваши друзья, включайте их.
  • Тестируйте несчастливый путь намеренно. Разлогиньтесь и попробуйте прочитать данные. Пошлите неверный ввод. Побудьте атакующим десять минут, потому что модель не побудет.
  • Прогоните настоящий сканер перед выкаткой. Статический анализ ловит весь скучный 45-процентный пласт — вшитые секреты, отсутствующую валидацию, классические инъекции, — который агент бодро написал.

Честная формулировка

Вайбкодинг и правда сделал создание приложения почти бесплатным. Чего он не сделал бесплатным — это сделать это приложение безопасным для чужих данных, и разрыв между этими двумя вещами никогда не был шире. Демо — это лёгкие 80%. Утечка живёт в тех 20%, которых демо вам никогда не покажет.

Так что выкатывайте быстро, ладно. Но прежде чем приложения коснутся настоящие пользователи, потратьте негламурный час, побыв собственным атакующим. Основатель Moltbook этот час пропустил и попал в заголовки по худшей из причин. Час дешёвый. Утечка — нет.

Комментарии

Пока нет комментариев

Войдите, чтобы участвовать в разговоре.

Будьте первым, кто оставит мысль.