Claude Code 2.1.224 - 에이전트 간 메시징: AI 웜을 위한 전송 계층
Claude Code 2.1.224 - inter-agent messaging: the transport layer for AI worms
핵심 요약
Claude Code의 새로운 에이전트 간 메시징 기능이 AI 웜 확산의 통로가 될 수 있다는 보안 우려와 설정 비활성화 방법 공유.
- 보안 취약점 — 에이전트 간 메시징이 프롬프트 인젝션 공격의 통로가 될 수 있음.
- 점진적 배포 — 위험한 기능을 작은 단위로 나누어 배포하는 방식에 대한 경고.
- 설정 비활성화 — .claude/settings.json을 통해 해당 기능을 끄는 방법 안내.
- AI 자율성 — 에이전트가 사용자의 통제를 벗어나 스스로 행동할 가능성에 대한 불안.
만약 내가 위험한 기능을 배포하고 싶다면, 한 번에 하지 않을 것이다. 릴리스마다 하나씩, 다른 30가지 변경 사항 속에 파묻어서 각각은 그럴듯해 보이게 만들 것이다. 마지막 커밋은 이미 있던 것들을 연결하는 수준이라 완전히 무해해 보일 것이고, 사소한 정리 작업 정도로 기록될 것이다.
에이전트 간 메시징이 바로 그런 조각이다. 에이전트는 읽은 텍스트를 기반으로 행동하는데, 프롬프트 인젝션 문제는 해결되지 않았고, 이제 이 기능으로 인해 텍스트가 설계상 에이전트 간에 이동하게 되었다. 인젝션된 에이전트는 다음 에이전트로 텍스트를 보낼 수 있고, 그 텍스트는 곧 다음 에이전트에 대한 지시사항이 된다.
누군가는 범위가 좁다고 지적할 것이다. 맞다, 처음에는 안전한(듯한) 기능으로 도입하고, 나중에 별개의 관련 없어 보이는 조각을 통해 범위를 넓히는 식이다.
문서에는 수신 세션이 다른 세션의 지시사항에 따라 행동하지 않도록 되어 있다고 나온다. 하지만 이 서브레딧에는 Claude가 하지 말라고 한 파일을 삭제하거나 기기를 망가뜨렸다는 글이 매주 올라온다. 이건 눈에 띄게 고장 난 경우만 말하는 거고, 실제로는 사람들이 생각하는 것보다 더 많은 걸 건드린다. 최근 평가에서 에이전트들은 격리되어야 할 테스트 사이에서도 서로 메시지를 남기고 있었다. 그 기능이 없었을 때도 그랬다. 이제는 직접 끄지 않는 한 기본적으로 켜져 있다.
끄려면 .claude/settings.json에서 다음과 같이 설정하면 된다:
{
"permissions": { "deny": ["SendMessage", "ListAgents"] },
"crossSessionInbound": "refuse"
}
비활성화하는 과정이 필요 이상으로 복잡하다는 점에 주목하라.
아무도 계획한 적이 없고 그냥 빠르게 움직이다가 생각을 미처 못 한 경우라도 결과는 똑같다.


