V VibeCoding 365
목록으로 REA Reverse Engineer Anything

바이브코딩

REA 깃허브 스타 16만 개 | 소스 없는 앱을 AI가 뜯어보는 도구, 윈도우 설치와 사용법

AI 코딩 에이전트에 리버스 엔지니어링 공구함을 붙여 주는 오픈소스 REA의 정체, 인기 이유, 스타 숫자의 의미, 반응, 윈도우 설치와 사용법

REA(Reverse Engineer Anything)는 AI 코딩 에이전트가 소스 코드 없는 프로그램을 뜯어볼 수 있게 해 주는 무료 오픈소스 도구다. 클로드 코드나 코덱스, 커서 같은 에이전트에 연결해 두면 "이 앱의 검색 기능은 어떻게 돌아가?"라고 물었을 때, 에이전트가 설치된 앱 파일을 직접 열어 보고 근거가 되는 코드 조각과 함께 설명해 준다. 개발자 morluto가 만들었고, 깃허브 주소는 github.com/morluto/rea, 설치 패키지 이름은 rea-agents다.

리버스 엔지니어링은 완성된 프로그램을 거꾸로 분석해서 안이 어떻게 만들어졌는지 알아내는 일이다. 원래는 기드라(Ghidra)나 IDA 같은 전문 도구를 다룰 줄 아는 보안 연구자의 영역이었다. REA는 이 전문 도구들을 AI 에이전트가 쓸 수 있는 형태로 묶어서, 사람은 평소 말로 질문만 하고 도구 조작은 에이전트가 맡도록 만든다.

이 저장소는 2026년 10월 둘째 주 깃허브에서 가장 빠르게 스타가 늘어난 프로젝트가 됐다. 10월 7일 무렵 8,600개 남짓이던 스타가 10월 13일 오전에는 16만 2천 개를 넘었다. 같은 날 미국 정보기관 NSA가 공개한 기드라 저장소의 스타는 약 8만 5천 개다. 아래에서는 REA가 하는 일, 지금 알아둘 조건, 스타 숫자가 뜻하는 것, 반응, 윈도우 설치와 사용법을 순서대로 다룬다.

REA가 AI 에이전트와 분석 엔진 사이를 이어 주는 흐름을 네 칸으로 나타낸 한국어 인포그래픽
그림 1. REA는 에이전트의 질문을 받아 분석 엔진을 돌리고, 근거가 붙은 결과를 돌려주는 연결 도구다. 출처: morluto/rea README

REA는 어떤 도구인가

한 줄로 줄이면 REA는 AI 에이전트용 리버스 엔지니어링 공구함이다. 에이전트 혼자서는 컴파일된 exe 파일이나 압축된 앱 묶음을 제대로 읽지 못한다. 기계어는 사람이 쓴 코드가 아니라 CPU가 읽는 숫자 덩어리이고, 웹 앱도 배포될 때는 변수 이름이 지워지고 한 줄로 압축된 상태라 그냥 열어서는 흐름을 따라가기 어렵다. REA는 그 사이에 서서 적당한 분석 도구를 대신 실행하고, 에이전트가 이해할 수 있는 정리된 결과로 돌려준다.

연결 방식은 MCP(Model Context Protocol)다. MCP는 AI 에이전트가 외부 도구를 호출하는 공통 규격으로, USB 포트처럼 한 번 꽂아 두면 여러 에이전트가 같은 방식으로 쓸 수 있다. REA를 설치하면 에이전트 설정 파일에 REA 서버가 등록되고, 에이전트는 대화 중에 필요할 때 REA의 분석 기능을 꺼내 쓴다. 같은 기능을 터미널 명령어로도 쓸 수 있어서, 에이전트 없이 결과만 뽑아 보는 것도 가능하다.

REA가 하는 일은 크게 네 가지다.

  • 네이티브 프로그램(exe, dll 등)을 기드라, 호퍼(Hopper), IDA 중 하나에 넘겨 의사 코드와 어셈블리, 문자열, 함수 호출 관계를 받아 온다.
  • 자바스크립트와 일렉트론 앱은 자체 분석기로 모듈 구조, 화면과 메인 프로세스 사이 통신(IPC), 소스맵을 복원한다. 별도 엔진이 필요 없다.
  • 웹사이트는 크롬 계열 브라우저로 페이지 구조와 스크립트, 네트워크 요청을 관찰한다.
  • .NET 프로그램, 안드로이드 APK, 펌웨어, 웹어셈블리, SQLite 파일 등도 대상별 분석 기능이 따로 있다.

