OWASP는 에이전트가 허용 범위를 넘어 행동하는 ‘과도한 에이전시’를 별도 위험으로 다룹니다 (OWASP의 과도한 에이전시 위험 설명). 따라서 MCP와 AI Agent Skills는 이름만으로 안전성을 판단할 수 없습니다. 출처와 의존성, 권한, 데이터가 이동하는 곳, 실행 격리를 확인하고, 검증할 수 없는 도구는 권한을 주지 말고 접속을 보류하세요.
이 글은 MCP 서비스를 연결하는 개발자, 제3자 AI 도구를 검토하는 팀, AI Agent 배포를 맡은 기술 책임자를 위한 점검 안내입니다.
이번 주에는 실제로 연결할 도구 하나를 골라 권한과 데이터 흐름부터 기록하세요.
마지막 업데이트: 2026년 7월 7일. 검토 자료는 MCP 프로젝트의 보안 정책과 권한 안내, 기술 문서 및 아래에 링크한 보안 지침입니다. 특정 버전의 안전성이나 개별 도구의 취약점을 판정한 글은 아닙니다.
MCP와 AI Agent Skills의 안전성을 출처와 권한으로 판단하세요
MCP와 AI Agent Skills를 쓰기 전에 어떤 보안 위험을 확인해야 하나요? 먼저 누가 공개하고 유지하는지, 어떤 권한을 요구하는지, 입력과 출력이 어디로 전달되는지 확인하세요. 코드나 지침, 의존성, 인증 방법까지 검토해야 안전 판단의 근거가 생깁니다. 하나라도 확인할 수 없거나 작업에 필요하지 않은 권한을 요구하면 연결을 멈추는 편이 낫습니다.
아래 항목은 접속 전 검토를 위한 위험 분류입니다. 특정 사고가 실제로 발생했다거나 모든 구현에 문제가 있다는 뜻은 아닙니다. MCP 프로젝트의 보안 정책도 구현과 설정에 따른 보안 검토의 필요성을 안내합니다.
| 점검 대상 | 통과에 가까운 증거 | 보류 신호 | 평가 |
|---|---|---|---|
| 출처와 유지 관리 | 공개 저장소, 유지 관리 정보, 검토 가능한 변경 기록 | 배포자나 업데이트 경로를 확인할 수 없음 | 통과 / 보류 |
| 권한과 데이터 흐름 | 기능에 필요한 권한만 명시하고 전달 대상이 설명됨 | 불필요한 쓰기·실행 권한 또는 불명확한 전송 대상 | 통과 / 중단 |
| 실행 내용과 의존성 | 지침·스크립트·의존성을 검토할 수 있음 | 읽을 수 없거나 범위를 제한할 수 없는 실행 내용 | 통과 / 중단 |
| 운영 통제 | 감사 기록과 권한 취소 방법이 마련됨 | 이상 동작을 찾거나 접속을 끊을 수 없음 | 통과 / 보류 |
MCP와 AI Agent Skills의 제3자 출처는 어떻게 확인하나요? 게시 주체만 보지 말고 코드, 유지 관리 기록, 의존성, 업데이트 경로가 서로 일치하는지 살펴보세요. Skills 규격과 기술 사양, 작성 안내는 검토할 형식과 작성 관련 정보를 제공합니다. 문서가 있다는 사실만으로 내용의 안전성이 보장되지는 않습니다.
도구 호출과 결과에서 권한 초과를 찾아내세요
MCP는 도구 호출과 그 결과를 에이전트의 판단 과정에 연결합니다. 그 연결이 안전한지는 각 구현의 권한 설정과 데이터 처리 방식에 달려 있습니다.
| 위험 | 발생할 수 있는 조건 | 확인할 증거와 대응 |
|---|---|---|
| 1. 과도한 권한 | 읽기 작업에 파일 수정이나 명령 실행 권한까지 허용 | 권한 목록을 대조하고 불필요한 쓰기·실행 권한을 제거합니다 |
| 2. 도구 결과를 통한 지시 주입 | 외부 문서나 응답이 에이전트에게 기존 지시를 무시하도록 유도 | 결과를 신뢰할 수 없는 입력으로 취급하고 고위험 작업을 별도 승인으로 제한합니다 |
| 3. 민감 정보의 예상 밖 전송 | 요청값이나 대화 맥락이 설명되지 않은 외부 목적지로 전달 | 요청과 응답, 목적지, 로그에 포함되는 데이터를 확인하고 민감 정보를 분리합니다 |
도구가 반환한 텍스트가 사용자 지시처럼 보이더라도 곧바로 실행하지 마세요. OWASP의 프롬프트 주입 방어 지침은 외부 입력을 신뢰된 지시와 분리하고, 실행 전 통제를 두는 방향을 다룹니다. MCP 구현에 적용할 OWASP 보안 통제 문서도 권한과 도구 동작을 검토할 때 참고할 수 있습니다.
테스트에서는 실제 비밀키 대신 폐기 가능한 시험용 값을 사용하세요. 로그나 도구 응답에 그 값이 남는지 확인한 뒤, 기록과 시험용 권한을 함께 정리해야 합니다.
설치부터 실행까지 공급망과 지침을 검토하세요
AI Agent Skills에 포함된 지침이나 스크립트가 안전한지 어떻게 판단하나요? 지침이 사용자의 요청을 우회하거나 보안 제약을 무시하도록 유도하는지 살펴보세요. 스크립트와 명령, 외부 의존성은 내용을 직접 검토하고 격리된 환경에서 동작을 확인해야 합니다. 출처가 불명확하거나 유지 관리 상태를 검증할 수 없다면 실행하지 마세요.
| 위험 | 발생할 수 있는 조건 | 확인과 완화 |
|---|---|---|
| 4. 출처·의존성 변조 또는 불명확성 | 다운로드 경로나 유지 관리 주체를 확인할 수 없음 | 공식 안내, 검토 가능한 코드, 변경 기록을 서로 대조합니다 |
| 5. 사용자 의도를 벗어나는 Skills 지침 | 지침이 권한 확대나 안전 제약 우회를 요구 | 지침 전체를 읽고 허용되지 않은 지시를 제거하거나 접속을 보류합니다 |
| 6. 예상 밖의 스크립트·명령 실행 | 설치나 실행 과정에서 파일 변경, 네트워크 통신, 명령 호출이 발생 | 실행 내용을 검토하고 낮은 권한의 분리된 시험 환경에서 동작을 확인합니다 |
MCP 프로젝트의 권한 보안 안내는 권한 부여 과정에서 살펴볼 보안 고려 사항을 설명합니다. 다만 문서에 적힌 방식이 모든 서버나 클라이언트에 동일하게 적용된다고 가정하지 말고, 실제 배포 환경의 동작과 설정을 확인해야 합니다.
자격 증명과 도구 간 연결을 제한하세요
MCP와 AI Agent Skills가 민감 정보를 노출할 수도 있나요? 설정 파일, 프롬프트 맥락, 로그, 도구 사이의 데이터 전달에 비밀 정보가 포함되면 노출될 가능성이 있습니다. 가능성만으로 모든 구현의 유출을 단정할 수는 없습니다. 어디에 저장되고 누가 읽을 수 있는지, 어떤 도구로 전달되는지 확인하세요.
| 위험 | 확인할 지점 | 대응 |
|---|---|---|
| 7. 비밀 정보 노출 | 설정·프롬프트·로그에 키나 자격 증명이 포함되는지 | 비밀 정보 저장 위치와 로그 기록 범위를 점검하고 시험 값으로 확인합니다 |
| 8. 여러 도구를 거친 권한 오용 | 한 도구의 결과가 다른 도구에 전달되어 승인되지 않은 작업을 유도하는지 | 도구별 권한을 분리하고 중요한 변경이나 외부 전송 전에 사용자 확인을 요구합니다 |
도구 하나씩 살펴볼 때는 문제가 없어 보여도, 도구 간 연결에서는 데이터 전달과 권한 조합이 달라질 수 있습니다. 따라서 작업 흐름 전체를 시험하고, 승인되지 않은 파일 변경이나 외부 전송이 가능한지 확인하세요. NIST는 에이전트형 AI의 신원과 자격 증명 관리를 별도 보안 과제로 설명합니다. 도구에 전달되는 자격 증명은 작업에 필요한 권한만 부여하고, 취소 방법을 미리 마련해야 합니다.
인증과 사후 통제를 준비한 뒤 접속을 결정하세요
위험 9는 토큰과 인증 정보의 취급이 느슨해 재사용·유출·오용으로 이어지는 경우입니다. 위험 10은 감사 기록, 변경 확인, 접속 중단 수단이 없어 이상 동작을 발견하거나 통제하기 어려운 경우입니다. 각각 실제 위험으로 이어지는지는 인증 설정과 운영 통제에 따라 달라집니다. NIST의 신원 관련 안내와 MCP의 권한 보안 고려 사항을 참고해 자격 증명 발급·보관·취소 절차를 확인하세요.
권한과 격리 실행 환경은 어떻게 설정하나요? 작업에 필요한 권한만 부여하고, 민감 데이터가 없는 분리 환경에서 먼저 시험하세요. 도구별로 입력과 출력을 확인하고, 로그에서 호출 내용과 핵심 변경을 찾을 수 있는지 점검합니다. 문제가 생기면 접근 토큰과 연결 권한을 취소할 수 있어야 합니다.
실행 전에는 다음 순서로 검토하세요.
- 공개 주체, 유지 관리 상태, 업데이트 경로를 확인합니다.
- 요구 권한을 작업에 필요한 범위와 대조합니다.
- 입력·출력, 외부 목적지, 로그에 기록되는 데이터를 살핍니다.
- Skills의 지침과 스크립트, 명령, 의존성을 검토합니다.
- 민감 정보가 없는 분리 환경에서 허용·거부 동작을 시험합니다.
- 감사 기록을 확인하고 권한 취소와 연결 중단을 실제로 시험합니다.
출처나 데이터 목적지를 확인할 수 없으면 접속을 보류해야 하나요? 그렇습니다. 필요하지 않은 높은 권한을 요구하거나 실행 범위를 제한할 수 없는 경우도 같은 판단을 적용하세요. 반대로 출처와 동작을 검증하고, 권한을 필요한 범위로 제한하며, 격리와 감사·취소 절차를 시험했다면 위험을 통제하는 조건 아래에서 도입을 검토할 수 있습니다.
가령 이는 가정 사례입니다. 문서 요약 도구가 파일 읽기 권한만 요청하고 전송 대상과 로그 처리를 설명하며, 격리 시험에서 승인되지 않은 파일 변경이 차단된다면 제한된 시험 도입을 검토할 수 있습니다. 반면 출처를 확인할 수 없고 임의 명령 실행을 요구한다면 기능 설명이 좋아 보여도 연결하지 않는 편이 안전합니다.
현재 개발 환경에서 곧바로 도구를 실행하면 로컬 파일과 자격 증명이 같은 권한 경계에 놓일 수 있고, 도구 간 호출을 추적하기 어렵거나 시험 후 권한을 정리하지 못할 수 있습니다. 이런 문제는 환경 구성에 따라 달라지지만, 단기 검증에서는 실행 공간과 업무 환경을 분리하는 선택이 도움이 됩니다. Mac 환경이 필요하다면 VPSSpark의 서비스 안내를 먼저 확인하고, 필요에 따라 한국 결제 페이지에서 대여 조건을 살펴볼 수 있습니다. 대여 환경도 도구 자체의 안전성을 보장하지는 않습니다. 장기간 같은 환경에서 높은 부하를 안정적으로 돌리거나 물리 장치 연결이 필요한 경우에는 구매나 자체 환경이 더 맞을 수 있습니다. 단기 격리 시험이 목적이라면 VPSSpark의 Mac 대여를 검토하되, 위 점검을 통과한 도구만 실행하세요.
제삼자 인공지능 도구, 별도 맥에서 먼저 검증하세요
VPSSpark 원격 맥을 별도 테스트 환경으로 활용해 제삼자 도구의 권한과 데이터 흐름을 점검할 수 있습니다.
전용 물리 장비와 전용 인터넷 주소를 바탕으로 기존 작업 환경과 구분된 맥 작업 공간을 마련합니다.