Claude Code утёк через npm: как один source map раскрыл внутренности Anthropic
История с Claude Code от компании Anthropic стала одной из самых обсуждаемых в разработческой среде за последнее время. И причина здесь не в хакерской атаке или сложном взломе, а в куда более банальной вещи - ошибке при публикации npm-пакета.
В результате в открытом доступе оказался фрагмент внутреннего TypeScript-кода инструмента Claude Code. Сообщество быстро разобрало ситуацию, и она разлетелась по X, Hacker News и GitHub как пример того, насколько легко сегодня случайно раскрыть внутренности продукта.
Как произошла утечка
Ключевой деталью стал файл source map (.map), который был случайно включён в production-сборку npm-пакета. Такие файлы обычно используются разработчиками для отладки: они связывают минифицированный код с оригинальными исходниками, чтобы можно было легче находить ошибки в браузере или среде выполнения.
Проблема в том, что вместе с этим удобством приходит и риск. В данном случае source map оказался публичным и содержал достаточно информации, чтобы восстановить значительные части исходного кода проекта.
После публикации пакета в npm сообщество быстро заметило необычно “богатый” source map и начало его анализировать. Дальше процесс стал почти автоматическим: файл скачали, распарсили, восстановили структуру проекта и начали публиковать найденные фрагменты.
Что именно оказалось в открытом доступе
По оценкам различных разборов, речь идёт о сотнях тысяч строк TypeScript-кода, часто упоминается порядок около 500 тысяч строк. Внутри оказались части архитектуры Claude Code, внутренние модули и вспомогательные инструменты разработки.
Важно понимать, что это не был полный доступ ко всей инфраструктуре или моделям. Однако даже частичный исходный код подобного инструмента даёт много информации о том, как устроена система, какие подходы используются и как организована работа с AI-логикой внутри продукта.
Почему это вообще стало возможным
С технической точки зрения ситуация выглядит как классическая ошибка сборочного процесса. Source map был включён в финальный npm-пакет, а затем опубликован без дополнительной проверки содержимого.
Подобные ошибки чаще всего происходят в автоматизированных CI/CD пайплайнах, где сборка и публикация пакетов выполняются без ручного контроля. Один неправильный флаг в конфигурации сборщика - и внутренние файлы попадают в публичный registry.
Именно поэтому этот случай так активно обсуждается в инженерном сообществе: он показывает, что проблема находится не в сложных уязвимостях, а в обычных процессах разработки.
Почему реакция была такой быстрой
Source map-файлы хорошо известны разработчикам. Они фактически позволяют “развернуть” минифицированный код обратно в читаемый вид. Поэтому как только пакет оказался в npm, его содержимое быстро попало в руки энтузиастов.
Дальше всё развивалось предсказуемо: анализ, восстановление структуры, публикации в репозиториях и обсуждения в соцсетях. В таких ситуациях скорость распространения информации обычно измеряется часами, а не днями.
Почему эта история важна для индустрии
Этот случай стал очередным напоминанием о том, насколько уязвимой остаётся цепочка поставки JavaScript-пакетов. npm давно превратился в критически важную инфраструктуру, и любая ошибка в публикации может привести к утечке или даже компрометации продукта.
Отдельно эта история снова подняла вопрос о source maps в production-сборках. Несмотря на то что большинство разработчиков знают о рисках, на практике такие файлы всё ещё нередко попадают в публичные артефакты.
Также усилился интерес к теме AI-инструментов разработки. Чем популярнее становятся подобные продукты, тем быстрее любое их внутреннее устройство становится объектом пристального внимания сообщества.
Вывод
Утечка Claude Code - это не взлом и не целенаправленная атака. Это пример того, как обычная ошибка в процессе сборки может привести к публичному раскрытию большого объёма внутреннего кода.
Именно такие инциденты сегодня становятся особенно заметными, потому что они не требуют сложных атак - достаточно одной неправильной настройки в цепочке публикации.
Комментарии
Чтобы оставить комментарий, войдите в аккаунт.