Использование ИИ без утечки секретов

Вы столкнулись с ошибкой. Копируете стек вызовов (stack trace). Просите ИИ исправить её. Вы забываете, что в этом тексте содержатся ваш DATABASE_URL и пароль. ИИ отвечает за четыре секунды. Теперь ваш секрет попал в лог запросов или обучающую выборку. Вы не можете его удалить.

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

Я использую ИИ каждый день для написания кода. Я не избегаю его. Я использую его, учитывая модель угроз.

Большинство людей думают, что промпт — это приватный чат. Это не так. Это исходящий запрос.

  • Бесплатные тарифы часто используют ваши данные для обучения моделей.
  • Платные тарифы обычно обещают не использовать ваши данные для обучения.
  • Даже платные тарифы хранят логи для обнаружения злоупотреблений и проверки людьми.

Утечка данных происходит тремя способами:

  • То, что вы вставляете: фрагменты кода, конфигурации или трассировки.
  • То, что инструменты прикрепляют автоматически: открытые файлы, контекст репозитория или вывод терминала.
  • То, что модель возвращает: продублированные секреты в описании PR или логах.

Провайдер ИИ — это доверенная третья сторона. Вы не можете провести аудит их внутренних процессов. Относитесь к окну ввода промпта как к вызову в недоверенной сети.

Перестаньте отправлять следующее:

  • Действующие API-ключи или токены.
  • Содержимое файлов .env.
  • Приватные ключи или сертификаты.
  • Реальные имена клиентов, email-адреса или платежные данные.
  • Проприетарную логику, которую вы бы не стали открывать в open-source.

Вместо этого используйте плейсхолдеры. Используйте [API_KEY] или [DB_PASSWORD]. ИИ работает так же эффективно и с масками.

Сформируйте эти три привычки:

  • Используйте файл игнорирования для ИИ. Исключайте .env и папки с секретами из контекста инструмента.
  • Сканируйте перед отправкой. Запускайте детектор секретов для вашего текста перед вставкой.
  • Храните секреты в зашифрованном виде. Если секреты существуют только в памяти во время выполнения, вы не сможете их вставить.

Краткий обзор ваших вариантов:

  • Бесплатные/Потребительские: используйте для публичной документации или временных фрагментов кода.
  • Платные Pro/Team: используйте для большинства инженерных задач. Они имеют договорную защиту.
  • Локальные/Self-hosted: используйте для регулируемых данных, которые должны оставаться на вашем устройстве.

Гарантия отсутствия обучения — это контракт. Это не технический щит. Она снижает риск, но не устраняет его.

Выполните эти шаги, прежде чем ИИ коснется вашего кода:

  • Добавьте файл игнорирования для ваших ИИ-инструментов.
  • Сканируйте всё, что вставляете.
  • Маскируйте все учетные данные плейсхолдерами.
  • Используйте платные тарифы для проприетарной работы.
  • Используйте KMS, чтобы секреты не хранились в открытом виде.
  • Проверяйте вывод ИИ, прежде чем он попадет в логи или коммиты.

Четырехсекундный ответ по-прежнему быстр. Просто он не будет стоить вам безопасности.

Source: https://dev.to/faizahmedfarooqui/using-ai-without-leaking-your-secrets-a-threat-model-for-ai-assisted-development-2l57

Optional learning community: https://t.me/GyaanSetuAi