결과물의 특징은 "증거"다. REA가 돌려주는 답에는 어느 파일의 어느 위치에서 무엇을 봤는지, 그리고 무엇은 알 수 없었는지가 함께 담긴다. 공식 사이트의 첫 예시는 윈도우 계산기다. 200 더하기 10%를 누르면 왜 220이 나오는지 물으면, REA가 계산기 프로그램 안의 퍼센트 처리 부분을 찾아 원래 기계어와 해석된 코드를 보여 주고, 에이전트는 이를 바탕으로 곱하기와 나누기 뒤에는 그냥 100으로 나누고, 더하기와 빼기 뒤에는 앞 숫자의 퍼센트를 구하는 규칙이라고 설명한다. 그 근거로 비교 대상 상수 0x5c(곱하기 버튼 번호 92), 0x5b(나누기 버튼 번호 91), 0x64(100)가 기계어 그대로 제시된다.

morluto/rea 깃허브 저장소 첫 화면 캡처. 스타 16.3만, 포크 3.8만, 기여자 137명이 보인다
그림 2. 10월 13일 오전 morluto/rea 저장소 첫 화면. 스타 16.3만 개, 포크 3.8만 개, 릴리스 35개가 표시된다. 출처: GitHub

지금 알아둘 것

REA 자체는 MIT 라이선스로 공개된 무료 소프트웨어다. 내려받고 쓰는 데 돈이 들지 않고, 회사 업무에 써도 라이선스 문제는 없다. 다만 함께 쓰는 도구는 사정이 다르다. 기드라는 무료지만 호퍼와 IDA Pro는 상용 프로그램이라 별도 라이선스가 필요하고, REA 쪽에서도 상용 도구의 크랙이나 키 공유는 허용하지 않는다고 못 박아 두었다. 그리고 질문을 처리하는 에이전트(클로드, 코덱스 등)의 사용료는 각자 구독 조건대로 나간다.

분석은 내 컴퓨터 안에서 돌아간다. REA가 대상 앱을 외부 서버로 올리지는 않는다. 하지만 REA가 뽑은 결과는 에이전트에게 전달되고, 에이전트는 그 내용을 AI 회사 서버로 보내 답을 만든다. 회사 내부 프로그램처럼 민감한 대상을 분석할 때는 이 점을 따져 봐야 한다. FAQ에서도 "모델 제공자는 자기 데이터 정책을 따른다"고 따로 밝혀 둔다.

운영체제 지원은 대상마다 다르다. 자바스크립트와 일렉트론 앱, .NET 분석은 윈도우에서도 추가 설치 없이 된다. 반면 exe 같은 네이티브 파일을 깊게 분석하는 기능은 맥OS와 리눅스가 중심이고, 윈도우는 기드라를 통한 읽기 전용 지원이 실험 단계로 붙어 있다. 호퍼 자동 설치와 프로세스 동작 캡처는 윈도우에서 쓸 수 없다.

항목내용
정식 이름REA: Reverse Engineer Anything
만든 사람morluto (깃허브 개인 계정, X @morluto)
라이선스MIT (무료, 상업적 사용 가능)
설치 패키지npm rea-agents, 10월 11일 6.4.0 출시
필요 환경Node.js 22.19 이상, 24.11 이상, 또는 26 이상과 npm
지원 에이전트클로드 코드, 코덱스, 커서, 제미나이 CLI, 윈드서프, VS Code, 그록 빌드 등 21종
분석 위치내 컴퓨터 (결과는 에이전트를 거쳐 AI 회사로 전달)

용도도 선이 그어져 있다. 저장소의 면책 문서는 보안 연구, 악성코드 분석, 취약점 연구, CTF와 교육, 호환성 확보, 오래된 소프트웨어 보존, 내가 소유하거나 허락받은 소프트웨어 점검을 정당한 용도로 든다. 반대로 DRM과 라이선스 검사, 안티치트 우회, 게임 핵 제작, 남의 독점 코드와 리소스 복제, AI 서비스 정책 회피는 지원하지 않으며 그런 요청은 이슈에서 답 없이 닫는다고 적었다. README의 문구는 "마음에 드는 기능을 보면 바이너리 수준까지 이해하라"이지만, 그 이해를 그대로 베껴 파는 일까지 허락한다는 뜻은 아니다.

핵심 포인트: REA는 무료지만, 분석 엔진 라이선스와 에이전트 사용료, 그리고 분석 대상의 이용 약관은 각자 따로 챙겨야 한다.

REA가 이렇게 유명해진 이유

