Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ida-pro-mcp — 로컬 우선, 결정론적 IDA Pro/Home용 MCP 서버: 109개의 엄격한 스키마 기반 리버스 엔지니어링 작업, 증거 기반 발견 사항, 정책 기반 IDB 편집. | Kitploit
도구/GitHubGitHub/grecandrei/ida-pro-mcp
Static AnalysisReverse EngineeringScripting & AutomationDebuggersMalware AnalysisUtilities & FrameworksBinary AnalysisAI-Assisted ReversingAI SecurityFirmware Analysis
GitHubgrecandrei/ida-pro-mcp
1531511개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →

ida-pro-mcp

로컬 우선, 결정론적 IDA Pro/Home용 MCP 서버: 109개의 엄격한 스키마 기반 리버스 엔지니어링 작업, 증거 기반 발견 사항, 정책 기반 IDB 편집.

저장소 보기웹사이트
공유

IDA Pro MCP

⚠️ 보관됨 — 공식 Hex-Rays IDA MCP 서버로 대체됨

이 프로젝트는 더 이상 유지 관리되지 않습니다. 2026-09-27에 Hex-Rays SA는 공식 IDA MCP 서버와 IDA Nexus를 공개했습니다. 개발은 같은 날 1.0.0a4에서 중단되었습니다.

현재 사용하려면 공식 서버를 설치하십시오: uvx ida-hcli mcp install. 이는 idalib이 포함된 IDA 9.4 이상이 필요하며 완전한 헤드리스로 동작합니다. GUI 플러그인은 선택 사항입니다.

이 저장소는 테스트 스위트, 문서, 아키텍처 기록을 위해 보존됩니다. 전체 종료 경위는 **ARCHIVE.md**를 참조하십시오: 이 프로젝트가 무엇이었는지, 왜 실패했는지, 어떤 부분이 발판(scaffolding)이었는지, 어떤 부분이 여전히 가치가 있는지 설명합니다. 이 README의 나머지 부분은 더 이상 사용이 권장되지 않는 시스템을 설명합니다.

IDA Pro MCP — AI 에이전트를 위한 결정론적 바이너리 분석

IDA Pro MCP는 IDA Pro용 로컬 Model Context Protocol 서버입니다. MCP 클라이언트가 IDB를 검사하고, IDA에 결정론적 분석 결과를 요청하며, 명시적으로 허용된 경우 주석이나 기타 변경 사항을 IDB에 다시 기록할 수 있게 합니다. 호스트 프로세스는 IDA 외부에서 실행되며, 기본적으로 세션마다 별도의 IDA 헤드리스 프로세스를 시작합니다.

이 구현을 선택하는 이유

  • 결정론적 에이전트 인터페이스: tools/list와 ida_help를 통한 실시간 탐색이 가능한 102개의 엄격한 스키마 ida_* 작업.
  • 로컬 우선 아키텍처: 호스트와 IDA 런타임은 토큰으로 보호되는 루프백 브리지를 통해 통신하며, 분석 경로에 숨겨진 LLM 서비스가 없습니다.
  • 채팅이 아닌 증거: 지속적인 발견 사항은 IDB 외부에 출처, 신뢰도, 수명 주기 상태, 충돌, 감사 이력을 보존합니다.
  • 보호된 변경: IDB를 변경하는 작업은 명시적 정책과 위험 승인 제어 뒤에 유지됩니다.
  • 폭넓은 클라이언트 지원: 설치 프로그램은 22개 이상의 에이전트 환경과 해당 JSON, JSON5, TOML, YAML 구성 형식을 이해합니다.

현재 버전은 1.0.0a4입니다. 이는 알파 소프트웨어입니다. 공개된 ida_* 작업 이름, 스키마, 워크스페이스 형식은 안정적인 1.0.0 릴리스 전에 변경될 수 있습니다. 기본 클라이언트 인터페이스에는 102개의 정확한 스키마 작업이 포함됩니다. 전체 계약은 실시간 탐색을 사용하십시오: tools/list는 모든 작업을 스키마와 함께 열거하며, ida_help(topic="...")는 특정 작업의 정확한 인수와 예제를 반환합니다.

설치 전 준비 사항

