오픈소스 REA 공개: 리버스 엔지니어링을 MCP 로 AI 에이전트에 연결
리버스 엔지니어링 분석을 AI 에이전트에 통합하는 오픈소스 도구 REA 가 공개됐다. 네이티브 바이너리부터 일렉트론, APK 까지 로컬에서 분석하며, 단순 추론이 아닌 어셈블리 명령어와 호출 체인 등 실제 증거 기반으로 결과를 제시한다.

REA 는 리버스 엔지니어링 도구 체인을 MCP(Model Context Protocol)로 AI 에이전트에 연결해 주는 오픈소스 프로젝트입니다.
소스 코드가 없는 애플리케이션에서 특정 기능의 동작 원리를 파악하고 싶을 때, Claude Code 나 Cursor 같은 에이전트에게 조사를 맡길 수 있습니다. 에이전트가 내부를 분석해 원리를 설명하고, 근거를 제시하며, 내 프로젝트에 맞춘 구현 코드까지 작성해 줍니다.
무엇을 분석할 수 있나
단순히 AI 에게 코드를 주고 그럴듯하게 추측하게 만드는 도구와는 접근 방식이 다릅니다.
지원 범위가 매우 넓어 네이티브 바이너리, JavaScript 및 Electron 앱, .NET 어셈블리, Android APK, 펌웨어, EVM 바이트코드, 패킷 캡처, 크래시 로그까지 폭넓게 다룹니다.
JavaScript 나 Electron 정적 분석의 경우 별도 엔진 없이 모듈 구조, import 관계, IPC 경계를 바로 추출합니다. 네이티브 바이너리는 로컬에 설치된 Hopper, Ghidra, IDA, Kuna 와 연동하여 어셈블리, 디컴파일 의사코드, 문자열, 호출 참조를 가져옵니다.
핵심은 '증거 기반'이라는 점입니다. 에이전트가 내놓는 모든 분석 결과에는 실제 어셈블리 명령어, 호출 체인, 문자열 같은 구체적인 증거와 분석의 한계가 함께 명시됩니다.
시작하는 방법
모든 분석은 로컬 PC 에서 실행되며, 분석 대상 바이너리가 외부로 전송되지 않습니다.
Node.js 22, 24, 26 버전과 npm 이 필요합니다. 터미널에서 npx rea-agents setup 명령어를 실행하면 설치 마법사가 Claude Code, Cursor, Codex 등 설치된 에이전트에 맞게 MCP 서버와 지침을 자동으로 등록해 줍니다. 단독 CLI 로 쓰려면 npm 을 통해 전역으로 설치하면 됩니다.
네이티브 바이너리 분석을 하려면 Ghidra 나 Hopper 같은 엔진이 사전에 필요하며, APK 분석 시에는 JADX 와 JDK 환경이 필요합니다.
왜 중요한가
타사 앱의 구현 방식을 뜯어보거나 문서화되지 않은 내부 로직을 파악해야 하는 개발자라면 지금 바로 써볼 만합니다. 디스어셈블러와 터미널을 오가며 몇 시간씩 걸리던 역공학 탐색 작업을 에이전트 호출 한 번으로 줄여줍니다.
역공학에서 가장 치명적인 문제는 AI 의 환각인데, REA 는 로컬 도구의 실제 명령줄과 기계어 증거를 반드시 첨부하도록 설계해 이 문제를 똑똑하게 피해 갔습니다.
출처 (1)
- github.com(새 탭에서 열림)원문github.com