첫째, 질문 방식이 쉽다. 기존 리버스 엔지니어링은 디스어셈블러 화면에서 함수 수천 개를 하나씩 따라가는 일이었다. REA는 이 과정을 "메모 앱의 검색 기능이 어떻게 동작하는지 증거와 함께 보여 주고, 내 프로젝트에 비슷한 기능을 만들어 줘" 같은 한 문장으로 바꿨다. README의 첫 예시 문장이 바로 이것이다. 리버스 엔지니어링을 해 본 적 없는 웹 개발자도 이해할 수 있는 약속이라, 보안 업계 밖까지 퍼질 수 있었다.

둘째, 시기가 맞았다. 2025년 봄부터 기드라와 IDA를 MCP로 에이전트에 붙이는 커뮤니티 프로젝트가 여럿 나왔다. LaurieWired의 GhidraMCP는 스타 약 1만 1천 개, mrexodia의 ida-pro-mcp는 약 1만 2천 개를 모았다. 2026년 9월 25일에는 IDA 제작사 Hex-Rays가 공식 오픈소스 MCP 서버를 내놓기도 했다. REA는 이런 흐름 위에서 여러 엔진과 자바스크립트, 웹, 안드로이드 분석까지 한 번의 설치로 묶었고, 설치 명령도 npx 한 줄로 줄였다.

셋째, 눈에 보이는 사례가 있었다. 공식 사이트는 1990년대 PC 게임 DX-Ball의 사운드 좌우 배분 계산을 C 코드로 되살려 원본 x86 함수와 3,205개 경우에서 같은 결과를 내고, 컴파일된 함수 바이트 63개까지 똑같이 재현한 사례를 내세운다. 노션 데스크톱 앱이 서식 있는 텍스트를 클립보드에 복사하는 경로를 화면 코드에서 메인 프로세스까지 추적한 사례, 1990년대 PC-98 게임 동방환상향(TH04)의 탄막 각도 계산을 복원한 사례도 있다. 유튜브와 X에는 "음성 입력 앱 Wispr Flow를 따라 만들었다", "케이브 스토리 실행 파일을 해체해 플레이어 부분을 러스트로 다시 짰다"는 체험담이 이어졌다.

넷째, "소스 코드를 숨기는 것이 더는 해자(방어벽)가 아니다"라는 논쟁에 불을 붙였다. 해커뉴스 토론에서는 "이제 숨길 수 있는 건 없다, 최대한 서버 쪽에 두는 수밖에 없다"는 의견과 "LLM은 난독화된 코드도 별 어려움 없이 읽는다"는 경험담이 나왔다. 앱을 만드는 회사 입장에서는 위협이고, 개인 개발자 입장에서는 강력한 학습 도구라 양쪽 모두 이야기할 거리가 많았다.

다섯째, 업데이트 속도다. 7월 13일 1.0.0 이후 석 달 만에 6.4.0까지 35번의 릴리스가 나왔고, 10월 들어서는 거의 매일 새 버전이 올라왔다. 깃허브 화면 기준 커밋은 2,600개, 기여자는 137명이다. 저장소 자체가 "빠르게 바뀌니 자주 업데이트하라"고 안내할 정도다.

영상 1. REA를 코딩 에이전트에 붙여 쓰는 과정을 소개한 영상. 출처: YouTube Full Stack 채널

깃허브 스타 숫자의 의미

깃허브 스타는 저장소 오른쪽 위 별 버튼을 누른 사람 수다. 의미는 "관심 있음" 또는 "나중에 다시 보려고 책갈피함"에 가깝다. 별을 누른다고 프로그램을 설치하거나 써 봤다는 뜻은 아니고, 코드 품질을 평가했다는 뜻도 아니다. 그래서 스타는 사용자 수가 아니라 화제성의 지표로 읽는 편이 정확하다. morluto도 X에 "오픈소스 프로젝트는 스타가 있어서 좋은 걸까, 좋아서 스타가 있는 걸까"라는 글을 올린 적이 있다.

실제 사용량은 다른 숫자로 짐작할 수 있다. npm 통계에서 rea-agents 패키지는 10월 5일부터 11일까지 일주일 동안 약 13만 2천 번, 9월 12일부터 10월 11일까지 한 달 동안 약 13만 4천 번 내려받혔다. 한 달 다운로드의 거의 전부가 마지막 일주일에 몰렸다는 뜻이다. 다만 npx로 실행할 때마다 다운로드가 잡힐 수 있어서 이 숫자도 사용자 수와 같지는 않다. 포크 3만 8천 개, 지켜보기 530명, 열린 이슈와 PR 수백 건은 실제로 손을 대는 사람이 적지 않다는 신호다.