필요한 것:

  • IDA Pro 또는 IDA Home 9.2 이상, 사용 가능한 idat/idat64 실행 파일 포함. 저장소의 실시간 테스트 증거는 IDA 9.3 및 9.4를 다루며, 9.2는 선언된 호환성 하한입니다.
  • 호스트 및 설치 프로그램용 Python 3.11 이상.
  • 검사하려는 바이너리에서 IDA를 실행할 권한, 그리고 관리형 Python 환경, 세션 파일, IDB 복사본을 위한 충분한 디스크 공간.
  • Claude Code, Codex, OpenCode, Claude Desktop, Cursor, VS Code/Copilot, Windsurf, Cline, Roo Code, Gemini CLI, Antigravity 등 로컬 stdio 서버를 지원하는 MCP 클라이언트.

일반 분석에는 인텔리전스 제공자가 필요하지 않습니다. 명시적 인텔리전스 모드는 jev, custom, disabled이며, disabled 모드는 결정론적 어휘 검색을 사용 가능하게 유지하며 로컬, Gemini, 네이티브 모델 폴백이 없습니다.

기본 런타임은 idat입니다: 세션당 하나의 헤드리스 IDA 프로세스. idalib 백엔드는 실험적이며, idapro 패키지가 활성화된 IDA 9.3 이상 설치가 필요하고, 첫 설치에는 필요하지 않습니다.

소스 체크아웃에서 설치

설치 프로그램은 설치 루트 아래에 관리형 환경을 생성하고, 체크아웃의 고정된 복사본을 그 안에 설치하며, 지원되는 클라이언트 위치에 대한 클라이언트 구성을 작성합니다. 저장소 루트에서 다음을 실행하십시오:

python3 install.py

알려진 IDA 설치 경로의 경우, 명시적으로 전달하십시오:

python3 install.py --ida-dir /path/to/ida-pro-9.3

비대화형 실행의 경우:

python3 install.py --yes --no-ida-prompt --ida-dir /path/to/ida-pro-9.3

설치 프로그램은 IDADIR, IDA_DIR, PATH에 있는 IDA 실행 파일, 그리고 일반적인 설치 디렉터리를 통해서도 IDA를 찾을 수 있습니다. --ida-version은 설치가 여러 개 존재할 때 버전을 선택합니다. 먼저 --dry-run을 사용하여 계획된 변경 사항을 확인하십시오.

설치 프로그램은 프로바이더 모델이나 런타임을 절대 다운로드하지 않습니다. 설치 프로그램은 내장된 클라이언트 맵에 있는 모든 클라이언트 위치에 대해 구성 파일을 생성하거나 업데이트할 수 있으며, 여기에는 사용자의 컴퓨터에 설치되지 않은 클라이언트도 포함됩니다. 설치 루트의 install-report.json을 확인하고 필요한 경우 사용하지 않는 항목을 제거하십시오. 기존의 일반 구성 파일은 변경되기 전에 백업됩니다. 형식이 잘못되었거나, 심볼릭 링크이거나, 일반 파일이 아닌 파일은 덮어쓰지 않고 거부됩니다.

설치 후 MCP 클라이언트를 재시작하여 구성이 다시 로드되도록 하십시오.

에이전트 하네스는 도구 표면을 실시간으로 탐색합니다. tools/list는 스키마와 함께 모든 작업을 열거하며, ida_help(topic="...")는 정확한 인수와 예제를 반환합니다. 정적 스킬 파일은 설치되지 않습니다.

기본 설치 루트는 다음과 같습니다:

  • Linux 및 macOS: ~/.local/share/ida-pro-mcp
  • Windows: %LOCALAPPDATA%/ida-pro-mcp

다른 위치를 선택하려면 IDA_PRO_MCP_HOME을 설정하거나 --install-root를 전달하십시오.

릴리스 아티팩트에서 설치

알파 릴리스는 GitHub Actions에 의해 빌드되며 프리릴리스로 수동 게시됩니다. 릴리스가 제공되면 릴리스 페이지에서 bundle.zip 또는 bundle.tar.gz 아티팩트와 해당 SHA256SUMS 파일을 다운로드하십시오. 체크섬을 확인하고, 번들의 압축을 풀고, 최상위 디렉터리에서 설치 프로그램을 실행하십시오:

python3 install.py --yes --no-ida-prompt --ida-dir /path/to/ida-pro-9.3

릴리스에는 스크립트 기반 Python 설치를 위한 wheel과 소스 배포판도 포함되어 있습니다. 번들은 설치 프로그램과 MCP 클라이언트 구성에 필요한 모든 프로젝트 파일을 포함하고 있어 가장 간단한 경로입니다. 릴리스는 알파 품질이므로 원본 바이너리와 IDB를 보관하고 업그레이드 전에 릴리스 노트를 읽으십시오.

