2026-07-31T08:45:31.642Z
MCP 보안 취약점: 패치하기 전에 노출 증명
MCP 권고를 실행 시간 특화 노출 영수증으로 전환한 후, 제거 후 도구와 예상 결과를 검증하세요.
MCP 취약점이 피드에 들어오면, 첫 번째 운영 질문은 "헤드라인의 심각성은 어느 정도인가?"가 아닙니다. 내용은 다음과 같습니다: 이 권고가 실제로 제 에이전트 경로에 있는 컴포넌트에 도달하나요? 익스플로잇을 실행하거나 모든 패키지를 대량 업데이트하거나 클린 스캔이 충분하다고 선언하기 전에 반드시 답변하세요. 방어 가능한 평결은 다섯 가지 증거와 함께 이루어집니다: 1. 정확한 권고와 패키지 식별; 2. 설치된 및 출시 버전; 3. 자문 출판사의 영향 범위 결과; 4. 취약한 진입 지점의 접근 가능성과 임시 완화책; 5. 사후 정화 도구 프로브와 의도된 작업 결과에 대한 영수증이 포함되어 있습니다. 이 조인은 absent , unknown , not affected , affected not reachable , exposed , patched unverified , remediation regression , 또는 remediated 등 유용한 소수의 상태를 생성합니다. 또한 두 가지 위험한 지름길을 막아줍니다: 패키지 존재를 확인된 노출로 처리하고, 성공적인 업그레이드 명령을 복구로 간주하는 것입니다. 응답을 선택하기 전에 노출 조인을 구축하세요 취약점 카탈로그는 발견에 유용하지만, 실행 시 인벤토리는 아닙니다. 권고는 락파일에만 나타나는 패키지, 버려진 환경, 실행되지 않는 컨테이너 계층, 또는 전이적 개발 의존성을 명명할 수 있습니다. 역실패는 더 심각합니다: MCP 클라이언트가 래퍼나 전역 설치를 통해 패키지를 실행할 수 있는데, 저장소 스캔이 검사하지 않습니다. MCP 프로세스를 소유하는 런타임 경계에서 증거를 수집하세요. 프롬프트, 도구 인수, 토큰, 절대 경로, 비즈니스 데이터를 업로드하지 마세요. 컴팩트 영수증은 다음과 같이 생길 수 있습니다: matchStatus 은 생태계의 버전 문법을 이해하는 패키지 관리자, SBOM 도구 또는 구조화된 자문 피드에서 나와야 합니다. 버전 문자열을 어휘로 비교하지 마세요. 검토된 GitHub 권고문 mcp remote 예를 들어, 레코드는 첫 번째 패치된 버전만큼 영향을 받고 = 0.0.5, < 0.1.16 0.1.16 . 검토된 권고문 @modelcontextprotocol/server filesystem 레거시 범위와 날짜 기반 라인을 모두 포함하며, 2025.7.1 가 해당 라인의 첫 패치 릴리스입니다. 하나의 손글씨 비교기는 두 방식을 정규화하기에 적합하지 않습니다. 패키지와 버전 증거는 여전히 접근 가능성을 확립하지 못합니다. 현재 버전 MCP 보안 모범 사례 구성이 왜 중요한지 보여줍니다. 혼란스러운 부대표 분석은 정적 제3자 클라이언트 ID를 사용하는 프록시, 동적 클라이언트 등록, 동의 쿠키, 그리고 클라이언트별 동의 누락 등 여러 조건이 일치해야 한다고 명시합니다. 동일한 지침과 MCP 권한 명세 토큰 패스스루를 금지하고, 리소스 서버가 토큰이 발급되었는지 검증하도록 요구합니다. 이러한 컨트롤은 노출 전용 영수증의 필드로 지정되어야 하며, 일반적인 "보안 활성화" 체크박스가 아닙니다. 권한 권고를 위해서는 청중 검증, 리디렉션 매칭, 동의 소유권, 프록시 행동을 수집하세요. 파일 시스템 권고를 위해서는 실행된 서버 버전, 허용된 루트, 접근 가능한 툴 서피스, 그리고 영향을 받는 진입 지점을 사용할 수 없게 하는 정확한 완화 조치를 수집하세요. 명령 인젝션 권고의 경우, 클라이언트 래퍼, 버전, 원격 서버 신뢰 경계, 그리고 해당 연결 경로가 호출될 수 있는지 수집합니다. 장애가 확인된 진입 지점이 있는 영향을 받은 부품은 affected not reachable 가 아니라 not affected 입니다. 그것은 유용한 격리 증거지만, 만료됩니다. 패치의 소유자와 마감일을 기록하세요. 구성 편집, 배포 롤백, 또는 새 클라이언트가 경로를 다시 접근 가능하게 만들 수 있기 때문입니다. 익스플로잇이 아니라 내용이 없는 분류기를 실행하세요 사고를 우회하는 데 무기화된 탄두가 필요하지 않습니다. 다음 결정 규칙은 의도적으로 보수적입니다: 주 이름은 다음 결정을 인코딩합니다: 국가 증거가 증명하는 것 다음 행동은 경계 absent 명명된 컴포넌트는 검사된 런타임 경계에 존재하지 않습니다 재고 기록 범위와 이 경계 마감 unknown 신원, 버전, 권고적 매칭, 또는 접근 가능성이 누락되었거나 상쇄되어 있습니다 불확실성을 유지하고; 첫 번째 누락된 필드를 해결하기 not affected 설치된 컴포넌트가 퍼블리셔의 영향 범위 밖에 있습니다 원료와 신선도를 유지하고; 유사한 패키지 이름에서 보호를 추론하지 마십시오 affected not reachable 영향을 받은 코드는 존재하지만, 지정된 진입점은 검증된 격리로 차단되어 있습니다 격리를 유지하고, 패치 소유자를 할당하며, 만료 시간을 설정하세요 exposed 영향을 받은 버전과 접근 가능한 진입 지점이 일치합니다 경로를 통제하고, 불필요한 권한을 철회하며, 복구하세요 patched unverified 버전은 범위를 벗어났으나 기능적 증거는 불완전합니다 안전한 카나리아 툴 프로브를 실행하여 예상 목적지를 확인하세요 remediation regression 패치나 격리가 필요한 도구나 결과를 망가뜨렸습니다 위험한 길을 통제하세요; 호환성 수리 또는 리뷰된 롤백 사용 remediated 버전, 안전한 도구 동작, 그리고 의도된 결과는 모두 통과합니다 신선도를 모니터링하고 증거 영수증으로 마감하세요 저는 이 규칙을 각 주별로 8건의 내용 없는 사건에 적용했습니다. 여덟 개 모두 예상 결과에 부합했다. 가장 가치 있는 사례는 @modelcontextprotocol/server filesystem 권고의 수정된 릴리스에 포함되어 있지만, 안전 도구 프로브가 실패한다는 점입니다. 분류기는 remediation regression 가 아니라 remediated 를 반환합니다. 이 경계는 보안 작업이 에이전트 건강 사고를 일으킬 수 있기 때문에 중요합니다. 의존성 업데이트는 실행 명령어, 기능 스키마, 허용된 루트, OAuth 흐름, 또는 클라이언트 호환성을 변경할 수 있습니다. 취약한 코드는 에이전트의 필수 작업이 여전히 깨진 상태일 수 있습니다. 영수증에는 제한이 있습니다. 이는 미지의 익스플로잇이 해당 컴포넌트에 도달할 수 없다는 것을 증명하지 않습니다. 의심되는 유해 후 법의학 증거를 대체하지 않습니다. 또한 정확한 패키지 식별과 최신 권고 데이터에도 의존합니다; 두 출처가 다를 경우 unknown 반환하고 두 출처 모두 보존하세요. 그 CVE 2025 6514의 NVD 기록예를 들어, mcp remote 명령 인젝션 문제에 대한 추가 날짜 기록을 제공하지만, 패키지 범위는 매처가 사용한 정확한 검토된 권고와 여전히 연동되어야 합니다. 에이전트 건강을 보존하는 순서로 패치하세요 격리와 정화는 폭발 반경이 다르기 때문에 별도의 승인이 필요합니다. 실용적인 순서는 다음과 같습니다: 1. 신원 동결. 권고 ID, 패키지, 실행 버전, 클라이언트 또는 서버 소유자, 증거 시간을 기록하세요. 2. 명명된 경로를 포함하세요. 취약한 서버, 원격 연결, 도구 또는 권한 경로를 가장 작은 가역 변경 사항으로 비활성화하세요. 3. 권한 축소. 해당 구성 요소와 관련된 불필요한 자격 증명과 권한을 취소하세요. 노출 증거나 정책상 요구할 때만 비밀을 순환시키십시오; 회전은 유용한 증거를 파괴하고 관련 없는 정전을 일으킬 수 있습니다. 4. 퍼블리셔가 지원하는 수정 패치를 설치하세요. 임의의 최신 버전이 아닌 지정된 패치된 라인을 사용하고, 패키지 관리자 결과를 유지하세요. 5. 실제 소유자를 재시작하세요. 장기간 실행 중인 에이전트 클라이언트가 여전히 이전 프로세스를 소유하고 있다면 lockfile이나 이미지 태그를 업데이트하는 것만으로는 충분하지 않습니다. 6. 안전한 도구 프로브를 돌려라. 합성되고 권한이 낮은 대상을 사용한다. 익스플로잇을 재생하거나 생산 데이터를 카나리아로 돌리지 마세요. 7. 목적지 결과를 확인하세요. 파일, 티켓, 기록, 메시지 또는 기타 예상 결과가 존재하며 정확한지 확인하세요. 8. 안정성 창을 관찰하세요. 구성 요소가 예상대로 접근 가능한지, 취약 범위에 다시 진입하지 않는지, 패치 후 반복적으로 실패하지 않는지 확인하세요. 도구 프로브와 결과 영수증을 구분하세요. 파일 시스템 도구는 잘못된 허용 루트 주소로 쓰는 경우에도 성공을 반환할 수 있습니다. 티켓 도구는 레코드가 나중에 거부되는 동안 요청을 수락할 수 있습니다. MCP 운송은 에이전트의 전달물이 없어도 건강하게 유지될 수 있습니다. 첫 번째 영수증은 수리된 능력이 안전하게 작동할 수 있음을 증명합니다; 두 번째는 사용자의 작업이 실제로 도착했음을 증명합니다. 가장 강력한 증거가 일치할 때만 사건을 종료하세요: 권고가 더 이상 발사 부품과 일치하지 않고, 이전에 취약했던 경로가 통제되며, 안전한 카나리아가 통과하고, 의도된 결과가 나타났을 때입니다. 어떤 필드가 진부하거나 모순된다면, 초록색으로 칠하지 않고 상태를 명확하게 유지하세요. Sidewisp는 현재 비공개 프리뷰 단계입니다. 제품의 방향성은 기존 에이전트 런타임에 대한 건강 계층입니다: 구체적인 증거를 제시하고, 작업 중과 기다리거나 막히는 것을 구분하며, 인간의 승인을 행동 경계에 유지하고, 개입 후 결과를 검증합니다. 현재의 공개 경험은 초기 접근 시연이지, 출하된 MCP 스캐너, 모니터링 어댑터, 자동 복구 엔진이 아닙니다.