01. REA는 어떤 프로그램인가?
REA(Reverse Engineer Anything)는 AI 코딩 에이전트를 분석 도구에 연결해 프로그램의 내부 구조와 동작을 조사할 수 있게 하는 오픈소스 프로젝트입니다. Claude Code, Codex, Cursor 등과 연결하여 자연어로 작업을 요청할 수 있습니다.
주요 활용 사례는 실행 파일의 함수·문자열 조사, JavaScript/Electron 모듈 구조 분석, 웹사이트 동작 관찰, .NET 및 Android 앱 분석 등입니다. 원본 소스코드를 무조건 복구하거나 프로그램을 완벽하게 복제해 주는 것은 아닙니다.
02. REA는 어떻게 작동할까?
AI에게 질문하면 AI가 MCP를 통해 REA 도구를 호출합니다. REA가 대상을 분석해 결과와 근거를 반환하면 AI가 이를 설명하거나 예제 코드를 작성합니다.
03. 설치 전 준비하기 (Windows 10/11)
Node.js와 npm이 필요합니다. 지원 버전은 Node.js 22.x(22.19 이상), 24.x(24.11 이상), 또는 26 이상입니다.
Node.js 다운로드: https://nodejs.org/
설치 후 시작 메뉴에서 PowerShell을 열고 아래 명령을 각각 실행해 버전을 확인합니다.
AI와 대화하듯 사용하려면 Claude Code, Codex, Cursor, Gemini CLI 등 지원되는 AI 코딩 프로그램도 준비합니다. AI 없이 명령줄만으로 사용하는 방법도 있습니다.
04. REA 설치 순서
PowerShell에서 다음 명령어를 실행합니다.
- 패키지 설치 승인: 공식 npm 패키지가 맞는지 확인하고 승인합니다.
- 에이전트 선택: 사용하는 Claude Code, Codex, Cursor 등을 선택합니다.
- 변경 계획 검토: MCP 등록과 설정 파일 변경 내용을 확인합니다.
- 선택적 분석 엔진 설정: 네이티브 EXE/DLL 심층 분석에는 Ghidra, Hopper, IDA 등이 필요합니다. JavaScript 정적 분석에는 필요하지 않습니다.
- 완료 후 재시작: 설정한 AI 코딩 프로그램을 완전히 종료한 뒤 다시 시작합니다.
05. 정상 설치 여부 확인
이 명령으로 에이전트 설정과 분석 도구의 준비 상태를 확인합니다. 네이티브 분석 도구가 없어도 JavaScript 정적 분석 등 일부 기능은 사용할 수 있습니다.
06. 실제 분석 방법: AI에게 질문하기
예제 A — EXE 파일 구조 조사
분석할 파일을 C:\Analysis\sample.exe에 준비했다고 가정합니다.
예제 B — 검색 기능 분석
예제 C — 기능 구현 참고
07. AI 없이 명령어로 사용하기
자주 사용할 경우 CLI를 설치합니다.
JavaScript / Electron 앱 분석
Ghidra로 EXE 분석 (Ghidra 설정 필요)
사용 가능한 분석 엔진 확인
실제 파일 경로와 분석 환경에 맞게 변경하여 사용하세요.
08. 공식 분석 사례 살펴보기
DX-Ball: 게임의 소리 좌우 배분 계산 로직을 조사한 사례입니다.
Notion: Electron 앱의 클립보드 기능이 화면·preload·메인 프로세스 사이에서 연결되는 방식을 추적한 사례입니다.
TH04: 오래된 DOS 게임의 탄막 각도 계산 로직을 복원·검증한 사례입니다.
사례 보기: https://rea.tools/showcase/
09. 오류가 발생할 때
npx가 실행되지 않는다면: Node.js 설치와 PATH를 확인하고 PowerShell을 다시 실행하세요.
AI에서 REA를 찾지 못한다면: npx rea-agents@latest setup을 다시 실행하고 AI 프로그램을 재시작하세요.
EXE 분석이 실패한다면: 분석 엔진 준비 상태를 점검하세요.
업데이트: 전역 설치에는 rea update, npx 설정 갱신에는 npx rea-agents@latest setup을 사용합니다.
10. 사용 시 주의사항
- 직접 제작했거나 분석할 권한을 가진 소프트웨어를 대상으로 사용하세요.
- 알 수 없는 실행 파일은 실제로 실행될 수 있으니 격리 환경에서 다루세요.
- REA 분석은 로컬에서 실행되지만 분석 결과를 받는 AI 서비스의 데이터 처리 정책은 별도로 확인하세요.
- AI가 추정한 내용은 함수·주소·실제 테스트 결과와 비교해 검증하세요.
11. 마무리
REA는 프로그램 분석 도구와 AI를 연결하여, 복잡한 리버스 엔지니어링 작업을 자연어로 조사할 수 있게 합니다. 처음에는 간단한 JavaScript 프로젝트로 연습하고, 이후 필요에 따라 Ghidra 같은 분석 엔진을 추가하는 방식이 접근하기 쉽습니다.



댓글 0