DEEP DIVE REPORT

Kali-GPT MCP 서버의 OS 명령 삽입(CVE-2026-117569): execute_tool() 경로의 입력 검증 공백과 점검 포인트

SecurityDesk
• 2026.10.28 • 조회 3

Kali-GPT를 MCP(Model Context Protocol) 서버로 연결해 보안 스캐닝 에이전트에 붙여 운영하는 구성이라면, CVE-2026-117569는 모델의 응답 안정성이 아니라 도구 실행 코드와 입력 신뢰 경계를 다시 보게 하는 신호입니다. 확인된 문제는 스캐너 파라미터가 셸 명령으로 조립되는 지점에 입력 검증이 빠져 있다는 점입니다.

개요

개요 인포그래픽
CVE 프로젝트와 VulnCheck(CNA)는 Kali-GPT의 OS 명령 삽입 취약점을 CVE-2026-117569로 등록했습니다. VulnCheck advisory에 따르면 Kali-GPT는 커밋 a608c74까지 kali_gpt/tools/mcp_server.py의 execute_tool() 함수에서 OS command injection 취약점을 포함하며, MCP 클라이언트가 검증되지 않은 스캐너 파라미터를 통해 명령을 실행할 수 있습니다. 같은 advisory는 공격자 또는 프롬프트 인젝션에 감염된 에이전트가 스캐너 파라미터에 셸 명령을 심을 수 있다고 설명합니다.

보고의 출발점은 Kali-GPT GitHub Issue #12입니다. 보고자 nguyenvantiennani는 대화형 CLI 경로에는 보안 통제가 존재할 수 있으나 MCP 서버 실행 경로, 즉 execute_tool() 함수는 셸 명령을 구성하고 실행하기 전에 입력 sanitization이나 validation을 구현하지 않는다고 보고했습니다. 같은 보고는 MCP 경로에도 대화형 CLI 경로와 같은 보안 통제가 필요하다고 지적하며 이 문제를 CWE-78 유형으로 분류했습니다.

범위를 한정해 둡니다. 이번 검토에 전달된 CVE·Issue·advisory 인용에는 CVSS 점수나 벡터 같은 공식 심각도 수치가 포함되어 있지 않아, 이 글에서는 정량적인 위험 등급을 제시하지 않습니다. 공개 PoC와 실제 악용 사례도 전달된 근거에서 확인되지 않았습니다. 프롬프트 인젝션이 어떤 단계를 거쳐 스캐너 파라미터로 전달되는지를 세부까지 추적한 자료도 전달되지 않았습니다. 아래에서는 확인된 사실과 아직 확인되지 않은 사실을 나눠 다룹니다.

영향 범위

전달된 근거가 지지하는 영향 범위는 다음과 같습니다.

  • Kali-GPT through commit a608c74(해당 커밋까지의 모든 버전)
  • kali_gpt/tools/mcp_server.py의 execute_tool() 함수를 지나는 MCP 서버 실행 경로

즉 영향 판정의 기준은 CVE가 적은 버전 범위와 MCP 서버 실행 경로이고, 실제 노출 여부는 execute_tool()로 스캐너 파라미터를 전달할 수 있는 MCP 클라이언트 연결이 실제로 존재하는지로 확인해야 합니다. 버전 범위에 포함되더라도 그 경로를 호출하는 구성이 없으면 직접적인 노출은 성립하지 않습니다.

대화형 CLI로만 사용하는 구성은 이번 취약점의 직접적인 실행 경로로 지적되지 않았습니다. 보고자는 대화형 CLI 경로에 보안 통제가 존재할 수 있다고 표현했지만, 이는 MCP 서버 경로와 대화형 CLI 경로를 대조하기 위한 서술입니다. 보고 문서 자체가 MCP 서버 실행 경로에는 셸 명령을 구성하고 실행하기 전 입력 sanitization이나 validation이 없다고 명시하기 때문입니다. 따라서 CLI 경로가 안전하다고 해석할 근거는 전달된 자료에 없습니다.

확정하지 못한 범위도 분명히 해 둡니다. CVSS 심각도 평가, 수정 커밋 또는 릴리스 번호, CISA KEV 등재 여부는 전달된 근거에서 확인되지 않았습니다. 이 도구를 조직 규모로 얼마나 배포하는지에 대한 근거도 없어, 도입 여부는 각자의 인벤토리로 확인해야 합니다.

기술적 분석

기술적 원인은 execute_tool() 안에 있습니다. 전달된 인용의 한도에서 보면, kali_gpt/tools/mcp_server.py의 MCP 서버 실행 경로는 스캐너 파라미터를 다루는 과정에서 셸 명령을 구성하고 실행하기 전에 입력 sanitization이나 validation을 구현하지 않습니다. CVE 레코드와 advisory가 동시에 unsanitized scanner parameters를 실행 조건으로 적시하는 지점도 같습니다. 파라미터 값이 검증 없이 셸 명령 문자열의 일부로 들어가는 구조라면, 스캐너 동작을 기대했던 호출이 호스트 셸에서의 명령 실행으로 확장될 수 있습니다.

중요한 것은 명령 실행의 주체가 MCP 클라이언트라는 점입니다. CVE 레코드는 MCP 클라이언트가 검증되지 않은 스캐너 파라미터를 통해 명령을 실행할 수 있다고 기재합니다. MCP는 에이전트가 도구를 호출하는 인터페이스이므로, 파라미터 값이 도달하는 통로 자체가 곧 명령 삽입의 유입 지점이 됩니다. 여기서는 통로의 존재가 곧 위험의 크기와 직결됩니다.