시점 (한국 시간)스타 수근거
2026년 4월 14일0저장소 생성
7월 13일공개 정보 없음첫 정식판 1.0.0
10월 7일 새벽약 8,600X 게시물, 하루 약 3천 개 증가
10월 8일 밤2만README 축하 커밋
10월 10일 새벽4만README 축하 커밋
10월 11일 밤9만README 축하 커밋
10월 12일 오후11만README 축하 커밋
10월 13일 오전 11시 40분162,684GitHub API

이 속도는 이례적이다. 10월 12일 오후 11만에서 13일 오전 16만 2천까지, 하루가 안 되는 사이에 5만 개 넘게 늘었다. 마이크로소프트의 VS Code 저장소가 2015년부터 11년 동안 모은 스타가 약 19만 4천 개이고, 기드라는 2019년부터 약 8만 5천 개다. 같은 주 깃허브 인기 목록에 함께 오른 mattpocock/skills는 2월 생성 이후 약 28만 8천 개를 모았는데, 에이전트 관련 저장소들이 올해 유독 큰 숫자를 기록하고 있다는 흐름도 함께 볼 만하다.

스타 숫자는 조작될 수 있다는 점도 알아 두면 좋다. 돈을 받고 가짜 계정으로 별을 눌러 주는 서비스가 존재하고, 짧은 기간에 급증한 저장소는 늘 그런 의심을 받는다. REA의 스타가 조작됐다는 근거는 공개되지 않았다. 다만 X에서 REA를 직접 다룬 게시물들의 반응은 수십에서 수백 개의 좋아요 수준이 대부분이라, 스타 증가 폭에 비하면 소셜 반응은 상대적으로 작다. 큰 숫자만 보고 품질을 판단하기보다 릴리스 기록, 이슈 응답, 실제 사례를 함께 보는 편이 안전하다.

10월 7일 8,600개에서 10월 13일 16.3만 개까지 늘어난 REA 스타 수를 막대로 나타내고 VS Code와 비교한 한국어 인포그래픽
그림 3. 저장소는 6개월간 조용하다가 10월 첫 주에 급증했다. 출처: GitHub API, morluto/rea 커밋 기록

X와 커뮤니티 반응

만든 사람의 가장 큰 반응을 얻은 글은 10월 7일 리플릿 대표 암자드 마사드(@amasad)에게 단 답글이다. "에이전트가 리버스 엔지니어링을 잘하도록 도구 세트를 만들었다, 호퍼와 기드라에 도구를 더하면 아주 멀리 간다"는 내용으로, 좋아요 325개와 조회 약 4만 9천 회를 기록했다. 10월 10일에는 REA 전용 계정 @reatools를 열고 "깃허브 트렌딩 1위"를 알렸고, 같은 날 "중국 최전선 AI 연구소 몇 곳이 벌써 쓰고 있다", "누군가 자기 BMW를 REA로 분석하려 한다"는 글도 올렸다.

긍정적인 반응은 "쉬워졌다"는 데 모인다. 중국어권과 일본어권에서는 "깃허브 트렌딩 1위, 하루 만에 1만 5천 스타" 같은 소개 글이 많았고, 한 사용자는 "남의 앱에 좋은 기능이 있는데 소스가 없어 답답했다, 이제 에이전트가 직접 뜯어서 설명해 준다, 별이 벌써 10만이라니 말이 안 된다"고 적었다. 해커뉴스에서는 32비트 리눅스 게임 바이너리를 64비트 보드로 두 시간 만에 옮겼다는 경험담과, 오래된 도스용 교육 게임을 리눅스로 옮겨 보겠다는 반응이 이어졌다.

비판과 우려도 분명하다. 해커뉴스의 첫 댓글은 "이름이 너무 낚시성"이라며 아이폰이 시리와 주고받는 내부 API를 이 도구로 풀어 보라고 도전했다. 다른 사용자는 "분석해서 이해하는 것과 그걸 실제로 쓸 수 있는 것은 다르다"고 짚었다. X에서는 "상호 운용과 보안 분석을 위한 리버스 엔지니어링은 합법이지만, 베끼기 위한 것은 이용 약관과 저작권, 영업비밀을 침해하는 도둑질"이라는 지적, "소송이 몇 건 나올 것 같다"는 전망, 그리고 README에 CI 실패 배지가 떠 있던 순간을 꼬집은 글이 나왔다. 일부 계정은 "트레이더에게 가장 위험한 MCP", "깃허브에서 가장 위험한 저장소" 같은 자극적인 문구로 조회수를 끌었는데, 이런 글은 기능을 과장하는 경우가 많다.

