Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
MCPwner — 자동 취약점 발견을 위한 모델 컨텍스트 프로토콜 서버 | Kitploit
도구/GitHubGitHub/pigyon/mcpwner
Penetration Testing FrameworksReconnaissanceStatic AnalysisVulnerability ScannersDynamic Analysis (Sandboxing)Web SecurityFuzzingDevSecOpsSecret Detection
GitHubpigyon/mcpwner

MCPwner

자동 취약점 발견을 위한 모델 컨텍스트 프로토콜 서버

53811시간 52분 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

MCPwner

MCPwner 오소리 아바타

오소리를 조심하라

보안 연구 자동화를 위한 모델 컨텍스트 프로토콜 서버

Docker MCP Python License

다음과 호환 가능:

Kiro Cursor Claude VS Code Windsurf


개요

MCPwner는 보안 테스트 도구를 LLM 기반 워크플로우에 통합하는 모델 컨텍스트 프로토콜(MCP) 서버입니다. 비밀 스캐닝, 정적 분석(SAST), 소프트웨어 구성 분석(SCA), Infrastructure-as-Code(IaC) 보안, 소스 퍼징, 정찰, 동적 애플리케이션 보안 테스트(DAST) 및 0-day 발견을 포함한 취약점 연구를 위한 통일된 인터페이스를 제공합니다.

수동으로 도구를 연결하고 출력을 LLM에 붙여넣는 대신, MCPwner는 결과를 표준화하여 모델의 작업 컨텍스트로 직접 스트리밍합니다. 이를 통해 공격 표면 매핑, 알려진 취약점 식별, 새로운 공격 벡터 발견 등 보안 연구 생애주기 전반에 걸쳐 지속적인 추론, 상관 관계 분석, 공격 경로 발견이 가능해집니다.

참고: 이 프로젝트는 활발히 개발 중입니다. MCP에 대해 더 알아보려면 여기를 방문하세요.

통합 도구

정찰

향후 도구

향후 릴리스에서 다음 도구가 계획되어 있습니다.

안전하지 않은 역직렬화

SAST 중 식별된 역직렬화 싱크를 무기화하기 위한 가젯 체인 및 페이로드 생성기. 성숙한 가젯 체인 생태계는 Java, .NET, PHP에 존재하며, Python은 악성 pickle 생성을 통해 다룹니다 (Ruby/Node 역직렬화는 페이로드 기반이며 아래 Payloads 코퍼스에 포함됨).

  • ysoserial - Java
  • ysoserial.net - .NET
  • PHPGGC - PHP
  • marshalsec - JVM 마샬러/언마샬러
  • Fickling - Python (pickle)

HTTP 요청 스머글링

  • smuggler - HTTP/1.1 요청 스머글링 / 디싱크 (CL.TE, TE.CL, TE.TE)
  • h2csmuggler - HTTP/2 평문 (h2c) 업그레이드 스머글링 (HTTP/2 디싱크와 구분됨)
  • http2smugl - HTTP/2 요청 스머글링 / 디싱크

페이로드

위 도구를 지원하기 위해 선별된 페이로드 및 워드리스트 코퍼스:

  • SecLists - 퍼징 페이로드, 자격 증명, 인젝션 목록의 집계
  • PayloadsAllTheThings - 취약점 클래스별로 구성된 공격 페이로드 및 우회 기법
  • FuzzDB - 오류 주입 프리미티브 및 예측 가능한 리소스 패턴

사용 예시

자동화된 열거 파이프라인```

"Enumerate and scan example.com" → MCPwner chains: Subfinder + Amass → Masscan + Nmap → httpx → Katana + gau → ffuf + Arjun

root@kitploit:~
### GitHub 저장소에서 비밀 스캔```
"Scan https://github.com/example/repo for secrets"
→ MCPwner runs Gitleaks, TruffleHog, detect-secrets and correlates findings

