보안과 승인
기준일: 2026-06-06
난이도: 고급
공식 기준: Security
Hermes는 로컬 명령, 파일, MCP, 메시징 플랫폼을 다룰 수 있으므로 보안 경계가 핵심입니다. 특히 터미널 권한을 가진 에이전트를 메신저까지 연결하면 “누가 말할 수 있는지”와 “무엇을 실행할 수 있는지”를 반드시 분리해야 합니다.
핵심 개념
Hermes의 보안 모델은 여러 층으로 나뉩니다.
| 층 | 질문 |
|---|---|
| 사용자 권한 | 누가 에이전트와 대화할 수 있는가 |
| 위험 명령 승인 | 삭제, 이동, 권한 변경 같은 명령은 승인되는가 |
| 격리 | Docker, Singularity, Modal 같은 환경을 쓰는가 |
| MCP credential filtering | MCP subprocess에 어떤 env가 전달되는가 |
| 컨텍스트 파일 스캔 | 프로젝트 파일의 prompt injection을 어떻게 다루는가 |
| 세션 격리 | 다른 세션 데이터에 접근하지 않는가 |
| 입력 검증 | working directory와 명령 인자를 검증하는가 |
선택 기준
| 운영 환경 | 권장 기본값 |
|---|---|
| 개인 로컬 실험 | manual approval, 읽기 중심 시작 |
| 팀 프로젝트 | allowlist, 명령 승인, MCP whitelist |
| 메시징 게이트웨이 | DM pairing 또는 allowed users 필수 |
| 자동화/cron | headless 승인 정책을 별도로 검토 |
| 민감 코드베이스 | 컨테이너 격리와 secret 분리 우선 |
승인 모드를 끄는 것은 편하지만, 로컬 파일과 외부 계정을 동시에 다룰 때는 사고 범위를 키웁니다.
실습
현재 승인 설정 후보:
approvals:
mode: manual
timeout: 60
cron_mode: deny
mcp_reload_confirm: true
destructive_slash_confirm: true
Hermes에게 보안 점검을 요청합니다.
현재 작업을 실행하기 전에 위험한 명령, 민감 파일, 외부 API 호출 가능성을 분리해줘.
승인이 필요한 단계와 읽기 전용으로 가능한 단계를 나눠줘.
메시징 플랫폼 연결 전:
이 gateway 설정에서 누가 Hermes에게 명령할 수 있는지 확인해줘.
allowlist, DM pairing, 관리자 명령, 위험 명령 승인 기준을 점검해줘.
Hermes에 입력할 프롬프트
보안 리뷰어처럼 행동해줘.
이 작업에서 파일 삭제, 권한 변경, 토큰 노출, MCP env 전달,
메신저 사용자 권한 문제가 있는지 체크리스트로 검토해줘.
수정 명령은 아직 실행하지 마.
체크리스트
- 위험 명령 승인 모드를 확인했다.
- MCP 서버에는 필요한 env만 전달한다.
- 메시징 게이트웨이에 allowlist 또는 pairing이 있다.
- 자동화/cron은 별도 승인 정책을 갖는다.
- 공개 대시보드 노출을 피한다.