핵심 요약
- Awesome Reverse Engineering은 바이너리, 앱, 펌웨어, 파일 형식, 프로토콜 분석에 쓰는 도구, 학습 자료, 관련 목록 140개 항목을 "하려는 작업" 기준으로 나눈 큐레이션 목록입니다.
- AI 에이전트와 연결하는 MCP 서버와 플러그인 10개는 별도 절에 모았습니다. IDA, WinDbg, Binary Ninja처럼 벤더가 직접 내놓은 공식 서버에는 필요한 버전이나 라이선스 조건이 함께 적혀 있습니다.
- 새로 추가한 23개 항목 중 4개만 직접 실행해 재현했고 나머지 19개는 문서로만 확인했다고 구분해 밝히며, 링크 검사 통과가 도구의 품질을 뜻하지 않는다고 명시합니다.
- 같은 이름의 alphaSeclab 목록은 README가 2019년 12월에 멈춰 있어, 2024년 이후 등장한 MCP 기반 도구를 찾는다면 이 목록이 더 맞습니다.
Awesome Reverse Engineering 소개
리버스 엔지니어링(reverse engineering)을 처음 시작하면 어떤 도구부터 써야 하는지가 첫 번째 벽입니다. 실행 파일의 정체를 확인하는 도구와 명령어를 읽는 디스어셈블러(disassembler), 실행 중인 프로세스를 관찰하는 계측 도구가 모두 다릅니다. 대상이 Android 앱인지 Unity 게임인지에 따라서도 필요한 도구가 달라집니다. GitHub에서 "awesome reverse engineering"을 검색하면 별이 수천 개 붙은 목록이 먼저 나오지만, 그중 wtsxDev, alphaSeclab, tylerha97의 목록은 README가 2019년에 마지막으로 갱신되었습니다. 그사이 AI 에이전트가 Ghidra나 IDA를 MCP(Model Context Protocol) 서버로 호출하는 방식이 생겼지만, 오래된 목록에는 이런 도구가 없습니다. 이번에 소개하는 Awesome Reverse Engineering은 2026년 10월에 새로 만들어진 리버스 엔지니어링 도구와 학습 자료 목록으로, 이런 AI 연동 도구를 별도 절로 다룹니다.
Awesome Reverse Engineering은 도구를 플랫폼이나 도구 종류가 아니라 독자가 하려는 작업 기준으로 나눕니다. README 첫머리의 "Start here" 표에서 "실행 파일과 그 기능을 식별한다", "실행 중인 프로그램의 호출을 추적한다", "빌드를 비교하거나 조사를 자동화한다" 같은 작업을 고르면 해당 절로 이동하는 방식입니다. 목록은 코딩 에이전트용 리버스 엔지니어링 도구 REA (
REA: Ghidra와 IDA 같은 분석 도구를 하나의 MCP로 묶어 코딩 에이전트에 연결하는 리버스 엔지니어링 도구)를 만든 개발자들이 운영하며, README 맨 위에 REA를 소개하는 이미지가 걸려 있습니다:
다만 REA 자체는 본문의 카탈로그 항목으로 등재되어 있지 않고, 상단의 "Featured" 안내로만 노출됩니다. 기여 가이드는 관리자가 소유한 프로젝트도 다른 항목과 같은 기준을 따르며, 추천하는 프로젝트와의 관계를 밝히라고 정해 두었습니다. 각 항목은 한 문장 설명과 공식 저장소나 문서, 홈페이지 링크로 구성되고, 상용 도구에는 commercial 표시를, 오래 갱신되지 않은 도구에는 마지막 커밋 시점이나 후속 도구를 함께 적습니다. 다만 기여 가이드는 갱신이 뜸하다는 이유만으로 버려진 프로젝트로 판단하지 말고, 기능과 문서를 먼저 검토하라고 당부합니다. 목록 자체는 CC0 1.0으로 공개되어 있습니다.
Awesome Reverse Engineering과 기존 리버스 엔지니어링 목록 비교
Awesome Reverse Engineering 저장소에는 관리자가 2026년 10월 9일 기준으로 기존 목록 21개를 조사한 비교 문서가 함께 들어 있습니다. 그 문서와 각 저장소의 README 커밋 기록을 바탕으로 대표적인 목록을 비교하면 다음과 같습니다:
| 항목 | Awesome Reverse Engineering | alphaSeclab/awesome-reverse-engineering | wtsxDev/reverse-engineering | DiscoverBox/awesome-ai-reverse |
|---|---|---|---|---|
| 범위 | 일반 리버스 엔지니어링, 140개 항목 | 전 플랫폼, 오픈소스 도구 3,500개 이상과 글과 영상 2,300개 이상(저장소 설명 기준) | 책, 강의, 연습 문제, 도구 | AI 보조 리버스 엔지니어링(MCP, 스킬, 플러그인, 에이전트) |
| 구성 방식 | 작업별 시작 표 + 작업별 절 | 플랫폼과 도구 종류별 다단계 분류 | 단일 README | 작업 선택 표 + 분석 생태계별 분류 |
| README 마지막 갱신 | 2026년 10월 13일 | 2019년 12월 31일 | 2019년 3월 7일 | 2026년 10월에도 갱신 중 |
| MCP 연동 도구 | 별도 절에 10개(플러그인 포함) | 없음 | 없음 | 목록의 중심 |
| 언어 | 영어 | 중국어와 영어 | 영어 | 중국어와 영어 |
alphaSeclab 목록은 저장소 이름이 같고 별이 5천 개가 넘어 검색에서 먼저 보이기 쉽지만, README는 2019년 12월 이후 바뀌지 않았습니다. 관리자도 이런 대형 목록을 "유용한 역사적 참고 자료"로 보면서도 인기가 현재의 유지보수를 뜻하지는 않는다고 보고, 저장소의 최근 push 날짜가 README 갱신을 뜻하지는 않는다고 지적합니다. DiscoverBox 목록은 AI 연동 도구만 깊게 다루는 전문 목록이라, Awesome Reverse Engineering은 이 목록을 "관련 목록" 절에 연결해 두고 일반 도구를 함께 다루는 쪽을 맡습니다.
Awesome Reverse Engineering을 사용하면 좋을 사용자
리버스 엔지니어링을 막 시작해 작업마다 어떤 도구가 있는지 지도를 먼저 얻고 싶은 개발자에게 Awesome Reverse Engineering이 잘 맞습니다. Ghidra나 IDA에 AI 에이전트를 연결하려는 분석가에게도 유용합니다. 공식 서버인지 여부를 항목 설명에 밝히고, 공식 서버를 중심으로 필요한 호스트 도구 버전과 라이선스 조건을 함께 적어 두었기 때문입니다.
반대로 특정 분야의 도구를 빠짐없이 찾으려는 사용자에게는 Awesome Reverse Engineering이 적절한 출발점이 아닙니다. 저장소 관리자 스스로 "initial selection"이라고 밝힌 목록이고, 절마다 5개에서 14개 정도만 담겨 있습니다. IDA 플러그인이나 Android 분석 도구를 폭넓게 찾으려면, 관리자의 비교 문서가 함께 조사한 idaplugins-list나 Awesome-Android-Reverse-Engineering 같은 전문 목록을 보는 편이 낫습니다. 또한 목록은 링크와 설명만 제공하므로, 각 도구의 설치와 사용은 해당 프로젝트의 문서를 따라야 합니다.
Awesome Reverse Engineering의 작업별 구성
Awesome Reverse Engineering은 학습 자료부터 관련 목록까지 16개 절로 구성되어 있습니다. 절별 항목 수와 대표 도구는 다음과 같습니다:
| 절 | 항목 수 | 대표 도구와 자료 |
|---|---|---|
| Learning (책 포함) | 12 | Compiler Explorer, pwn.college, Reverse Engineering for Beginners |
| File identification and triage | 8 | capa, Detect It Easy, LIEF |
| Native analysis | 8 | Ghidra, IDA, Binary Ninja, radare2 |
| Debuggers | 8 | GDB, x64dbg, WinDbg, rr |
| Dynamic instrumentation and tracing | 6 | Frida, DynamoRIO, strace |
| Malware analysis | 9 | CAPE Sandbox, Volatility 3, YARA-X |
| Android and managed code | 11 | JADX, Apktool, ILSpy |
| iOS and macOS | 5 | ipsw, Hopper, objection |
| Language runtimes and packagers | 10 | Cpp2IL, GoReSym, pyinstxtractor |
| Web and protocols | 10 | Wireshark, mitmproxy, Burp Suite |
| Firmware and hardware | 14 | Binwalk, unblob, QEMU |
| File formats | 5 | ImHex, Kaitai Struct, CyberChef |
| Diffing and analysis frameworks | 9 | angr, BinDiff, Unicorn |
| AI-assisted analysis | 10 | Hex-Rays IDA MCP, GhidraMCP, WinDbg MCP |
| Practice and communities | 8 | crackmes.one, FLARE-On, picoCTF |
| Related lists | 7 | 분야별 전문 목록 |
140개 항목 중 IDA, Binary Ninja, Burp Suite처럼 상용 도구에는 commercial 표시가 있고, 무료판이 있으면 그 범위도 함께 적혀 있습니다. 항목 설명에는 사용 전에 알아야 할 제약이 같이 들어 있습니다. 예를 들어 YARA 항목에는 유지보수 모드이며 후속 엔진이 YARA-X라는 점이 적혀 있습니다. RetDec은 제한적인 유지보수 상태이고, de4dot은 2020년에 보관(archived) 처리되었다는 점도 설명 안에 있습니다. 악성코드 분석 절에는 샘플을 격리된 일회용 환경에서만 실행하라는 주의 문구도 있습니다.
Awesome Reverse Engineering의 AI 보조 분석 도구
AI 보조 분석(AI-assisted analysis) 절은 기존 분석 도구를 AI 에이전트에 연결하는 MCP 서버와 플러그인 10개를 모은 곳입니다. 절의 안내 문단은 필요한 소프트웨어와 지원 클라이언트를 원 문서에서 확인하고, 에이전트가 내린 결론은 실제 코드와 런타임 근거로 다시 확인하라고 안내합니다. 이 절에서 벤더가 직접 공개한 공식 서버와 그 조건은 다음과 같습니다:
| 공식 서버 | 연결 대상 | 목록이 적은 조건 |
|---|---|---|
| Hex-Rays IDA MCP | IDA | IDA 9.4 이상과 idalib, Python 3.11 이상, uv 필요. 서버 라이선스와 IDA 라이선스는 별개 |
| WinDbg MCP | WinDbg | WinDbg 1.2610.1001.0 이상에 내장. 공식 클라이언트는 GitHub Copilot을 쓰는 VS Code와 GitHub Copilot CLI. WinDbg 세션 하나에 MCP 클라이언트 하나만 연결 |
| Binary Ninja MCP Server | Binary Ninja | Binary Ninja에 내장. 헤드리스 서버는 Commercial 또는 Ultimate 라이선스 필요 |
| Chrome DevTools MCP | Chrome | Node.js LTS 버전과 Chrome 필요 |
이 조건들은 각 벤더 문서와 일치합니다. 다만 Binary Ninja 문서에는 목록에 없는 제약이 하나 더 있습니다. Windows용 패키지에는 아직 헤드리스 서버(binaryninja_mcp.exe)가 들어 있지 않습니다. 그래서 Windows에서는 GUI에 내장된 HTTP 서버에 연결하고, 헤드리스 서버가 꼭 필요하면 WSL에서 Linux 빌드를 실행해야 합니다. 상용 Android 분석 도구 JEB의 공식 MCP 기능은 AI 절이 아니라 Android 절의 JEB 항목 안에 버전과 판에 따라 다르다는 설명으로 들어 있습니다.
커뮤니티 서버로는 GhidraMCP와 여기서 파생된 Ghidra MCP Server, mrexodia의 IDA Pro MCP(저자가 README 첫머리에서 Hex-Rays 공식 서버를 대신 쓰라고 권장), JADX-AI-MCP, radare2 MCP가 있습니다. Gepetto는 MCP 서버가 아니라, IDA 안에서 언어 모델에게 디컴파일한 함수를 설명하게 하고 변수 이름을 바꾸게 하는 플러그인입니다. 목록은 IDA 연동처럼 공식 서버와 커뮤니티 서버가 함께 있는 경우 이름을 분명히 구분해 적습니다. 반면 PyTorchKR에서 소개한 x64dbg-MCP Server와 Reverify는 아직 이 절에 등재되어 있지 않습니다.
Awesome Reverse Engineering의 등재 근거 기록 방식
Awesome Reverse Engineering은 항목을 추가할 때 "문서로 확인함(documented)"과 "직접 재현함(reproduced)"을 구분해 기록합니다. 10월 13일에 새로 들어온 23개 항목은 후보 검토 문서에 정리되어 있습니다. 이 중 직접 실행해 확인한 항목은 Construct, Scapy, YARA-X, Vineflower 4개뿐이고 나머지 19개는 문서로만 확인했다고 적혀 있습니다. 하드웨어, iOS 기기, 상용 도구, 브라우저 에이전트의 동작은 실행해 보지 않았다는 점도 함께 밝힙니다. 같은 날 BinDiff, angr, pyinstxtractor, WinDbg 4개 기존 항목의 설명을 보완하면서 WinDbg MCP를 AI 절에 따로 올려 목록이 140개가 되었고, 이 보완분 역시 실행 검증은 하지 않았습니다.
검토 문서는 항목마다 근거 문서 링크(GitHub 저장소는 특정 커밋에 고정한 README)와 필요한 호스트 환경, 라이선스를 적고, 다음 재검토 날짜를 2026년 11월 13일로 정해 두었습니다. 예를 들어 ghidriff 항목은 검토한 개발 대상이 Ghidra 12.0.4와 PyGhidra 3.x였으므로 오래된 예제가 넓은 호환성을 증명하지 않는다고 적었습니다. checksec 항목에는 보호 기법 플래그가 취약점 판정이 아니라는 점이 들어 있습니다. 링크 검사도 같은 원칙을 따릅니다. 저장소의 GitHub Actions는 Markdown 문서가 바뀐 풀 리퀘스트와 기본 브랜치 push, 그리고 매주 월요일 정기 실행에서 lychee로 링크를 검사하지만, 관리자는 링크 검사 통과가 도구의 품질이나 유지보수 상태를 뜻하지 않는다고 명시합니다.
Awesome Reverse Engineering 활용 방법
Awesome Reverse Engineering은 설치할 패키지가 없는 목록입니다. README의 "Start here" 표에서 하려는 작업을 고르고, 해당 절의 설명을 읽은 뒤 각 도구의 공식 문서로 이동하면 됩니다.
재현된 4개 예제는 저장소 루트에서 직접 다시 실행해 볼 수 있습니다. 실행에는 Python 3.11과 JDK 17, 인터넷 연결이 필요합니다. 아래 명령은 고정된 버전의 Construct, Scapy, YARA-X를 설치하고, 실행 스크립트는 Vineflower 1.12.0 JAR를 내려받아 SHA-256 값을 확인한 뒤 실행합니다. 예제 문서에 실린 명령은 다음과 같습니다:
resource_examples_dir="$(mktemp -d)"
python3.11 -m venv "$resource_examples_dir/venv"
"$resource_examples_dir/venv/bin/python" -m pip install -r examples/resource-intake/requirements.txt
"$resource_examples_dir/venv/bin/python" examples/resource-intake/verify.py --output "$resource_examples_dir/results"
예제는 관리자가 직접 만든 작은 입력만 다루므로, 성공했다고 해서 각 도구가 모든 플랫폼과 버전을 지원한다는 뜻은 아닙니다. 저장소 문서도 Linux, Python 3.11, Java 17 환경의 결과일 뿐이라고 범위를 한정합니다.
Awesome Reverse Engineering의 라이선스
Awesome Reverse Engineering은 CC0 1.0으로 공개되어 있어, 목록의 내용을 출처 표시 없이도 자유롭게 사용할 수 있습니다.
단, 목록에 실린 각 도구는 자체 라이선스를 따르므로, 상용 도구와 GPL 계열 도구는 사용 전에 해당 프로젝트의 조건을 따로 확인해야 합니다.
Awesome Reverse Engineering 프로젝트 GitHub 저장소
더 읽어보기
-
REA: Ghidra와 IDA 같은 분석 도구를 하나의 MCP로 묶어 코딩 에이전트에 연결하는 리버스 엔지니어링 도구
-
x64dbg-MCP Server: 런타임 설치 없이 x64dbg를 AI 어시스턴트에 연결하는 Zig 기반 플러그인
-
Reverify: 바이너리를 읽는 AI의 주장을 결정론적 도구가 실제 내용(byte)으로 판정하는 리버스 엔지니어링 도구
이 글은 GPT 모델로 정리한 초안을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 댓글로 알려주시기를 부탁드립니다. ![]()
이 글은 파이토치 한국 사용자 모임
이 직접 정리한 글입니다. 새 글을 놓치지 않으시려면 텔레그램(Telegram)이나 Slack/Discord/Teams/Dooray/GoogleChat 등으로 알림을 받으시고, 회원으로 가입하시면 주요 글들을 이메일
로도 보내드립니다! ![]()
아래
쪽에 좋아요
를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ ![]()

