Сборка AI
Редакция проекта
Редакция проекта
97

Разбираем очередной баг Claude Code: фоновый процесс удалил C:\Users вместо файлов проекта

Обсудить
Разбираем очередной баг Claude Code: фоновый процесс удалил C:\Users вместо файлов проекта

Пользователь Claude Code (расширение для VS Code от Anthropic) обнаружил, что его компьютер потерял доступ ко всем приложениям. Расследование показало, что фоновый процесс AI-ассистента удалил почти всю папку пользователя — включая AppData, Documents, Downloads, Desktop и все локальные проекты.

Всё произошло за полтора часа ночью. Система работала автоматически, без участия пользователя. Данные невозможно восстановить — диск использует SSD с TRIM, что окончательно стирает удалённые файлы.

Как это произошло

Всё началось с простой задачи: «Write reference HTML next to uploads». Пользователь запустил Claude Code в проекте, расположенном в C:\Users\Admin\Documents\project. Расширение было в режиме автоматического выполнения команд.

Команда, которую сгенерировал AI-ассистент, выполнялась 120 секунд — ровно до лимита таймаута. Система переместила её в фоновый режим с идентификатором burg78i8w.

Затем произошло критическое событие: сессия ошиблась с сообщением «Not logged in · Please run /login». Причина была в том, что папка .claude с учётными данными уже была удалена.

Это был сигнал к тому, что что-то пошло не так. Но фоновый процесс продолжал работать.

Что удалилось

От 04:26 до 05:58 фоновая задача методично удаляла содержимое папки пользователя в алфавитном порядке. По меткам времени на папках можно восстановить последовательность:

  • .claude и .vscode — первыми (вместе с ними ушли учётные данные)
  • AppData — около 04:33 (браузерные профили, данные приложений, ярлыки на панели задач)
  • Documents и Downloads — 05:19
  • Все папки проектов — 05:20–05:49
  • Остальное — в алфавитном порядке после этого
  • C:\Users\Public — 05:57

Фактически процесс пытался удалить всю папку C:\Users, но остановился на ошибке команды (код 127 — команда не найдена).

Сохранились только файлы, которые в момент удаления держали открытыми запущенные процессы. Например, Chrome успел сохранить ровно два своих файла.

Почему это произошло

Логов команды, которая запустила весь процесс, не осталось — они были в папке .claude, которая удалилась первой. Остался только 7-строчный файл лога с уведомлением о таймауте и сообщением об ошибке сессии.

Теоретически, когда сессия потеряла доступ к учётным данным, система должна была остановить фоновый процесс. Но этого не произошло. Команда продолжила выполняться вне контекста сессии, без ограничений на область работы.

Расширение было в режиме автоматического выполнения — пользователь не вводил каждую команду вручную, а позволил AI-ассистенту запускать их самостоятельно.

Практические выводы

Инцидент показывает несколько критических проблем:

Отсутствие изоляции фоновых процессов. Когда задача отправляется в фоновый режим, она теряет привязку к сессии, но не теряет расширенные права. Нет механизма, который бы остановил процесс, если родительская сессия рухнула.

Границы проекта не соблюдаются. Хотя команда была запущена в контексте проекта (C:\Users\Admin\Documents\project), фоновый процесс получил доступ к уровню выше — к папке C:\Users. Ограничение на рабочую директорию перестало действовать.

Нет механизма отката при критических ошибках. Сессия поняла, что что-то не так, но не имела возможности остановить выполняющийся процесс, который уже удалил важные файлы.

SSD не оставляет шансов. На обычном HDD удалённые данные оставляют следы, которые можно восстановить. На SSD с TRIM включённым данные стираются окончательно. Это усугубило ущерб.

Что дальше

Пользователь сообщил об инциденте Anthropic с ID сессии и оставшимися логами. Компания должна провести расследование и понять, как AI-ассистент мог сгенерировать команду, которая удаляет пользовательские данные, и почему фоновый процесс не был остановлен при отключении сессии.

Для пользователей Claude Code это серьёзный сигнал к осторожности с режимом автоматического выполнения команд. Пока система не получит исправление, рекомендуется проверять каждую команду вручную перед тем, как дать ей право на выполнение.

Источник:r/ClaudeCode

Комментарии к статье

А
Анастасия

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

0
Ответить

Подписывайтесь на нас в Telegram и VK

Оставайтесь в курсе последних тенденций и новостей из мира AI