결과 지점은 호스트입니다. 명령은 MCP 서버가 동작하는 환경에서 실행되므로, Kali-GPT가 스캐너 도구로 동작하는 구성에서 셸 명령 삽입을 통한 시스템 침해가 가능합니다. VulnCheck advisory는 공격자 또는 프롬프트 인젝션에 감염된 에이전트가 스캐너 파라미터에 셸 명령을 심을 수 있다고 명시합니다. 다만 어떤 콘텐츠의 어떤 지시문이 어떤 조건에서 MCP 도구 호출 파라미터로 전달되는지에 대한 구체적 경로와 요건은 전달된 근거에 제시되어 있지 않습니다. 이 글에서는 advisory가 지적한 가능성까지만 사실로 다루고, 특정한 침투 시나리오는 검증이 필요한 과제로 남겨 둡니다.

악용 현황에 대해 말할 수 있는 것은 제한적입니다. 공개 PoC는 확인되지 않았고 실제 악용 사례도 확인되지 않았습니다. 동시에 전달된 인용에 공식 심각도 산정 수치가 없어 정량 지표로 긴급도를 대신할 수도 없습니다. 결국 현 시점에서는 실행 경로가 실제로 열려 있는가, 그 경로로 외부 영향 가능한 입력이 도달하는가라는 노출 조건 자체가 판단의 기준이 됩니다. 공개 익스플로잇이 관측되지 않았다는 사실은 아직 공격 사례가 드러나지 않았을 가능성을 보여 줄 뿐, 입력 검증 없는 MCP 실행 경로가 사라졌다는 근거는 아닙니다.

대응 방안

지금 확인할 것

  • MCP 서버 모드로 Kali-GPT를 실행 중이라면 해당 사용을 중단하거나, MCP 클라이언트 연결이 닿지 않는 환경으로 격리합니다. 이번 취약점이 지적된 실행 경로가 바로 MCP 서버 경로이기 때문입니다.
  • Kali-GPT를 에이전트에 연동한 구성이라면, execute_tool()로 스캐너 파라미터를 전달할 수 있는 MCP 클라이언트 연결이 무엇인지 식별해 노출 범위를 확정합니다.
  • Kali-GPT를 MCP 서버로 쓰지 않는다면 실행 경로 자체가 성립하지 않으므로, 인벤토리에서 MCP 서버 모드 사용 여부를 확인하는 수준으로 관리할 수 있습니다.
  • Kali-GPT GitHub Issue #12를 팔로우해 수정 커밋 출시 여부를 확인합니다. 현재 CVE 레코드는 through commit a608c74까지 영향으로 기재할 뿐 수정 버전 번호를 제시하지 않습니다.

패치 전까지의 경로 관리

수정 커밋이 포함된 상위 버전이 확인되면 업데이트를 적용하는 것이 기본입니다. 수정 버전 번호는 아직 확인되지 않았으므로, 현 시점에서는 출시 확인 절차를 운영하면서 MCP 서버 실행 경로를 중심으로 판단하는 것이 합리적입니다. 보고 문서가 MCP 서버 경로와 대화형 CLI 경로의 보안 통제 차이를 지적하는 만큼, MCP 서버 실행 경로를 비활성화하고 대화형 CLI 경로만 쓰는 운영 전환은 검토할 수 있는 선택지입니다. 단 대화형 CLI 경로의 통제 수준은 전달된 근거에서 검증된 사실이 아니므로, 이 선택지를 안전 보장으로 취급해서는 안 됩니다.

우선순위는 확인된 메커니즘과 아직 확인되지 않은 정보를 함께 놓고 판단하는 것이 합리적입니다. 공식 심각도 수치와 CISA KEV 등재 여부, 수정 버전이 모두 확인되지 않았기 때문에, 정량 지표보다는 실행 경로의 노출 상태로 순위를 정할 수밖에 없습니다. MCP 서버 실행 경로가 열려 있고 그 경로로 외부 영향 가능한 스캐너 파라미터가 도달하는 구성일수록 대응 순위를 앞당기고, 해당 경로를 쓰지 않는 구성은 확인 수준으로 관리하는 구분이 가능합니다.

이번 자료로 답할 수 없는 영역

공식 탐지 시그니처나 벤더 권고문은 전달된 근거에서 확인되지 않았습니다. 따라서 이 글에서는 로그 수집 항목이나 탐지 규칙을 제시하지 않습니다. 메커니즘만 보고 특정한 모니터링 지침을 만들어 인용하면, 실제 로그 형태와 다른 기준으로 점검하는 오류가 생길 수 있습니다. 수정 커밋 링크, CVSS 벡터, CISA KEV 등재 여부가 공개되는 시점에 대응 우선순위를 다시 계산하는 것이 정확합니다.

참고자료

함께 읽으면 좋은 글

본 콘텐츠는 AI 기술로 작성된 분석 리포트를 포함하고 있습니다. 내용 중 사실과 다르거나 보완이 필요한 정보를 발견하셨으면 댓글을 통해 의견을 부탁드립니다. 여러분의 피드백은 더 정확한 보안 정보 공유에 큰 도움이 됩니다.

댓글 (0)

댓글을 작성하려면 로그인이 필요합니다.

로그인

아직 댓글이 없습니다.

첫 번째 댓글을 작성해보세요!

IT 도구 서랍

→ Unix: 2025-01-15T09:30:00
→ 날짜: 1736934600

→ ASCII: ABC
→ 문자: 65 66 67

ASCII 코드표 — 클릭하면 입력란에 추가

DecHex약어설명
DecHex문자
DecHex문자

→ 유니코드: 홍길동
→ 문자: \ud64d\uae38\ub3d9