MCP 클라이언트 연결

설치 프로그램은 인식하는 클라이언트 구성 경로에 서버 항목을 기록합니다. Gemini CLI, Antigravity, Antigravity IDE, Antigravity CLI, Claude Code, Codex, Copilot CLI, OpenCode, Claude Desktop, Cursor, VS Code, Windsurf, Cline, Roo Code를 지원합니다. OpenCode와 Copilot 계열 클라이언트는 구성 형식이 다르므로 설치 프로그램이 해당 파일을 작성하도록 하거나 OpenCode 설정 가이드를 따르십시오.

일반적인 JSON 형식을 사용하는 클라이언트의 경우 항목은 다음과 동일합니다:

{
  "mcpServers": {
    "ida-pro-mcp": {
      "command": "/path/to/ida-pro-mcp/.venv/bin/python",
      "args": ["-u", "-m", "ida_pro_mcp.host.server"],
      "env": {
        "IDA_PRO_MCP_HOME": "/path/to/ida-pro-mcp",
        "IDADIR": "/path/to/ida-pro-9.3",
        "IDA_MCP_TOOL_SURFACE": "agent"
      }
    }
  }
}

Windows에서는 관리형 인터프리터인 <install-root>/.venv/Scripts/python.exe를 사용하십시오. 중요한 세부 사항은 관리형 인터프리터, -u -m ida_pro_mcp.host.server, 선택된 IDA 디렉터리, 그리고 IDA_MCP_TOOL_SURFACE=agent입니다. 클라이언트를 install.py로 지정하지 마십시오. 해당 파일은 설치 프로그램이며 MCP 서버가 아닙니다.

클라이언트 구성을 변경한 후에는 클라이언트를 완전히 재시작하고 사용 가능한 작업 목록에 ida_help가 나타나는지 확인하십시오. 클라이언트에 레거시 광범위 tool(action=...) 인터페이스만 표시된다면, 환경이 IDA_MCP_TOOL_SURFACE=legacy가 아닌 기본 agent 표면을 선택하는지 확인하십시오.

첫 번째 유용한 세션

먼저 테스트 바이너리에 대한 절대 경로를 사용하십시오. 바이너리를 열면 일반적으로 IDA의 초기 분석이 완료될 때까지 기다리며, 큰 바이너리는 시간이 걸릴 수 있습니다.

ida_open_binary(binary_path="/absolute/path/to/sample")
ida_session_status()
ida_overview()
ida_list_imports(limit=30)
ida_list_strings(query="http", limit=30)
ida_find(query="main", limit=20)
ida_decompile(address="<address returned by IDA>")
ida_xrefs_to(address="<same address>")

정확한 인수 스키마가 필요할 때마다 ida_help(topic="ida_decompile")를 사용하십시오. 공개 작업 스키마는 엄격합니다: 알 수 없는 인수는 거부됩니다. 주소는 개별 작업 계약에 따라 정수 또는 문자열로 허용될 수 있습니다. 클라이언트에서 해당 작업에 대해 ida_help가 표시하는 형식을 사용하십시오.

소규모 조사 기록의 경우, 워크스페이스 발견(finding) 작업은 다음과 같습니다:

ida_write_finding(title="Input reaches parser", address="<address returned by IDA>", kind="finding", status="confirmed", confidence=0.8, evidence=[{"type":"call", "value":"recv", "address":"<evidence address>"}])
ida_analysis_brief()
ida_next_target()
ida_export_findings(format="markdown")

워크스페이스 결과물은 IDB 편집과 별도로 보관됩니다. 활성 정책이 워크스페이스 쓰기를 허용하면 ida_write_finding이 결과물을 로컬에 기록하며, 그렇지 않으면 서버가 정책 오류를 반환합니다. ida_publish_findings(dry_run=true)는 IDB 변경 사항을 미리 보여줍니다. 게시, 이름 변경, 패치 및 기타 IDB 변경은 정책에 의해 제한되며, 해당 작업이 확인 절차를 제공하는 경우 문서화된 확인이 필요합니다.

한눈에 보는 작업

첫 페이지는 작업 지향적으로 유지되지만, 이 간결한 색인은 공개 인터페이스를 쉽게 훑어볼 수 있게 해줍니다. 아래의 각 이름은 호출 시 ida_가 접두사로 붙습니다. 전체 스키마와 예제는 tools/list 및 ida_help(topic="...")를 통해 실시간으로 확인할 수 있습니다.

도구 다운로드