보안 업계는 방어 쪽 교훈에 주목했다. 보안 블로그 PlayCISO는 REA를 "출시된 앱이 이제 에이전트에게 몇 분 만에 분해될 수 있다는 생생한 증거"라고 평가하고, 클라이언트 앱에 비밀 키나 숨겨진 주소를 넣지 말 것, 앱 쪽 검사는 신뢰 경계가 아니라 힌트로 볼 것, 난독화는 시간을 벌 뿐 안전을 보장하지 않는다는 점을 들었다. 같은 이름을 딴 솔라나 밈코인 $REA가 등장했다가 개발자가 물량을 다 팔아 치웠다는 글도 돌았는데, 이는 프로젝트와 무관한 투기다.

영상 2. 이름을 지운 맥 앱에서 숨겨진 잠금 해제 규칙을 에이전트가 찾아내는 시연과 법적, 보안상 주의점을 다룬 영상. 출처: YouTube Rob Shocks 채널

윈도우에서 설치하는 방법

윈도우 사용자라면 자바스크립트와 일렉트론 앱 분석부터 시작하는 것이 가장 수월하다. 디스코드, 슬랙, 노션, VS Code처럼 일렉트론으로 만든 데스크톱 앱이 많고, 이 분석은 별도 엔진 없이 Node.js만 있으면 된다. 설치는 세 단계다.

첫 단계는 Node.js 설치다. nodejs.org에서 LTS 버전을 받아 설치한 뒤, PowerShell을 열고 버전을 확인한다. REA는 22.19 이상, 24.11 이상, 또는 26 이상을 요구한다. 20 버전에서도 일부 명령은 경고와 함께 돌아가지만 지원 범위 밖이라 업그레이드하는 편이 낫다.

node -v
npm -v

둘째 단계는 에이전트 연결이다. PowerShell에서 아래 명령을 실행하면 설치된 에이전트 목록이 나오고, 연결할 에이전트를 고르면 어떤 설정 파일의 어느 부분이 바뀌는지 계획을 먼저 보여 준다. 승인해야 실제로 바뀌고, 기존 설정은 백업 파일로 남는다. 끝나면 안내에 나온 에이전트를 다시 시작한다.

npx rea-agents@latest setup

셋째 단계는 점검이다. doctor 명령은 설정을 바꾸지 않고 현재 상태만 읽어서, 특정 에이전트 등록이나 분석 엔진이 준비됐는지 알려 준다. 특정 에이전트만 보고 싶다면 client 옵션을 붙인다.

npx rea-agents@latest doctor --client codex --json

rea 명령을 계속 쓸 계획이면 전역 설치가 편하다. 전역 설치 뒤에는 rea update 한 줄로 최신판을 받을 수 있다. npx로만 쓰는 경우에는 setup 명령을 @latest로 다시 실행하면 등록 정보가 갱신된다.

npm install --global rea-agents
rea --help
rea update
윈도우에서 Node.js 설치, setup 명령, doctor 점검까지 세 단계를 나타낸 한국어 인포그래픽
그림 4. 윈도우 설치는 Node.js 설치, 에이전트 연결, 점검의 세 단계다. 출처: REA README, docs/installation.md

exe나 dll을 깊게 분석하려면 기드라를 따로 준비한다. REA는 기드라나 자바를 대신 설치하지 않는다. 기드라 12.1.x(12.1.4에서 검증)를 압축 해제하고 64비트 JDK 21 이상을 설치한 뒤, PowerShell에서 경로를 지정하고 점검한다. 윈도우 10 이상 x64, 로컬 NTFS 드라이브에 있는 x86 또는 x86-64 PE 파일이 대상이고, 함수 이름 변경 같은 편집 기능 없이 25가지 읽기 전용 분석만 된다. 대신 프로세스 격리와 권한 제어용 윈도우 전용 부품은 npm 패키지에 들어 있어서 따로 빌드할 필요가 없다.

$env:GHIDRA_INSTALL_DIR = "C:\tools\ghidra_12.1.4_PUBLIC"
$env:JAVA_HOME = "C:\Program Files\Java\jdk-21"
rea doctor --json
rea providers --json
윈도우에서 바로 되는 분석과 추가 준비가 필요한 분석을 표로 나눈 한국어 인포그래픽
그림 5. 윈도우에서는 자바스크립트와 .NET 분석이 바로 되고, 네이티브 분석은 기드라를 붙인 실험 단계다. 출처: REA docs/installation.md, docs/windows-ghidra-p0.md