보안 감사```

"Run a security audit on my Python project" → MCPwner runs Bandit (SAST), OSV-Scanner (SCA), and secrets scanning

root@kitploit:~
### 공격 경로 분석```
"Find vulnerabilities in the authentication module"
→ MCPwner runs CodeQL queries, cross-references with secrets and SCA results

실시간 대상 익스플로잇```

"Test for SQLi and XSS on http://localhost:8080" → MCPwner chains: sqlmap + Dalfox and verifies findings

root@kitploit:~
## 설치

### 사전 요구 사항

**시스템 요구 사항:**

- Docker Engine 20.0+ 및 Docker Compose 2.0+
- 최소 8GB RAM (여러 도구 실행 시 16GB 권장)
- 20GB 여유 디스크 공간 (보안 도구 이미지가 큼)
- 지원 플랫폼: Linux, macOS, Windows (WSL2 포함)

**MCP 클라이언트:**

- Claude Desktop, Cursor, Kiro 또는 MCP 호환 클라이언트

### 설정

1. **리포지토리 복제**:   ```bash
   git clone https://github.com/nedlir/mcpwner.git
   cd mcpwner
  1. 서버 구성: ```bash cp config/config.yaml.example config/config.yaml

    Edit config/config.yaml as needed

    root@kitploit:~
  2. 서비스 시작: ```bash docker-compose up -d --build
    root@kitploit:~
  3. 서비스가 실행 중인지 확인: ```bash docker-compose ps
    root@kitploit:~

IDE 연결

Docker 컨테이너가 실행 중이면, MCPwner를 MCP 클라이언트에 추가하세요:

중요: 동적 도구 등록 MCPwner는 모듈식 옵트인(opt-in) 아키텍처를 사용합니다. 보안 도구는 Docker Compose profiles에 의해 관리됩니다.

  1. .env 파일(COMPOSE_PROFILES=sast,secrets,reconnaissance,dast,etc)은 어떤 컨테이너를 온라인으로 가져올지 결정합니다. 또는 CLI를 통해 이를 재정의하고 특정 프로필을 실행할 수 있습니다: docker compose --profile sast --profile dast up -d.
  2. MCP 서버는 시작 시 실행 중인 컨테이너를 동적으로 검색하고 오직 정상적인 도구만 LLM에 등록합니다.
  3. 특정 도구(예: semgrep)를 생략하려면 .env에서 해당 카테고리(sast)를 생략하고 다른 원하는 도구(bandit,gosec,codeql)를 수동으로 나열하세요.
  4. 참고: utilities 카테고리의 도구(예: Linguist, WireMock, Chromium)는 영구적인 핵심 종속성으로 취급됩니다. 이들은 docker compose up -d에서 조건 없이 실행되어 중요한 도구 간 종속성(언어 감지 등)이 항상 작동하도록 보장합니다.

구성 파일 위치:

  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
  • Cursor/Kiro: 프로젝트 또는 설정 디렉토리의 mcp.json

원클릭 설치 (Docker 실행 필요):

Kiro Cursor Claude VS Code Windsurf

수동 구성:

MCP 구성 파일에 다음을 추가하세요:```json { "mcpServers": { "mcpwner": { "command": "docker", "args": ["exec", "-i", "mcpwner-server", "python", "src/server.py"], "env": {} } } }

root@kitploit:~
새로운 서버 구성을 로드하려면 MCP 클라이언트를 다시 시작하십시오.

### 로컬 프로젝트 스캔

