Hide Secrets from AI Agents and NPM install using Airgap
Airgap은 민감한 파일의 실제 값을 AI 에이전트로부터 숨기고, 패키지 관리자의 파일 접근을 제어하는 도구다. npm 악성 패키지가 설치 시점에 비밀 정보를 탈취하는 것을 방지한다.
Airgap은 AI 에이전트와 npm 설치 시 비밀 정보가 유출되는 것을 막는 보안 도구다. 민감한 파일(.env, ~/.ssh, ~/.npmrc 등)의 실제 값을 에이전트로부터 숨기고, 패키지 관리자가 예상치 못한 파일에 접근할 때 사용자 확인을 요구한다.
AI 에이전트(Claude, Opencode 등)가 프로젝트 파일을 읽으면 비밀 정보가 모델 제공자에게 전송될 수 있다. 또한 npm 악성 패키지(Shai-Hulud, Miasma, pgserve 등)는 설치 시점에 preinstall/postinstall 훅을 통해 .env, SSH 키, 클라우드 자격 증명을 탈취한다. 특히 Shai-Hulud 웜은 탈취한 npm 토큰으로 다른 패키지에 백도어를 심어 자가 복제한다.
Airgap은 FUSE 파일시스템을 이용해 파일 접근을 가로채고, 민감한 값은 redacted 처리하며, 예상치 못한 파일 접근은 사용자 승인을 요구한다. 현재 Linux만 지원하며 macOS는 개발 중이다. AI 에이전트와 패키지 설치의 보안 위협에 대한 실용적인 대응책으로, 특히 slopsquatting 공격과 CI/CD 파이프라인에서의 악성 코드 실행을 차단할 수 있다.
댓글 작성자는 에이전트가 토큰을 사용할 수 있는 방법에 의문을 제기하며, 파일을 소싱하면 환경 변수를 읽을 수 있다고 지적합니다. 또한 LLM 자격 증명을 에이전트로부터 보호하는 중요한 단계가 누락되었다고 비판하며, MITM 프록시를 사용하는 OneCLI나 OpenShell 같은 접근 방식이 더 우아하다고 주장합니다. 컨테이너 내 도구는 아무것도 볼 수 없지만 모든 것을 사용할 수 있어 세분화된 접근 제어와 속도 제한이 가능하다고 강조합니다.