LLM 클라이언트가 바이너리를 디컴파일하고 분석하도록 Ghidra의 리버스 엔지니어링 기능을 제공하는 MCP 서버입니다.
cyberkaida/reverse-engineering-assistant
AI 언어 모델이 작고 집중적인 도구를 통해 리버스 엔지니어링 분석을 수행하도록 지원하는 Ghidra용 MCP 서버 확장입니다.
- 스타
- 947
- 포크
- 93
- 열린 이슈
- 17
- 마지막 커밋
- 4일 전
어떤 프로젝트인가요?
ReVa(Reverse Engineering Assistant)는 Model Context Protocol 서버를 실행하는 Ghidra 확장으로, AI 모델이 Ghidra 분석 데이터를 조회하고 조작할 수 있게 합니다. 하나의 거대한 도구 대신, 리버스 엔지니어가 Ghidra에서 사용하는 함수 구성과 유사한 작고 다양한 도구를 제공합니다. 도구 출력에는 디컴파일된 코드뿐 아니라 네임스페이스와 교차 참조 같은 추가 맥락도 포함되어, 모델이 바이너리를 단계별로 살펴보도록 돕습니다.
ReVa는 두 가지 모드로 작동합니다. assistant mode에서는 기본 포트 8080의 streamable HTTP를 통해 실행 중인 Ghidra UI에 연결하므로, 모델이 열려 있는 프로젝트에서 실시간으로 작업할 수 있습니다. headless mode에서는 GUI 없이 Ghidra를 실행하고 임시 프로젝트를 관리하므로 자동화, CI/CD 및 Docker 워크플로에 적합합니다. Ghidra 12.0 이상을 지원하며 PyGhidra 스크립팅 환경에도 접근할 수 있습니다.
이 프로젝트에는 바이너리 초기 분석, 심층 분석, 암호 분석 및 CTF 작업을 위한 스킬이 포함된 Claude Code 플러그인 마켓플레이스도 있습니다.
핵심 기능
- 01Ghidra 분석 데이터를 조회하고 편집할 수 있는 작고 다양한 MCP 도구를 제공합니다.
- 02디컴파일 출력에 네임스페이스 및 교차 참조 맥락을 추가합니다.
- 03열려 있는 Ghidra UI에 연결하는 assistant mode와 headless mode를 지원합니다.
- 04API 키 인증을 사용할 수 있으며 PyGhidra 스크립팅 환경에 접근할 수 있습니다.
- 05Claude Code 스킬과 플러그인 마켓플레이스를 제공합니다.
활용 사례
- 열려 있는 Ghidra 프로젝트에서 AI 어시스턴트가 변수 이름을 바꾸고, 데이터형을 수정하고, 함수를 설명하도록 합니다.
- CI/CD 파이프라인이나 Docker 컨테이너에서 바이너리 초기 분석을 자동으로 실행합니다.
- 익스플로잇 스크립트 작성 등 AI의 도움을 받아 CTF 문제를 풉니다.
- 두 바이너리를 비교하고 LLM으로 차이점을 설명합니다.
빠른 시작
- 1
Ghidra 설치 디렉터리를 설정합니다(Ghidra 12.0 이상 필요).
export GHIDRA_INSTALL_DIR=/path/to/ghidra - 2
uv로 ReVa를 설치합니다.
uv tool install reverse-engineering-assistant - 3
Claude Code에 ReVa를 MCP 서버로 등록합니다.
claude mcp add --scope user ReVa -- mcp-reva
사용 전 알아둘 점
- Ghidra 12.0 이상이 필요하며, Java 21(Ghidra 12.2 미만) 또는 Java 25(Ghidra 12.2 이상)가 필요합니다.
- Assistant 모드를 사용하려면 확장 프로그램을 설치하고 Ghidra UI에서 플러그인을 직접 활성화해야 합니다.
- 스크립팅 도구를 통해 PyGhidra에 접근할 수 있으므로, 서버를 공개 인터페이스에 노출하려면 API 키 인증을 설정하거나 해당 도구를 비활성화해야 합니다.
포함된 컬렉션
토픽
자주 묻는 질문
- reverse-engineering-assistant은(는) 무엇인가요?
- AI 언어 모델이 작고 집중적인 도구를 통해 리버스 엔지니어링 분석을 수행하도록 지원하는 Ghidra용 MCP 서버 확장입니다. ReVa(Reverse Engineering Assistant)는 Model Context Protocol 서버를 실행하는 Ghidra 확장으로, AI 모델이 Ghidra 분석 데이터를 조회하고 조작할 수 있게 합니다. 하나의 거대한 도구 대신, 리버스 엔지니어가 Ghidra에서 사용하는 함수 구성과 유사한 작고 다양한 도구를 제공합니다. 도구 출력에는 디컴파일된 코드뿐 아니라 네임스페이스와 교차 참조 같은 추가 맥락도 포함되어, 모델이 바이너리를 단계별로 살펴보도록 돕습니다.
- reverse-engineering-assistant은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- reverse-engineering-assistant은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- reverse-engineering-assistant은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. reverse-engineering-assistant의 마지막 커밋은 2026년 11월 3일입니다.
- reverse-engineering-assistant은(는) 어디에 사용할 수 있나요?
- 열려 있는 Ghidra 프로젝트에서 AI 어시스턴트가 변수 이름을 바꾸고, 데이터형을 수정하고, 함수를 설명하도록 합니다. CI/CD 파이프라인이나 Docker 컨테이너에서 바이너리 초기 분석을 자동으로 실행합니다. 익스플로잇 스크립트 작성 등 AI의 도움을 받아 CTF 문제를 풉니다. 두 바이너리를 비교하고 LLM으로 차이점을 설명합니다.
- reverse-engineering-assistant는 어떻게 설치하나요?
- Ghidra 설치 디렉터리를 설정합니다(Ghidra 12.0 이상 필요).: export GHIDRA_INSTALL_DIR=/path/to/ghidra uv로 ReVa를 설치합니다.: uv tool install reverse-engineering-assistant Claude Code에 ReVa를 MCP 서버로 등록합니다.: claude mcp add --scope user ReVa -- mcp-reva
- reverse-engineering-assistant은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/cyberkaida/reverse-engineering-assistant
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
radare2에 AI 지원 리버스 엔지니어링용 r2ai 명령과 decai 디컴파일 플러그인을 추가하는 LLM 기반 플러그인입니다.
리버스 엔지니어링 워크플로에 AI 기반 코드 설명, 채팅, 에이전트 분석 기능을 더하는 Ghidra용 LLM 확장 프로그램입니다.
AI 어시스턴트가 바이너리를 분석하도록 Ghidra를 제어하는 MCP 서버로, 디컴파일·이름 변경·주석 추가 등에 쓰이는 도구를 200개 이상 제공합니다.
IDA Pro를 LLM 클라이언트에 연결해 리버스 엔지니어링 중 AI 어시스턴트가 바이너리를 디컴파일하고 주석을 달거나 이름을 바꿀 수 있게 하는 MCP 서버입니다.
파일 안에 포함된 파일과 데이터를 식별하고 선택적으로 추출하는 Rust 기반 펌웨어 분석 도구입니다.