
보안 우선 MCP 서버로, AI 에이전트가 Radare2, YARA, LIEF, Capstone 등을 기반으로 자동화된 리버스 엔지니어링, 악성코드 분석, 포렌식, 취약점 연구, SAST를 수행할 수 있도록 지원합니다.
Model Context Protocol을 통한 AI 기반 리버스 엔지니어링 및 보안 분석
Claude, Cursor와 같은 AI 어시스턴트가 자연어를 통해 리버스 엔지니어링, 악성코드 분석, 취약점 연구, 디지털 포렌식, 소스 코드 감사를 수행할 수 있게 해주는 MCP 서버입니다.
Reversecore MCP는 151개의 분석 도구를 AI 어시스턴트가 자연어를 통해 호출할 수 있는 단일 인터페이스로 감싸주는 Model Context Protocol 서버입니다.
수십 가지 도구의 명령줄 구문을 익히는 대신, 원하는 작업을 설명하기만 하면 됩니다:``` "Decompile the main function of this malware sample, extract all network IOCs, map the behavior to MITRE ATT&CK, and generate a triage report."
AI 어시스턴트는 이를 도구 호출로 분할합니다:```
r2_decompile("sample.exe", "main")
→ extract_iocs("sample.exe")
→ add_mitre_technique(technique_id="T1071.001", ...)
→ create_analysis_report(template_type="quick_triage")
각 도구는 AI가 추론하고, 후속 쿼리로 연결하거나, 사용자에게 렌더링할 수 있는 타입이 지정된 데이터와 함께 구조화된 ToolResult(ToolSuccess 또는 ToolError)를 반환합니다.
| 도메인 | 할 수 있는 일 |
|---|---|
| 정적 분석 | 디스어셈블리, 디컴파일(r2ghidra), 바이너리 파싱(LIEF), 패커 탐지(DIE), 기능 탐지(CAPA), 문자열 추출, 펌웨어 스캔(binwalk) |
| 동적 및 심볼릭 | ESIL 에뮬레이션, angr 심볼릭 실행, 테인트 분석, 퍼징 하네스 생성 |
| 악성코드 분석 | IOC 추출, YARA 스캔, 휴면 백도어 탐지, 적응형 백신 생성, 자율 취약점 사냥 |
| 취약점 연구 | 위험한 API 탐지, ROP 가젯 발견, 힙 익스플로잇 분석, 크래시 트리아지, PoC 생성 |
| 디지털 포렌식 | 메모리 포렌식(Volatility3), PCAP 분석(Scapy), 디스크 포렌식(Sleuth Kit), 아티팩트 상관관계 분석 |
| 소스 코드 감사 | Python AST 스캔, C/C++ 정규식 패턴 스캔 |
| 리포팅 | MITRE ATT&CK 매핑이 포함된 세션 기반 보고서, SIGMA 규칙 생성, VEX 보고서, 이메일 전송 |
AI Client (Claude / Cursor / any MCP-compatible client) │ MCP Protocol (stdio or HTTP/SSE) ▼ ┌──────────────────────────────────────────────────────┐ │ FastMCP 3.4.4 Server │ │ 151 registered tools · Fully async │ │ Python 3.10–3.12 │ ├────────────────────┬─────────────────────────────────┤ │ Guided Prompts │ Dynamic Resources │ │ (22 analysis │ (11 URI-based: per-binary │ │ modes) │ strings, IOCs, ASM, CFG, …) │ ├────────────────────┴─────────────────────────────────┤ │ Core Infrastructure │ │ Config · Security · Validators · Exceptions (17) │ │ R2 Pool · Metrics · Memory (SQLite) · Task Queue │ │ MITRE Mapper · Evidence Engine · Resilience Layer │ │ Arch Registry (x86/ARM/MIPS/RISC-V/PPC) │ │ Result Cache (SHA256) · Analysis Cache (Redis+SQL) │ │ SAST (Python AST + C/C++ Regex) · Plugin System │ ├──────────────────────────────────────────────────────┤ │ Analysis Engines │ │ Radare2 6.0.4 │ YARA 4.3.1 · LIEF · Capstone │ │ r2ghidra │ CAPA · angr · Qiling │ │ Volatility3 · Scapy│ DIE · Binwalk · Sleuth Kit │ │ pwntools · ROPgadget│ Keystone (assembler) │ └──────────────────────────────────────────────────────┘
서버는 Python 3.10–3.12를 지원합니다. 선택적 `angr` 심볼릭 실행
엔진은 보안 호환 릴리스가 제공되는 Python 3.12 이상에 설치되며, Python 3.10 및 3.11 설치에서는 `angr`이 제외됩니다.
### 핵심 인프라 (37개 모듈)
`reversecore_mcp/core/` 디렉터리에는 모든 도구가 기반으로 삼는 공유 인프라가 포함되어 있습니다:
| 모듈 | 목적 |
|---|---|
| `config.py` | 34개 이상의 환경 변수를 지원하는 Pydantic BaseSettings |
| `security.py` | 입력 정제, 명령 인수 검증 |
| `validators.py` | TOCTOU 완화 및 심볼릭 링크 해석을 포함한 파일 및 바이너리 경로 검증 |
| `r2_pool.py` | 크기 구성이 가능한 스레드 안전 Radare2 연결 풀 |
| `r2_helpers.py` | 구조화된 Radare2 출력 파싱 |
| `metrics.py` | 도구별 실행 시간, 호출 횟수, 오류율, 캐시 통계 |
| `memory.py` | 세션 간 분석 결과를 영속화하기 위한 비동기 SQLite 기반 AI 메모리 저장소 |
| `mitre_mapper.py` | MITRE ATT&CK 기법 ID 매핑 엔진 |
| `evidence.py` | 증거 분류 시스템: `OBSERVED`, `INFERRED`, `POSSIBLE` |
| `resilience.py` | 재시도, 회로 차단기, 타임아웃 데코레이터 패턴 |
| `task_queue.py` | Redis + arq 기반 백그라운드 작업 큐 |
| `extension_registry.py` | 플러그인 등록 및 수명 주기 관리 |
| `arch_registry.py` | 다중 아키텍처 매핑 (x86, x86_64, ARM32, ARM64, MIPS, RISC-V, PPC → r2 arch/bits/registers) |
| `result_cache.py` | SHA256 기반 도구 결과 캐싱 데코레이터 (`@cache_tool_result`) |
| `analysis_cache.py` | 다중 레벨 디컴파일 캐시 (L1: Redis, L2: SQLite) |
| `result.py` | `ToolSuccess` / `ToolError` Pydantic 모델 |
| `exceptions.py` | `RCMCP-E*` 오류 코드를 가진 17개 예외 클래스 |
| `decorators.py` | `@log_execution`, `@track_metrics` |
| `error_handling.py` | `@handle_tool_errors` 데코레이터 |
| `error_formatting.py` | 구조화된 오류 응답 포매팅 |
| `execution.py` | 타임아웃 및 출력 제한이 있는 안전한 서브프로세스 실행 |
| `command_spec.py` | 서브프로세스 호출을 위한 명령 사양 |
| `loader.py` | 동적 도구 모듈 로더 |
| `plugin.py` | 플러그인 기본 클래스 |
| `extension.py` | 확장 기본 클래스 |
| `container.py` | 컨테이너/샌드박스 실행 지원 |
| `audit.py` | 감사 로깅 |
| `binary_cache.py` | 바이너리 파일 캐싱 |
| `json_utils.py` | orjson을 통한 JSON 직렬화 (표준 라이브러리 json보다 3-5배 빠름) |
| `logging_config.py` | Loguru 기반 구조화 로깅 |
| `report_generator.py` | 보고서 렌더링 엔진 (Markdown, xhtml2pdf를 통한 PDF) |
| `resource_manager.py` | MCP 리소스 수명 주기 관리 |
| `sast/python_ast_scanner.py` | Python AST 기반 취약점 스캐너 |
| `sast/regex_scanner.py` | C/C++ 정규식 기반 취약점 스캐너 |
| `sast/rule_manager.py` | SAST 규칙 로딩 및 관리 |
---
## 도구 카탈로그 (151개 도구)
> 📖 **[공식 도구 카탈로그 및 매개변수 참조 (151개 도구)](https://github.com/sjkim1127/reversecore_mcp/blob/main/docs/TOOLS.md)**
> 📊 **[도구 프로필 풋프린트 및 컨텍스트 벤치마크 매트릭스](https://github.com/sjkim1127/reversecore_mcp/blob/main/docs/benchmarks/profile_footprint.md)**
모든 도구는 구조화된 `ToolResult`를 반환합니다 — 타입이 지정된 `data`를 가진 `ToolSuccess` 또는 `RCMCP-E*` 오류 코드를 가진 `ToolError` 중 하나입니다. 도구는 5개의 모듈식 실행 프로필(`full`, `static`, `malware`, `forensics`, `vuln-research`)에 걸쳐 11개의 도메인 플러그인으로 구성됩니다: