cyberkaida/reverse-engineering-assistant
MCP server for reverse engineering tasks in Ghidra 👩💻
What it solves
ReVa는 AI를 사용해 장기적인 리버스 엔지니어링 작업을 수행할 때 발생하는 "컨텍스트 부패"와 환각을 줄여 이러한 어려움을 해결합니다. AI 언어 모델과 Ghidra 사이의 격차를 메워 LLM이 바이너리 구조, 디컴파일 결과 및 메타데이터와 직접 상호 작용할 수 있게 하며, 정적인 코드 스냅샷에 의존하지 않게 합니다.
How it works
ReVa는 Model Context Protocol(MCP) 서버로서 Ghidra와 통합됩니다. 전체 바이너리를 프롬프트에 넣는 대신, LLM에 작고 특화된 도구 모음을 제공합니다. 이러한 도구는 디컴파일, 네임스페이스, 교차 참조와 같은 핵심 정보 조각을 제공하고, 관련 데이터에 대한 링크를 포함합니다. 도구 기반 접근 방식은 LLM이 인간 리버스 엔지니어가 작업하는 방식을 모방해 바이너리를 반복적으로 탐색하도록 장려합니다. 두 가지 모드를 지원합니다:
- Assistant Mode: 실행 중인 Ghidra UI에 연결되어 인터랙티브하고 실시간 협업을 가능하게 합니다.
- Headless Mode: GUI 없이 실행되어 자동화, CI/CD 파이프라인 또는 PyGhidra를 통한 Python 기반 워크플로에 적합합니다.
Who it’s for
Ghidra를 사용하고 LLM을 활용해 바이너리 트리아지, 알고리즘 식별, 변수 이름 변경, 암호 분석 등을 자동화하고자 하는 리버스 엔지니어, 보안 연구원, CTF 참가자를 위해 설계되었습니다.
Highlights
- MCP Integration: Claude Code, VSCode 등 MCP 클라이언트와 연동되어 GitHub 또는 Kagi와 같은 다른 서버와 함께 분석을 풍부하게 합니다.
- Context Management: 작은 강화된 데이터 조각을 사용해 대형 바이너리와 전체 펌웨어 이미지를 컨텍스트 윈도우를 과부하 시키지 않고 처리합니다.
- Flexible Deployment: 인터랙티브 GUI 기반 지원과 완전한 헤드리스 자동화를 모두 지원합니다.
- PyGhidra Support: Python 스크립트에서 직접 실행할 수 있어 맞춤형 에이전트 워크플로를 구축할 수 있습니다.
- Pre-built Skills: 바이너리 트리아지, 심층 분석, 암호학, CTF 가이드를 위한 특화된 스킬을 사전 구축하여 제공합니다.