Geiger: 머신 보안을 위한 AI 에이전트 및 MCP 서버 인벤토리

Geiger는 단일 명령어로 머신에 설치된 모든 AI 에이전트, 모델 컨텍스트 프로토콜(MCP) 서버, 플러그인, AI 확장 프로그램을 인벤토리합니다. 이 도구는 이러한 도구가 접근할 수 있는 기능(예: 파일 시스템, 네트워크, 저장된 자격 증명 등)을 식별함으로써, 급속도로 확산되는 AI 에이전트 활용 시대에 머신의 공격 표면을 이해할 수 있도록 돕습니다.

핵심 기능 및 보안 모델

Geiger는 알려진 구성 위치와 디렉터리를 분석하여 AI 도구를 식별하는 읽기 전용 스캐너입니다. 발견한 에이전트를 실행하지 않으며, 런타임 동작을 모니터링하지도 않습니다. 대신, 구성 기반으로 부여된 잠재적 기능을 매핑합니다.

세 가지 보안 약속

이 도구 자체가 보안 위험으로 변하지 않도록 하기 위해, Geiger는 세 가지 엄격한 제약 조건을 준수합니다:

  1. 읽기 전용 운영: 사용자가 플래그를 통해 명시적으로 JSON 또는 HTML 보고서를 요청하지 않는 한 디스크에 쓰지 않습니다.
  2. 제로 텔레메트리: 어떤 데이터도 머신 외부로 나가지 않습니다. 외부 엔드포인트가 없으며 사용 통계를 추적하지도 않습니다.
  3. 비밀 정보 보호: Geiger는 '형태'를 기준으로 자격 증명 존재 여부를 식별합니다(예: API_KEY라는 이름의 키를 인식), 하지만 비밀 값 자체는 절대 출력하지 않습니다.

탐지 기능

Geiger는 여러 생태계를 스캔하여 시스템 내 AI 발자국을 포괄적으로 파악합니다. 각 발견 항목은 출처(레지스트리, git, 로컬 스크립트 등)와 노출 수준으로 라벨링됩니다.

지원되는 생태계

  • Claude Code 및 MCP 호스트: Claude Desktop, Cursor, Windsurf, VS Code, Cline, Roo Code, Continue, Zed에서 글로벌 및 프로젝트 수준의 MCP 서버, 훅, 플러그인을 탐지합니다.
  • 일반적인 AI 에이전트: Aider, Open Interpreter, GitHub Copilot CLI, Goose, LM Studio, Ollama, 그리고 Gemini, Grok, DeepSeek의 다양한 CLI 도구 설치를 식별합니다.
  • 편집기 및 브라우저 확장 프로그램: VS Code, Cursor, 주요 브라우저(Chrome, Edge, Brave, Firefox)의 AI 확장 프로그램과 부여된 권한을 스캔합니다.
  • IDE 통합: JetBrains IDE 내부의 AI 어시스턴트 및 MCP 설정을 식별합니다.

노출 레이블

발견 결과는 에이전트가 허용된 작업에 따라 다음과 같은 레이블로 분류됩니다:

  • EXECUTES: 에이전트가 머신에서 코드를 실행할 수 있습니다.
  • BROAD-FILESYSTEM: 에이전트가 파일 시스템에 광범위한 접근 권한을 가지고 있습니다.
  • HOLDS-SECRETS: 에이전트의 구성에 자격 증명이 포함되어 있습니다.
  • NETWORK / BROAD-WEB: 에이전트가 네트워크 또는 광범위한 웹 접근 권한을 가지고 있습니다.

사용 및 플릿 관리

Geiger는 설치 없이도 npx geiger-scan을 통해 실행 가능한 의존성 없는 JavaScript 패키지로 배포됩니다.

운영 모드

  • 베이스라인 및 드리프트 탐지: 사용자는 머신 상태를 JSON 파일(--json baseline.json)로 저장하고, 이후 스캔에서 --diff 플래그를 사용할 수 있습니다. --strict와 함께 사용하면 새로운 기능(예: 코드 실행)이 추가될 경우 도구가 코드 2로 종료되며, 이를 통해 머신 보안의 "락파일"처럼 작동할 수 있습니다.
  • 보고서 생성: 터미널 출력 외에도, Geiger는 각 발견 항목에 대한 평이한 언어로 된 개선 지침을 포함한 자체 포함형 HTML 보고서를 생성합니다.
  • 기업 배포: 관리 서비스 제공업체(MSP) 또는 IT 부서에서는 Geiger를 정기 작업으로 실행하여 중앙 공유 폴더에 JSON 보고서를 작성함으로써 조직 전체에서 "섀도우 AI"를 모니터링할 수 있습니다.

기술적 제한 사항

Geiger는 완전한 보안 감사가 아니라 인벤토리 도구입니다. 그 효과는 다음의 제한 사항에 의해 제한됩니다:

  • 알려진 경로만: 알려진 구성 위치만 읽습니다. 비표준 경로, 컨테이너, 또는 Windows에서 WSL을 스캔할 때는 탐지되지 않습니다.
  • 정적 분석: 런타임 동작이 아닌 구성만 읽습니다. 플러그인이 실제로 무엇을 했는지는 알 수 없으며, 허용된 작업만 확인할 수 있습니다.
  • 악성 여부 탐지 불가: 패키지의 출처와 접근 가능한 범위는 식별하지만, 패키지가 악성인지 판단하지는 않습니다.

커뮤니티 인사이트

허커 뉴스 사용자들은 AI 에이전트를 실행할 때 격리의 중요성을 강조했습니다. 한 사용자는 다음과 같이 언급했습니다:

정말로 당신이 실제 작업에 사용하는 시스템 드라이브/일반 파일 시스템에 영향을 미치지 못하게 하는 방식으로 실행해야 합니다. 최첨단 모델이라도 컨텍스트 한계에 도달했을 때 매우 비논리적이며 자주 실수를 저지릅니다.

다른 논의에서는 Geiger가 기업 거버넌스 회사가 기업 환경 내에서 비승인된 AI 도구 사용인 "섀도우 AI"를 추적하는 데 사용될 수 있다는 가능성이 제기되었습니다.

Sources

관련

  • Dispatch
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트