콘텐츠로 이동

anti-patterns

사양이 명시한 금지사항. MCP 서버는 자신에게 발급되지 않은 토큰을 받아서는 안 된다. JWT면 aud 검증, 불투명 토큰이면 introspection. — mcp-security-best-practices

*, all, full-access 같은 스코프. 토큰 하나가 침해되면 끝장난다. 점진적 권한 상승 모델로.

호스트가 묻는 동의를 자동 통과시키는 hook/스크립트. 버그가 아니라 기능을 끄는 짓.

도구가 사용자(=LLM) 입력으로 받은 URL을 그대로 fetch. 클라우드 메타데이터(169.254.169.254)로 인스턴스 자격 증명 유출.

순차 ID, 짧은 난수, MD5 해시. 암호학적 UUID만.

DNS 리바인딩 공격 통로. 로컬은 127.0.0.1만.

7. Redirect URI를 와일드카드로 검증

섹션 제목: “7. Redirect URI를 와일드카드로 검증”

정확 문자열 일치만 안전. 패턴 매칭은 우회된다.

DataTalksClub처럼 운영 DB를 날린다. read-only로 시작, 쓰기는 별도 보안 리뷰. — datatalksclub case

9. 토큰을 코드/.mcp.json/Git에 커밋

섹션 제목: “9. 토큰을 코드/.mcp.json/Git에 커밋”

project 스코프 .mcp.json은 Git에 들어간다. 환경변수만 사용.

10. “MCP면 안전하다”는 메일을 임원에게 보내기

섹션 제목: “10. “MCP면 안전하다”는 메일을 임원에게 보내기”

MCP는 보안 원칙을 정의할 뿐이다. 모든 방어는 직접 구현. 임원에게 “표준이라 안전”이라고 말하지 말 것.