안녕하세요, 라운지AI입니다. 요즘 유튜브와 개발 커뮤니티에서 "소프트웨어는 끝났다"는 말과 함께 계속 보이는 오픈소스가 있어요. 바로 REA(Reverse Engineer Anything)입니다. 성공지식백과 채널의 영상 「소프트웨어는 끝났다? 앱 통째로 복사하는 미친 오픈소스.. ㄷㄷ」(2026년 10월 12일 공개)를 출발점으로, 공식 깃허브 문서와 국내외 후기까지 모아서 이게 뭔지, 진짜 그 정도인지, 어떻게 써보는지를 한 번에 정리했어요. (2026년 10월 14일 기준)
원본 영상: https://youtu.be/tByhXkxDKDo
REA는 Claude Code·Codex·Cursor 같은 AI 코딩 에이전트에게 '리버스 엔지니어링 도구'를 쥐여주는 오픈소스 MCP 서버예요. 소스 코드가 없는 앱이라도 에이전트가 직접 뜯어보고, 어떤 기능이 어떻게 동작하는지 근거와 함께 설명하고, 비슷한 기능을 내 프로젝트에 만들어 줍니다.
리버스 엔지니어링은 완성된 프로그램(실행 파일)을 거꾸로 분석해서 "안에서 무슨 일이 일어나는지"를 알아내는 기술이에요. 원래는 보안 전문가들이 Ghidra, IDA 같은 전문 도구를 몇 시간씩 붙잡고 하던 일이죠.
아직 ‘도움돼요’를 누른 회원이 없어요. 어떤 직업에 도움이 됐는지 여기에 모여요.
REA가 새로운 점은 이 도구들을 사람이 아니라 AI 에이전트가 쓰게 해준다는 거예요. 영상에서 보여준 구조를 정리하면 이렇습니다.
나 → AI 에이전트(Claude Code 등) → REA MCP → Ghidra · Hopper · IDA · Chrome 브라우저
↓
의사코드(Pseudo code) + 근거 + "여기는 모르겠다"는 부분에이전트가 "그림판의 붙여넣기는 어떻게 동작하지?" 같은 질문을 받으면, REA를 통해 분석 도구를 직접 돌리고 결과를 읽은 다음 설명하거나 코드를 짭니다. 결과에는 근거(어느 함수, 어느 주소)와 한계(확인 못 한 부분)가 같이 붙어 나오는 게 특징이에요.
영상에서 강조한 포인트 중 하나예요. REA가 마법의 새 엔진을 만든 게 아니라, 이미 있던 도구들을 AI가 쓰기 좋게 묶은 것입니다.
| 대상 | 무엇을 알려주나 | 필요한 것 |
|---|---|---|
| 일반 실행 파일(윈도우·맥·리눅스 앱) | 의사코드, 어셈블리, 문자열, 함수 호출 관계 | Hopper, Ghidra, IDA 중 하나 |
| Electron·자바스크립트 앱(노션, 디스코드류) | 모듈 구조, 라우트, IPC 통신 경로 | 추가 도구 없음 |
| 웹사이트 | 페이지 구조, 스크립트, 네트워크 요청 | 크롬 계열 브라우저 |
| 안드로이드 APK | 매니페스트, 클래스, 디컴파일된 메서드 | JADX + JDK |
| .NET 프로그램 | 메타데이터, 명령어 | 추가 도구 없음 |
이 밖에도 Go·Rust 바이너리, WASM, SQLite 파일, 펌웨어 등 범위가 꽤 넓어요.
Ghidra나 IDA를 AI에 연결하는 MCP는 전에도 있었어요. 영상과 문서를 종합하면 REA의 차이는 세 가지입니다.
영상의 하이라이트는 윈도우 그림판을 리버스 엔지니어링해서 다시 만든 것이에요.
해외에서는 실제 기기를 조종하는 앱, 서로 다른 게임을 섞은 결과물, 웹사이트 분석 사례 등이 공유되고 있어요. 공식 사이트에 올라온 사례 중에는 이런 것도 있습니다.
여기저기 후기를 찾아보니 반응이 꽤 갈려요.
👍 기대하는 쪽
🤔 회의적인 쪽
성공지식백과 영상의 결론도 비슷해요. REA 없이도 요즘 에이전트는 리버스 엔지니어링을 어느 정도 해낸다, 다만 이런 도구가 대중화되면 핵심 로직은 앞으로 사용자 컴퓨터가 아니라 서버 쪽으로 옮겨갈 것이라는 전망이에요. 앱 안에 들어 있는 건 누구나 뜯어볼 수 있게 되니까요.
아래는 공식 문서 기준 방법이에요. 처음이라면 4-6의 Electron 앱 분석이 추가 도구 없이 가장 쉽게 해볼 수 있어요.
터미널에서 버전부터 확인하세요.
node -v
npm -vnpx rea-agents setup영상처럼 Claude Code에 그냥 이렇게 말해도 돼요.
https://github.com/morluto/rea 이 저장소의 README를 읽고 REA를 설치해줘. 설정 변경 내용은 실행 전에 나에게 보여줘.⚠️ 공식 문서가 직접 경고하는 부분이 있어요. 이름이 비슷한 가짜 저장소나 README를 복사한 사이트가 있으니 반드시 morluto/rea, rea.tools, npm의 rea-agents 패키지에서만 받으세요.
Electron 앱, .NET, 웹사이트만 볼 거라면 건너뛰어도 돼요.
맥·리눅스:
export GHIDRA_INSTALL_DIR=/내/경로/ghidra_12.1.4_PUBLIC
export JAVA_HOME=/내/경로/jdk-21
rea doctor --json
rea setup윈도우(PowerShell):
$env:GHIDRA_INSTALL_DIR = "C:\tools\ghidra_12.1.4_PUBLIC"
$env:JAVA_HOME = "C:\Program Files\Java\jdk-21"
rea doctor --json참고로 윈도우용 Ghidra 연동은 아직 실험 단계(읽기 전용)예요. 애플 실리콘 맥에서는 Rosetta로 돌아가는 x86용 JDK를 쓰면 검사에서 떨어지니, ARM용 JDK를 쓰세요.
rea 명령을 계속 쓰려면 전역 설치를 해두면 편해요.
npm install --global rea-agents
rea doctor --json특정 부분만 확인하고 싶을 때는 이렇게요.
rea doctor --provider ghidra --json
rea doctor --client claude_code --json공식 README의 예시 프롬프트 형식이에요. 앱 이름과 기능만 바꿔서 쓰면 됩니다.
메모 앱의 검색 기능이 어떻게 동작하는지 조사하고, 근거를 보여준 다음, 내 프로젝트에 비슷한 기능을 만들어줘.조금 더 잘 쓰는 팁이에요.
분석 엔진 없이 바로 해볼 수 있어요. 앱 폴더나 .asar 파일 경로를 넣으면 모듈·IPC 구조를 JSON으로 보여줍니다.
npx -y rea-agents@latest analyze-javascript-application /절대/경로/앱폴더 --json윈도우라면 경로를 "D:/apps/example"처럼 쓰면 돼요.
REA는 업데이트가 아주 잦아서, 문제가 생기면 먼저 업데이트부터 하라고 안내하고 있어요.
rea update
npx rea-agents@latest setup지우고 싶을 때는 아래 명령이에요. Hopper, Node.js 같은 다른 프로그램은 건드리지 않아요.
rea uninstall
rea uninstall --purge-data영상, 공식 문서, 국내 후기가 모두 공통으로 강조한 부분이에요.
안전하게 연습하는 방법: 내가 직접 만든 앱, 소스가 공개된 오픈소스 앱, 또는 공식 사례(DX-Ball 등)를 따라 해보는 걸 추천해요.
개인적인 정리로는, "소프트웨어는 끝났다"는 건 과장이지만 "앱 안에 넣어둔 건 더 이상 비밀이 아니다"는 건 사실에 가까워 보여요. 직접 써보신 분 있으면 후기 댓글로 공유해 주세요!
참고한 자료
댓글 [0]
로그인하고 경험을 나눠 주세요. 서로 다른 직업의 시선이 큰 도움이 됩니다.
로그인하고 댓글 쓰기아직 댓글이 없어요. 첫 댓글을 남겨 주세요.