MCP 보안 체크리스트: 서버 설치 전 확인할 9가지
MCP 서버를 위한 실용적인 보안 체크리스트: 신뢰성, 버전 고정, 최소 권한, 비밀 관리, 프롬프트 인젝션, 도구 포이즈닝.
왜 중요한가
MCP 서버는 내 권한으로 실행되고, 도구가 돌려주는 내용은 그대로 모델에 전달됩니다. 설치하기 전에 다음을 확인하세요.
체크리스트
- 출처. 공식 또는 잘 알려진 관리자, 최근 커밋, 많은 사용자가 있는 프로젝트를 고르세요. 코드가 짧다면 직접 읽어 보세요.
- 버전 고정. “latest” 대신 특정 버전을 지정해 업데이트로 동작이 몰래 바뀌지 않게 하세요.
- 최소 권한. 파일 서버에는 폴더 하나만, 데이터베이스 서버에는 읽기 전용 사용자만, API 토큰에는 가장 좁은 권한만 주세요.
- 비밀 값. 키는 환경 변수나 클라이언트의 비밀 저장소에 보관하고, 공유 저장소에는 절대 넣지 마세요.
- 프롬프트 인젝션. 도구가 읽는 웹 페이지, 이슈, 이메일에는 숨겨진 지시가 있을 수 있습니다. 쓰기·전송·삭제를 하는 도구는 확인 기능을 켜 두세요.
- 도구 포이즈닝. 모델은 도구 설명도 읽기 때문에 악의적인 설명이 모델을 조종할 수 있습니다. 서버가 무엇을 노출하는지 검토하세요.
- 원격 서버. HTTPS와(제공된다면) OAuth를 사용하고, 신뢰하는 제공자에게만 연결하세요.
- 격리. 신뢰할 수 없는 서버는 컨테이너나 가상 머신에서 실행하세요.
- 정리. 더 이상 쓰지 않는 서버는 삭제하세요.