호스트 머신에서 프로젝트를 스캔하려면 `docker-compose.yaml`에 볼륨을 추가하여 컨테이너에 마운트하십시오:```yaml
services:
  mcpwner:
    volumes:
      - /path/to/your/projects:/mnt/projects:ro

그런 다음 다음 옵션을 사용하여 create_workspace 도구를 사용하세요:

  • source_type="local"
  • source="/mnt/projects/my-project"

데이터 영속성

MCPwner는 공유 Docker 볼륨(/workspaces/.metadata/)의 파일 기반 스토리지를 사용하여 컨테이너 재시작 시 작업 공간 및 CodeQL 데이터베이스 메타데이터를 자동으로 유지합니다. 구성이 필요하지 않습니다. 시스템은 시작 시 기존 데이터를 로드하고, 손상을 방지하기 위해 원자적 쓰기를 사용하여 모든 작업 후에 저장합니다.

작업 공간 정리 제어:

cleanup_workspace 도구는 세분화된 제어를 제공합니다:

  • delete_files=True, delete_metadata=False - 디스크 공간을 확보하되 작업 공간 기록 유지 (권장)
  • delete_files=True, delete_metadata=True - 작업 공간 및 메타데이터 완전 제거
  • delete_files=False, delete_metadata=True - 목록에서 제거하지만 디스크의 파일은 유지

백업:```bash

Backup entire workspaces volume

docker run --rm -v mcpwner_workspaces:/data -v $(pwd):/backup
alpine tar czf /backup/workspaces-backup.tar.gz /data

Restore volume

docker run --rm -v mcpwner_workspaces:/data -v $(pwd):/backup
alpine tar xzf /backup/workspaces-backup.tar.gz -C /

root@kitploit:~
## 아키텍처

MCPwner는 향후 원격 배포를 지원하기 위해 컨테이너 간 HTTP 기반 통신을 사용합니다. 현재는 로컬 사용에 최적화되어 있지만, 최소한의 수정으로 원격 서버 배포에 적용할 수 있습니다.

**설계 원칙:**

- 보안 도구 실행을 위한 컨테이너 격리
- LLM 소비를 위한 표준화된 출력 형식 (SARIF/JSON)
- 새로운 도구를 위한 확장 가능한 플러그인 아키텍처
- 상태 비저장 API (메모리는 사용자가 관리)

