나노클로의 AI 에이전트 보안 모델: 컨테이너 격리와 최소 코드

신뢰할 수 없는 AI 에이전트를 위한 NanoClaw의 보안 아키텍처
NanoClaw 블로그는 AI 에이전트를 신뢰할 수 없고 잠재적으로 악의적인 것으로 취급해야 하며, 애플리케이션 수준의 권한 검사보다는 아키텍처적 격리를 주장합니다. 이 시스템은 에이전트가 잘못된 행동을 할 것이라는 원칙에 기반하여 구축되었으며, 그럴 때 피해를 제한하는 데 중점을 둡니다.
핵심 보안으로서의 컨테이너 격리
NanoClaw는 Docker 또는 macOS의 Apple Container를 사용하여 각 에이전트를 자체 컨테이너에서 실행합니다. 이러한 컨테이너는 임시적입니다 - 호출마다 새로 생성되고 이후 파괴됩니다. 에이전트는 권한 없는 사용자로 실행되며 명시적으로 마운트된 디렉토리에만 접근할 수 있습니다. 이는 에이전트가 호스트 머신에서 직접 실행되고 대부분의 사용자가 활성화하지 않는 선택적 Docker 샌드박스 모드를 갖춘 OpenClaw의 기본 접근 방식과 대조됩니다.
컨테이너 경계는 운영 체제에 의해 시행되는 밀폐된 보안을 제공하여, 구성에 관계없이 에이전트가 탈출하는 것을 방지합니다. 각 에이전트는 자체 컨테이너, 파일 시스템 및 Claude 세션 기록을 얻어, 서로 다른 데이터에 접근해야 하는 에이전트 간의 정보 유출을 방지합니다.
마운트 허용 목록 및 기본 보호
~/.config/nanoclaw/mount-allowlist.json에 있는 마운트 허용 목록은 심층 방어 역할을 하여 사용자가 실수로 민감한 경로를 마운트하는 것을 방지합니다. .ssh, .gnupg, .aws, .env, private_key, credentials와 같은 민감한 디렉토리는 기본적으로 차단됩니다. 허용 목록은 프로젝트 디렉토리 외부에 위치하여 손상된 에이전트가 자체 권한을 수정할 수 없도록 합니다.
호스트 애플리케이션 코드는 읽기 전용으로 마운트되어, 에이전트가 수행하는 어떤 작업도 컨테이너 파괴 후에 지속되지 않도록 보장합니다. 비주요 그룹은 기본적으로 신뢰되지 않아, 그룹 구성원의 프롬프트 주입으로부터 보호하기 위해 교차 그룹 메시징, 작업 스케줄링 또는 데이터 보기를 방지합니다.
최소화되고 검토 가능한 코드베이스
NanoClaw는 의도적으로 최소화된 코드베이스를 유지하며, 이는 약 400,000줄의 코드, 53개의 구성 파일 및 70개 이상의 종속성을 가진 OpenClaw와 대조됩니다. 이 시스템은 구성 요소를 재발명하기보다는 세션 관리, 메모리 압축 및 기타 기능을 위해 Anthropic의 Agent SDK에 크게 의존합니다.
이 설계는 유능한 개발자가 오후 동안 전체 코드베이스를 검토할 수 있도록 합니다. 기여 지침은 버그 수정, 보안 수정 및 단순화만을 수용합니다. 새로운 기능은 스킬을 통해 제공됩니다 - 검토 후 코딩 에이전트가 코드베이스에 병합하는 완전한 작업 참조 구현이 포함된 지침입니다.
각 설치 결과는 소유자의 특정 요구에 맞게 조정된 몇 천 줄의 코드로 끝나, 취약점이 일반적으로 숨어 있는 복잡성을 피합니다.
📖 전체 소스 읽기: HN LLM Tools
👀 See Also

잠재적인 Claude 보안 사건: 자동 발송된 비밀번호 경고 및 의심스러운 .NET 프로세스
사용자가 클로드에 로그인한 후 자신의 계정에서 보낸 것으로 보이는 의심스러운 비밀번호 재설정 알림을 받았다고 보고하며, 이메일이 몇 분 후 사라지고 비정상적인 .NET 프로세스가 시스템 종료를 차단하는 상황이 발생했습니다.

OpenClaw 보안 우려: 기본 셀프 호스팅 설정에서 API 키와 대화 데이터가 위험에 노출됨
시스코 보고서에 따르면 OpenClaw 보안은 '선택 사항이며 내장되어 있지 않다'고 지적하며, 기본 구성에서는 API 키를 VPS 인스턴스의 .env 파일에 저장하여 기본 드롭렛에서 실행하는 비기술적 사용자에게 잠재적 노출 위험을 초래한다.

오픈클로에서의 개인정보 보호 문제: 스킬, SOUL MD, 그리고 에이전트 통신
한 개발자가 OpenClaw의 아키텍처에 대한 프라이버시 우려를 제기하며, 특히 스킬이 민감한 데이터에 무제한 접근할 수 있고, SOUL MD가 쓰기 가능하며, 에이전트가 필터 없이 정보를 공유하는 점을 구체적으로 지적했습니다.

연구: 보이지 않는 유니코드 문자로 LLM 에이전트의 도구 접근을 탈취할 수 있다
연구진은 일반 텍스트에 숨겨진 보이지 않는 유니코드 문자 속 지시사항을 대규모 언어 모델(LLM)이 따르는지 테스트했습니다. 두 가지 인코딩 방식과 5개 모델, 8,308개의 평가 결과를 분석한 결과, 도구 접근성이 순응도를 17% 미만에서 98-100%로 증폭시키며, 모델들이 숨겨진 문자를 해독하는 파이썬 스크립트를 작성하는 것으로 나타났습니다.