IDA를 쓰는 경우에는 IDA Pro용 커뮤니티 MCP 서버(ida-pro-mcp)나 IDA Free까지 지원하는 플러그인을 먼저 띄워 두고 REA가 거기에 붙는 구조다. 이 플러그인 중 하나는 모든 네트워크 주소에서 접속을 받도록 열려 있어서, REA 문서는 윈도우 방화벽으로 외부 접속을 막으라고 안내한다. 처음이라면 무료인 기드라 쪽이 진입 장벽이 낮다.

실제로 쓰는 방법

가장 기본적인 사용법은 연결된 에이전트에게 평소 말로 묻는 것이다. README가 권하는 문장 틀은 "{앱 이름}의 {기능}이 어떻게 동작하는지 알아내고, 증거를 보여 준 다음, 내 프로젝트에 비슷한 기능을 만들어 줘"다. 에이전트는 REA를 통해 대상 파일을 열고, 관련 함수와 호출 관계를 따라간 뒤, 찾은 코드와 아직 모르는 부분을 함께 정리해 답한다. 질문이 구체적일수록 결과가 좋다. "이 앱 분석해 줘"보다 "내보내기 버튼을 누르면 CSV 파일이 어떤 순서로 만들어지는지"가 훨씬 정확한 답을 끌어낸다.

에이전트 없이 터미널에서 바로 결과를 뽑을 수도 있다. 압축을 푼 일렉트론 앱 폴더나 app.asar 파일 경로를 넣으면 모듈 목록, import 관계, 일렉트론 경계와 근거가 JSON으로 나온다. 윈도우에서는 경로를 "D:/apps/example"처럼 슬래시로 적으면 된다.

npx -y rea-agents@latest analyze-javascript-application "D:/apps/example" --json > result.json

결과가 어떤 모양인지 감을 잡기 위해, 메인 파일과 검색 모듈 두 개짜리 아주 작은 일렉트론 예제 폴더를 넣어 보면 6.4.0 기준으로 몇 초 안에 약 120KB짜리 JSON이 만들어진다. 그 안에는 자바스크립트 모듈 5개, 일렉트론 메인 프로세스 1개, IPC 채널 1개와 그 채널을 처리하는 핸들러 1개가 노드로 연결돼 있고, 파일마다 SHA-256 해시와 함께 한계(limitations) 항목이 붙는다. 실제 대형 앱이라면 이 그래프가 수천 개 노드로 커지고, 에이전트는 그중 질문과 관련된 경로만 골라 따라간다.

하고 싶은 일터미널 명령
앱 전체 개요 보기rea analyze
일렉트론, JS 앱 구조 복원rea analyze-javascript-application 경로 --json
웹페이지 번들 분석rea analyze-web-bundle
앱의 일부를 코드로 읽기rea decompile
두 버전 비교rea compare-application-versions
준비 상태 점검rea doctor --json
분석 엔진 확인rea providers --json

명령어 이름은 rea --help로 전체 목록을 볼 수 있다. 6.4.0 기준으로 안드로이드 기기 화면 캡처, 브라우저 시나리오 녹화, 펌웨어 추출, 증거 파일 내보내기와 가져오기까지 수십 개가 있다. 대부분의 사용자는 이 명령을 직접 외울 필요가 없다. 에이전트가 MCP로 같은 기능을 골라 쓰기 때문이다. 공식 가이드 사이트 rea.tools는 게임 실행 파일에서 사운드 계산 복원하기, 작은 메모 앱에서 CSV 내보내기 흐름 따라가기, 브라우저에서 클릭 하나가 어떤 요청을 보내는지 관찰하기의 세 가지 실습을 질문 문장과 결과 예시까지 함께 제공한다.

REA 공식 사이트 rea.tools 첫 화면 캡처. 에이전트에 붙여 넣을 설치 문장과 npx 명령이 보인다
그림 6. 공식 사이트는 에이전트에게 그대로 붙여 넣을 설치 요청 문장도 제공한다. 출처: rea.tools

공식 사이트에는 터미널 명령 대신 에이전트에게 붙여 넣는 문장도 있다. "REA를 설치하고 이 코딩 에이전트에 연결해 줘. npx rea-agents@latest setup을 쓰고, 승인할 수 있게 설치 계획을 먼저 보여 준 다음, 설치를 검증해 줘"라는 요청이다. 에이전트가 명령 실행 권한을 갖고 있다면 이 한 문장으로 설치까지 끝난다.

쓸 때 주의할 점

