Технологии

Сканирование 380 000 приложений, собранных при помощи ИИ, нашло тысячи без какой-либо аутентификации

Susan Hill

С 2023 года питч vibe-coding звучит одинаково — приложение может собрать кто угодно. Новое сканирование RedAccess наконец выдаёт первый по-настоящему предметный счёт. Из примерно 380 000 веб-приложений, собранных ИИ-инструментами для написания кода и развёрнутых через сервисы вроде Netlify, около 5 000 не имели вообще никакой аутентификации. Около 40 процентов этих незащищённых приложений хранили чувствительные данные — пользовательскую информацию, журналы переписок, платёжные сведения, внутренние учётные данные. Цифры приземлились на этой неделе у WIRED, Axios и Security Boulevard и описывают категорию сбоя, которую индустрия два года тихо складывает в углу.

Названные генераторы — это платформы, которые любой, не пишущий код, и так уже знает. Lovable, Replit, Base44 и более широкая экосистема инструментов «собери из промпта» с самого начала продают одно и то же неявное обещание — ИИ заменяет не только набор кода, но и инженера, который должен был стоять в цепочке. Выбираешь промпт, смотришь, как приложение появляется, отправляешь его в продакшн через Netlify или Vercel, отдаёшь ссылку. Сканирование RedAccess фиксирует именно то, что тихо уходило в боевой контур, пока никто в этой цепочке не задал вопроса, нужен ли приложению замок.

Уязвимости тут не изящные. Незащищённые приложения не требовали ловкого атакующего — им хватало браузера. Многие из них уезжали в продакшн с ключами Supabase или Firebase, зашитыми прямо в клиентский бандл, а это значит, что любой заинтересованный читает их базу данных. Часть допускала и запись в ту же базу — то есть посторонний может править записи ваших пользователей. Кое-где наружу торчали административные эндпойнты. Категория этого сбоя — не zero-day и не криво сконфигурированный краевой случай. Это полное отсутствие слоя безопасности.

Скепсис здесь уместен, потому что соблазн повесить вину на инструменты велик и верен лишь наполовину. Джуниор-разработчик, собирающий то же приложение с нуля без присмотра, выкатил бы похожее. Разница в объёме. Инструменты vibe-coding опускают порог достаточно низко, чтобы общее число приложений, развёрнутых людьми, не способными самостоятельно рассуждать про аутентификацию, рвануло вверх. Технически такие инструменты вполне могут предложить скаффолдинг аутентификации, но дефолтный поток его не навязывает; а пользователи, которые получают от этих инструментов больше всего, ровно те, у кого хуже всего оснастка, чтобы заметить, что её там нет. Lovable заявляет, что работает над включением скаффолдинга аутентификации по умолчанию. Replit указывает на уже существующие настройки безопасности и признаёт, что пользователи могут их выключить. Base44 публично не комментирует. Платформы реагируют — вопрос в том, обгоняет ли реакция кривую развёртываний.

Структурное прочтение глотается тяжелее. Два года индустрия продаёт вынос профессионального ревью из пайплайна развёртывания как фичу, а не как издержку. Данные RedAccess — это и есть лицо такого выноса в масштабе. Приложения работают для того, кто их собрал. Они так же исправно работают для каждого, кто просто наткнётся на URL. Ближайшие два года, скорее всего, окажутся медленным накоплением подобных инцидентов — пока платформы либо сами не начнут навязывать аутентификацию на уровне фреймворка по умолчанию, либо регуляторы не вынудят их это сделать. Оба сценария совместимы. Европейский режим ответственности за продукт уже перечитывают так, чтобы он покрывал и сгенерированное ИИ программное обеспечение, а генеральные прокуроры американских штатов начали кружить рядом.

То, что пользователи этих платформ могут делать прямо сейчас, не очень обширно. RedAccess опубликовал инструкции для четырёх названных инструментов — проверять, требует ли приложение логин до любого доступа к данным; аудитить ключи, ушедшие вместе с клиентским бандлом; и исходить из того, что любой однажды разосланный URL уже кем-то сканируется. Платформы пообещали улучшения. Сканирование, давшее этот материал, заняло несколько дней. Следующее уже планируется.

Обсуждение

Имеется 0 комментариев.