**아키텍처 개요:**```mermaid
graph LR
    subgraph IDE[" "]
        LLM[🤖<br/>LLM]
        Client[MCP Client]
        LLM -.-> Client
    end

    Server[MCPwner Server]

    SAST[SAST Tools]
    Secrets[Secrets Scanning]
    SCA[SCA Tools]
    Recon[Reconnaissance]
    CodeQL[CodeQL Service]
    Linguist[Language Detection]
    Utilities[Utilities]
    IaC[IaC Security]
    Fuzzing[Source Fuzzing]
    DAST[DAST Tools]

    Client -->|JSON-RPC 2.0| Server
    Server -->|HTTP| SAST
    Server -->|HTTP| Secrets
    Server -->|HTTP| SCA
    Server -->|HTTP| Recon
    Server -->|HTTP| CodeQL
    Server -->|HTTP| Linguist
    Server -->|HTTP| Utilities
    Server -->|HTTP| IaC
    Server -->|HTTP| Fuzzing
    Server -->|HTTP| DAST

    style LLM fill:#7C3AED,stroke:#5B21B6,stroke-width:3px,color:#fff
    style Client fill:#4A90E2,stroke:#2E5C8A,stroke-width:3px,color:#fff
    style Server fill:#F5A623,stroke:#C17D11,stroke-width:3px,color:#fff
    style SAST fill:#E74C3C,stroke:#C0392B,stroke-width:2px,color:#fff
    style Secrets fill:#9B59B6,stroke:#7D3C98,stroke-width:2px,color:#fff
    style SCA fill:#1ABC9C,stroke:#16A085,stroke-width:2px,color:#fff
    style Recon fill:#00BCD4,stroke:#0097A7,stroke-width:2px,color:#fff
    style CodeQL fill:#E67E22,stroke:#CA6F1E,stroke-width:2px,color:#fff
    style Linguist fill:#3498DB,stroke:#2874A6,stroke-width:2px,color:#fff
    style Utilities fill:#6D28D9,stroke:#4C1D95,stroke-width:2px,color:#fff
    style IaC fill:#059669,stroke:#047857,stroke-width:2px,color:#fff
    style Fuzzing fill:#B91C1C,stroke:#7F1D1D,stroke-width:2px,color:#fff
    style DAST fill:#D35400,stroke:#A04000,stroke-width:2px,color:#fff
    style IDE fill:none,stroke:#ddd,stroke-width:2px,stroke-dasharray: 5 5

사용 가능한 MCP 도구

MCPwner는 MCP 인터페이스를 통해 다음 도구를 제공합니다:

작업공간 관리:

  • create_workspace - 로컬 경로, Git URL 또는 GitHub 저장소에서 스캔 작업공간 초기화
  • list_workspaces - 사용 가능한 모든 작업공간 나열
  • cleanup_workspace - 작업공간 및 관련 데이터 제거

발견 기록:

작업공간 범위로 지정되며 디스크에 저장(<workspace>/findings/<id>.json)되어 항상 사용 가능합니다 — 컨테이너나 상태 게이트가 필요하지 않습니다. 이는 다중 에이전트 심층 연구 파이프라인의 진실 공급원(source of truth)입니다: 모든 가설, PoC 결과, 검토 평결이 산문이 아닌 발견 항목으로 기록됩니다.

  • upsert_finding - 발견 항목 생성 또는 업데이트. 기본적으로 기존 항목에 깊은 병합(deep-merge)을 수행하므로 한 에이전트가 자신의 하위 객체(예: poc)를 작성할 때 다른 에이전트의 필드(예: review)를 덮어쓰지 않습니다.
  • list_findings - 작업공간의 모든 발견 항목 나열, 선택적으로 status (예: poc-confirmed, review-approved)로 필터링 가능
  • get_finding - ID로 단일 발견 항목 검색

SAST (정적 분석):

  • run_sast_scan - 정적 분석 도구 실행 (Semgrep, Bandit, Gosec, Brakeman, PMD, Psalm, NodeJsScan, Joern, YASA)
  • get_sast_report - SAST 스캔 결과 검색
  • sast_list_tools - 사용 가능한 SAST 도구 목록

비밀 감지:

  • run_secrets_scan - 비밀 스캐닝 도구 실행 (Gitleaks, TruffleHog, Whispers, detect-secrets, Hawk-Eye)
  • get_secrets_report - 비밀 스캔 결과 검색
  • secrets_list_tools - 사용 가능한 비밀 스캐닝 도구 목록

SCA (소프트웨어 구성 분석):

  • run_sca_scan - 취약점을 위한 종속성 분석 (Grype, Syft, OSV-Scanner, Retire.js)
  • get_sca_report - SCA 스캔 결과 검색
  • sca_list_tools - 사용 가능한 SCA 도구 목록

정찰:

  • run_reconnaissance_scan - 단일 정찰 도구 실행 (Subfinder, Amass, Nmap, Masscan, httpx, Katana, ffuf, bbot, gau, Arjun, wafw00f, Kiterunner)
  • run_reconnaissance_chain - 여러 정찰 도구를 순차적으로 연결
  • get_reconnaissance_report - 정찰 스캔 결과 검색
  • reconnaissance_list_tools - 사용 가능한 정찰 도구 목록

CodeQL:

  • detect_languages - Linguist를 통해 코드베이스의 언어 감지
  • create_codeql_database - 분석을 위한 CodeQL 데이터베이스 생성
  • list_databases - 사용 가능한 CodeQL 데이터베이스 목록
  • list_query_packs - 사용 가능한 쿼리 팩 목록
  • execute_query - 특정 CodeQL 쿼리 실행

인프라 및 IaC 보안:

  • run_iac_scan - 코드형 인프라(IaC)의 잘못된 구성 스캔 (Checkov, KICS, Terrascan, TFSec, Hadolint)
  • get_iac_report - IaC 스캔 결과 검색
  • iac_list_tools - 사용 가능한 IaC 스캐닝 도구 목록

소스 퍼징:

  • run_fuzzing_scan - 대상별 하네스에 대한 화이트박스, 커버리지 기반 퍼징 캠페인 실행 (Atheris, Jazzer, Jazzer.js, PHP-Fuzzer)
  • get_fuzzing_report - 퍼징 충돌 결과 검색 (충돌 입력 + 스택 트레이스)
  • fuzzing_list_tools - 감지된 언어로 필터링된 사용 가능한 퍼징 엔진 목록

DAST (동적 애플리케이션 보안 테스트):

  • run_dast_scan - 동적 애플리케이션 보안 테스트 도구 실행 (sqlmap, NoSQLMap, Commix, Dalfox, SSTImap, SSRFmap, jwt_tool, interactsh)
  • get_dast_report - DAST 스캔 결과 검색
  • dast_list_tools - 사용 가능한 DAST 도구 목록

유틸리티:

  • run_utilities_scan - 라이브 대상에 대해 유틸리티 도구 실행 (Linguist, WireMock, Mitmproxy, aiohttp, Headless Chromium)
  • get_utilities_report - 유틸리티 스캔 결과 검색
  • utilities_list_tools - 사용 가능한 유틸리티 도구 및 해당 구성 옵션 목록

상태 및 모니터링:

  • health_check - 서버 및 도구 가용성 확인
  • list_tools - 모든 사용 가능한 도구와 상태 나열

보안 고려 사항

MCPwner는 침입적인 작업을 수행할 수 있는 보안 도구를 실행합니다. 소유하거나 명시적 테스트 권한이 있는 시스템 및 코드베이스에만 사용하십시오 - 무단 접근은 불법입니다. MCP 서버 접근을 승인된 사용자로 제한하고 프로덕션 배포의 경우 네트워크 격리를 고려하십시오. 일부 도구는 상당한 네트워크 트래픽이나 시스템 부하를 생성할 수 있으므로 스캔을 실행하기 전에 도구 구성을 검토하십시오. 보안 스캔은 모니터링 시스템에서 경고를 트리거할 수 있음을 염두에 두고 도구 실행 및 결과를 기록하십시오. MCPwner를 사용하여 발견된 취약점을 보고할 때 책임 있는 공개 관행을 따르십시오. Docker 이미지를 최신 상태로 유지하고 정기적으로 컨테이너의 취약점을 스캔하십시오. API 키, 토큰 또는 자격 증명을 구성 파일에 절대 커밋하지 마십시오 - 대신 환경 변수나 비밀 관리 시스템을 사용하십시오.

또한, 이러한 도구를 실행하고 타사 라이브러리에 접근할 때 자신의 보안에 책임을 져야 합니다. 모든 것을 샌드박스 환경에서 실행하고 특별한 인증 없이 실행하는 것이 좋습니다 (가능한 경우 최소화 및 강화).

도구 다운로드
SubfinderAmassNmapMasscanffuf
bbothttpxKatanagauArjun
wafw00fKiterunner

정적 애플리케이션 보안 테스트 (SAST) 스캐닝 도구

CodeQLPsalmGosecBanditSemgrep

BrakemanPMDNodeJsScanJoernYASA

소스 퍼징

AtherisJazzerJazzer.jsPHP-Fuzzer

비밀 스캐닝 도구

GitleaksTruffleHogdetect-secretsWhispersHawk-Eye

소프트웨어 구성 분석 (SCA) 도구

GrypeSyftOSV-ScannerRetire.js

인프라 및 IaC 보안

CheckovKICSTerrascanTFSecHadolint

동적 애플리케이션 보안 테스트 (DAST)

sqlmapNoSQLMapCommixDalfoxSSTImap

SSRFmapjwt_toolinteractsh

유틸리티

LinguistWireMockMitmproxyaiohttpChromium w. Playwright