가장 먼저 따질 것은 분석 대상의 권리 관계다. 내가 만든 프로그램, 회사가 분석을 허락한 프로그램, 오래돼서 유지보수가 끊긴 프로그램의 호환성 확보는 비교적 안전한 영역이다. 반면 상용 앱의 기능을 그대로 베껴 출시하거나, 라이선스 검사와 DRM을 우회하는 일은 이용 약관과 저작권법, 미국의 경우 DMCA 우회 금지 조항에 걸릴 수 있다. 미국 전자프런티어재단(EFF)의 리버스 엔지니어링 FAQ도 보안 연구 예외가 아주 좁게 정의돼 있으니 애매하면 변호사와 상의하라고 안내한다. 한국에서도 소프트웨어 이용 약관에 역분석 금지 조항이 있는 경우가 많다.

다음은 실행형 분석의 위험이다. 정적 분석은 파일을 읽기만 하지만, 프로세스 캡처나 브라우저 시나리오 같은 기능은 대상 프로그램을 실제로 실행한다. 면책 문서는 이런 작업이 앱 상태, 파일, 계정, 기기에 영향을 줄 수 있으니 신뢰할 수 없는 대상은 격리된 환경에서 다루라고 적어 두었다. 출처를 모르는 프로그램을 평소 쓰는 노트북에서 실행형으로 분석하는 것은 피하는 편이 좋다.

결과를 맹신하지 않는 것도 중요하다. REA가 증거를 붙여 주는 이유는 에이전트의 설명이 틀릴 수 있기 때문이다. 의사 코드는 원래 소스가 아니라 분석 엔진이 추측해 복원한 코드이고, 에이전트는 그 위에서 다시 추론한다. 공식 계산기 예시도 마이크로소프트가 공개한 원본 소스와 맞춰 보는 단계를 거친다. 중요한 결론이라면 제시된 주소와 코드 조각을 직접 열어 보거나, 같은 입력으로 동작을 테스트해서 확인해야 한다.

구분비교적 안전한 쓰임피해야 할 쓰임
대상내 프로그램, 허락받은 프로그램남의 상용 앱 복제 판매
목적학습, 호환성, 보안 점검, 악성코드 분석DRM, 라이선스, 안티치트 우회
환경정적 분석, 격리된 가상 머신출처 불명 파일을 업무 PC에서 실행
결과원본 테스트와 함께 검증의사 코드를 그대로 원본처럼 사용

앱을 만드는 쪽이라면 REA를 방어 점검 도구로 쓸 수 있다. 내가 배포한 일렉트론 앱을 REA로 분석해 보면 API 키, 내부 서버 주소, 클라이언트 쪽 결제 검사 같은 숨겨 둔 것들이 얼마나 쉽게 드러나는지 알 수 있다. 해커뉴스와 보안 블로그의 결론도 같다. 중요한 판단과 비밀은 서버에 두고, 사용자 기기에 내려가는 코드는 언젠가 읽힌다고 가정하는 편이 맞다.

비슷한 도구와의 차이

REA 이전에도 리버스 엔지니어링 도구를 AI 에이전트에 붙이는 프로젝트는 있었다. 대표적인 것이 기드라 하나를 MCP로 여는 GhidraMCP와, IDA Pro를 여는 ida-pro-mcp다. 이들은 특정 엔진 하나를 깊게 다루는 데 집중한다. REA는 이런 엔진을 공급자(provider)로 두고 그 위에 공통 규격을 얹는 쪽이다. 실제로 REA의 IDA 지원은 ida-pro-mcp를 그대로 활용해 연결하는 방식이다.

도구성격스타 (10월 13일)
REA여러 엔진과 JS, 웹, 안드로이드 분석을 묶은 통합 MCP약 16만 2천
기드라NSA가 공개한 무료 리버스 엔지니어링 프로그램약 8만 5천
ida-pro-mcpIDA Pro를 MCP로 여는 커뮤니티 서버약 1만 2천 7백
GhidraMCP기드라를 MCP로 여는 커뮤니티 플러그인약 1만 1천

차이는 세 가지로 요약된다. 첫째, 범위다. REA는 네이티브 바이너리뿐 아니라 일렉트론, 웹사이트, .NET, 안드로이드, 펌웨어까지 한 설치로 다룬다. 둘째, 설치 경험이다. setup 명령이 21종 에이전트의 설정 파일을 찾아 백업하고 수정하며, 작업 지침(스킬)까지 함께 깔아 준다. 셋째, 증거 형식이다. 결과마다 대상 파일 해시, 사용한 엔진과 버전, 한계를 담은 증거 묶음으로 남겨서 나중에 비교하거나 다른 사람과 공유할 수 있다. 반대로 한 엔진만 깊이 쓰는 숙련자라면 기존 전용 MCP가 더 가볍고 단순할 수 있다.

마무리

