코딩 에이전트를 위한 리버스 엔지니어링 MCP 오픈소스 REA(Reverse Engineer Anything) 공개
Claude Code 등 코딩 에이전트를 Ghidra, Hopper, IDA와 연결해 소스 코드 없는 바이너리 분석, 디컴파일 함수 검사 및 호출 추적을 자동화하는 오픈소스 REA 프로젝트를 소개합니다.
코딩 에이전트가 원본 소스 코드 없이도 애플리케이션 바이너리를 직접 분석하고 내부 동작을 추적할 수 있도록 지원하는 오픈소스 프로젝트 'REA(Reverse Engineer Anything)'가 공개되었습니다.

이미지 출처: Tech with Mak (@techNmak)
REA는 Model Context Protocol(MCP)을 기반으로 Claude Code 등 현대적인 코딩 에이전트와 로컬 디컴파일러 환경을 유기적으로 결합하여, 바이너리 검사부터 디컴파일 함수 열람, 호출 흐름 추적까지 이어지는 역공학(Reverse Engineering) 분석 사이클을 에이전틱 루프로 전환합니다.
디컴파일러와 코딩 에이전트를 잇는 MCP 아키텍처
기존의 역공학 작업은 보안 연구원이나 리버서가 디컴파일러 GUI를 수동으로 조작하며 함수와 호출 관계를 일일이 대조해야 하는 고된 과정이었습니다. REA는 이 워크플로우에 표준화된 MCP 인터페이스를 도입했습니다.
- 디컴파일러 연동 지원: 업계 표준 분석 도구인 Ghidra, Hopper, IDA와 에이전트를 MCP 브릿지로 연결합니다.
- 바이너리 내부 탐색 및 추적: 에이전트가 바이너리 구조를 직접 검사하고, 디컴파일된 C 수준의 코드를 읽으며, 함수 간 호출 그래프(Call Graph)를 체계적으로 추적합니다.
- 스트립트 바이너리 분석 고도화: 함수 심볼(Symbol)이 제거된 바이너리에서도 단순 어림짐작이 아닌 호출 컨텍스트와 로직 흐름을 기반으로 변수 및 함수의 역할을 능동적으로 파악합니다.
실증 사례: 노션 IPC 클립보드 추적과 DX-Ball 함수 재구성
REA 프로젝트는 실제 애플리케이션 바이너리를 대상으로 검증된 구체적인 분석 사례들을 함께 제시했습니다.
- Electron IPC 기반 노션(Notion) 클립보드 분석: 일렉트론 기반 앱인 노션의 바이너리 내부에서 IPC 통신을 통해 클립보드 연산이 처리되는 전체 실행 경로를 성공적으로 추적했습니다.
- 1996년 고전 게임 DX-Ball 함수 복원 및 테스트 검증: 1996년 출시된 고전 게임 DX-Ball의 함수를 역공학하여 재구성한 뒤, 오리지널 x86 빌드에서 추출한 3,205개의 테스트 케이스를 통해 로직 일치성을 엄밀하게 검증했습니다.
도입 시 유의사항과 환경 요구조건
REA는 원본 소스 코드를 마법처럼 완전히 복원해 내는 도구가 아니며, 실제 적용 시 다음과 같은 기술적 제약과 분석 원칙을 고려해야 합니다.
- 개발자의 정밀 검증 필수: 에이전트가 생성한 추론 결과와 재구성된 로직은 반드시 엔지니어의 분석과 테스트 케이스를 통한 교차 검증을 거쳐야 합니다.
- 로컬 디컴파일러 사전 구성: Ghidra, Hopper, IDA 등 분석 대상에 맞는 로컬 디컴파일러 툴체인 및 MCP 브릿지 환경이 사전에 구축되어 있어야 작동합니다.
- 보안 및 실행 환경 격리: 신뢰할 수 없는 바이너리나 악성코드 의심 샘플을 분석할 경우, 네트워크가 차단된 격리 환경이나 샌드박스 내부에서 안전하게 운용하는 절차가 권장됩니다.
출처
- Tech with Mak X (@techNmak): REA (Reverse Engineer Anything) 프로젝트 소개 및 실증 분석