앞에서 다룬 REA의 핵심만 짧게 정리한다.

  • REA는 AI 코딩 에이전트가 소스 없는 프로그램을 분석하도록 기드라, 호퍼, IDA와 자체 분석기를 묶어 주는 무료 MIT 오픈소스 MCP 도구다.
  • 답에는 어느 파일의 어느 코드를 봤는지와 모르는 부분이 증거로 함께 붙는다.
  • 스타는 4월 생성 후 조용하다가 10월 7일 약 8,600개에서 13일 16만 2천 개를 넘었다. 스타는 관심의 크기이지 사용자 수나 품질 점수가 아니다.
  • 인기 비결은 한 문장 질문, npx 한 줄 설치, 게임과 노션 같은 눈에 보이는 사례, 그리고 소스 숨기기가 더는 방어가 아니라는 논쟁이다.
  • 윈도우에서는 Node.js 22.19 이상을 깔고 npx rea-agents@latest setup으로 시작하며, 자바스크립트와 .NET 분석은 바로 되고 네이티브 분석은 기드라를 붙인 실험 단계다.
  • 남의 상용 앱 복제, DRM 우회 같은 용도는 프로젝트 스스로 지원하지 않으며 법적 위험이 크다.

「뜯어보는 힘은 커졌고, 어디까지 뜯어도 되는지는 여전히 사람이 정한다」 처음에는 내가 만든 앱이나 공개된 예제로 연습하고, 결과는 원본 동작과 맞춰 본 뒤에 쓰는 것이 좋다.

출처와 링크

조사 기준 2026년 10월 13일.

FAQ

자주 묻는 질문

REA를 쓰려면 리버스 엔지니어링을 할 줄 알아야 하나요?

전문 지식이 없어도 질문은 할 수 있다. 다만 에이전트가 내놓은 의사 코드와 주소를 검증하려면 기본 개념을 알아 두는 편이 좋다. rea.tools의 세 가지 실습 가이드가 입문용으로 쓰기 좋다.

REA는 유료인가요?

REA는 MIT 라이선스라 무료다. 호퍼와 IDA Pro는 별도 구매가 필요한 상용 프로그램이고, 기드라는 무료다. 에이전트 쪽 구독료나 API 요금은 쓰는 서비스 기준으로 따로 나간다.

맥 없이 윈도우만 있어도 쓸 만한가요?

일렉트론과 웹, .NET, 안드로이드 APK 분석은 윈도우에서도 충분히 쓸 만하다. 네이티브 exe 분석은 기드라 연동이 실험 단계라 편집 기능이 없고 x86, x86-64 PE 파일로 한정된다. 리눅스가 필요한 기능은 WSL로 보완하는 방법도 있다.

REA로 게임 핵이나 유료 기능 해제를 만들 수 있나요?

프로젝트는 DRM, 라이선스 검사, 안티치트 우회와 게임 핵 제작을 지원하지 않는다고 명시한다. 그런 요청은 이슈에서 답 없이 닫히고 커뮤니티에서 퇴출될 수 있다. 법적으로도 저작권과 이용 약관 위반 소지가 크다.

REA를 설치하면 에이전트 설정이 망가지지 않나요?

setup은 바꿀 파일과 내용을 먼저 보여 주고 승인을 받은 뒤에만 쓴다. 기존 설정은 .rea.backup 같은 백업으로 남고, 설정 파일이 손상돼 있으면 아무것도 쓰지 않고 멈춘다. 지우고 싶으면 rea uninstall로 REA가 추가한 부분만 제거된다.

스타가 이렇게 빨리 느는 건 조작 아닌가요?

조작을 입증한 공개 자료는 없다. 다만 하루 수만 개씩 늘어난 속도에 비해 X 반응은 작은 편이라 숫자만으로 품질을 판단하기는 어렵다. npm 다운로드, 릴리스 빈도, 이슈 응답 속도 같은 다른 신호를 함께 보는 편이 낫다.

분석 결과는 어디에 저장되나요?

REA는 캐시와 상태를 사용자 폴더의 .rea 아래에 두고, 분석 결과는 증거 JSON으로 내보내거나 가져올 수 있다. rea uninstall --purge-data를 쓰면 REA의 캐시와 상태 폴더까지 함께 지운다. 증거 파일과 캡처는 지우지 않는다.

REA 업데이트는 얼마나 자주 해야 하나요?

10월에는 거의 매일 새 버전이 나왔고, README도 버그 수정이 잦으니 자주 업데이트하라고 권한다. 전역 설치라면 rea update, npx 사용자는 npx rea-agents@latest setup을 다시 실행하면 된다. 문제가 생기면 업데이트 후 같은 작업을 다시 시도하는 것이 공식 안내다.