REA: Tools Reverse Engineering Berbasis AI, Cara Kerja & Cara Install
REA (Reverse Engineer Anything) adalah tools reverse engineering berbasis AI yang memungkinkan agen seperti Claude Code, Codex, dan Cursor membedah aplikasi tanpa source code, mulai dari aplikasi Electron dan APK Android hingga native binary. Di artikel ini kita bahas apa itu REA, cara kerjanya, cara install, contoh penggunaan, serta manfaatnya untuk tim Blue Team dan audit keamanan.
Apa itu REA?
REA adalah server MCP (Model Context Protocol) open-source yang memberi agen AI kemampuan membedah perangkat lunak: dari perilaku aplikasi sampai level instruksi native binary. Proyek ini dikelola di GitHub morluto/rea, berlisensi MIT, ditulis dengan TypeScript/Node.js, dan didistribusikan lewat paket npm rea-agents serta situs rea.tools.
Idenya sederhana: Anda melihat fitur menarik di sebuah aplikasi, lalu meminta agen untuk memahami cara kerjanya, menunjukkan buktinya, dan membangun versi serupa untuk proyek Anda. REA menjadi "tangan" agen untuk menjalankan decompiler, parser, dan alat analisis lain, sementara agen menjadi "otak" yang bertanya, menyimpulkan, dan menulis kode.
Per pertengahan Oktober 2026, repositori ini mencatat sekitar 269 ribu bintang, 67 ribu fork, dan lebih dari 3.300 commit, menjadikannya salah satu proyek tooling AI paling populer di GitHub.
Cara Kerja REA
REA bekerja sebagai jembatan antara agen AI dan alat reverse engineering yang sudah ada. Alurnya berjalan dalam satu siklus:
- Pengguna bertanya ke agen, misalnya "Bagaimana fitur pencarian di aplikasi X bekerja?"
- Agen memanggil REA lewat MCP untuk memeriksa target lokal (binary, folder aplikasi, APK, file capture, dan lainnya).
- REA menjalankan provider analisis yang sesuai: Hopper, Ghidra, atau IDA untuk native binary; JADX untuk Android; browser Chrome untuk website; parser bawaan untuk JavaScript, .NET, Go, dan Rust.
- REA mengembalikan temuan beserta bukti seperti pseudocode, assembly, string, simbol, referensi silang, dan juga hal-hal yang belum diketahui (unknowns).
- Agen menggunakan temuan itu untuk bertanya lanjut, menjelaskan perilaku, atau menulis dan menguji implementasi baru.
Agen AI → REA (server MCP / CLI) → Provider (Ghidra, IDA, JADX) → Target lokal
← temuan + bukti + unknowns ←
Tiga prinsip desain yang menonjol:
- Berbasis bukti (evidence-first). Setiap kesimpulan disertai bukti dan batasannya, sehingga agen tidak sekadar menebak dan hasilnya bisa diverifikasi manusia.
- Analisis lokal. Target dianalisis di mesin Anda dan tidak diunggah oleh REA. Yang perlu diingat, hasil tool tetap dikirim ke model AI yang dipakai agen, jadi kebijakan data penyedia model tetap berlaku.
- Satu workflow, dua antarmuka. Tool yang sama bisa dipanggil agen via MCP atau langsung dari terminal lewat perintah
rea.
Apa Saja yang Bisa Dianalisis REA?
Cakupan REA sangat luas, dari binary desktop hingga rekaman sinyal logika. Ringkasan target utamanya:
| Target | Yang dihasilkan | Kebutuhan |
|---|---|---|
| Native binary (EXE, ELF, Mach-O) | Pseudocode, assembly, string, simbol, call dan referensi | Hopper, Ghidra, atau IDA (opsional objdump/Rizin) |
| JavaScript / Electron | Modul, import, source map, route, IPC, native add-on | Cukup Node.js dan npm |
| .NET assembly | Metadata, instruksi CIL, dependensi native | Tidak ada (statis) |
| Android APK | Manifest, kelas, method hasil dekompilasi | JADX headless + JDK |
| Perangkat Android | Paket, proses, log, dump, screenshot, transfer file | adb |
| Aplikasi Flutter | Hash snapshot Dart, digest library per ABI | Tidak ada (statis) |
| Binary Go dan Rust | Versi compiler, modul/crate, dependensi | Bawaan, tanpa toolchain |
| Website | Struktur halaman, script, observasi jaringan, screenshot | Browser keluarga Chrome |
| Capture jaringan (HAR, SAZ, pcap) | Request/response, payload, DNS, TLS SNI, distribusi protokol | tshark/capinfos, mitmdump |
| Firmware | Region, hasil ekstraksi, serah-terima ke analisis native | Binwalk / Unblob (Linux) |
| WASM, bytecode EVM | Section, import/export, selector fungsi kontrak | WABT; host Linux x64 |
| Database SQLite | Tabel, kolom, index, view, trigger, sampel baris | Node.js 24.15+ |
| Crash dump Linux | Register, sinyal per thread, kandidat mapping | pwntools, opsional GDB/pwndbg |
| Perilaku proses | Output terminal, interaksi, observasi filesystem | Linux/macOS dengan PTY |
Prasyarat dasar untuk semuanya adalah Node.js 22.19+, 24.11+, atau 26+. Analisis statis (JavaScript, .NET, Flutter) hanya membaca file tanpa menjalankan aplikasi, sedangkan runtime capture benar-benar menjalankan target dengan hak akses user Anda.
Cara Install dan Menggunakan REA
Setup cukup satu perintah. Dengan Node.js dan npm terpasang, jalankan:
npx rea-agents setup
Wizard akan meminta Anda memilih agen (Claude Code, Codex, Cursor, Gemini CLI, Grok Build, dll.), menampilkan perubahan konfigurasi yang diusulkan, lalu meminta persetujuan. Konfigurasi lama di-backup otomatis. Setelah selesai, restart agen Anda.
Bertanya lewat agen AI
Cukup gunakan bahasa natural, misalnya:
Pahami cara kerja fitur pencarian di aplikasi Notes, tunjukkan buktinya,
lalu buatkan fitur serupa untuk proyek saya.
Lewat terminal (CLI)
Untuk menganalisis aplikasi Electron atau file ASAR tanpa agen:
npx -y rea-agents@latest analyze-javascript-application /path/ke/app --json
Untuk pemakaian rutin, pasang CLI secara global:
npm install --global rea-agents
rea --help
Hal yang perlu diperhatikan
- Provider native. Analisis binary mendalam butuh Hopper, Ghidra, atau IDA. Setup bisa memasang Hopper (dengan persetujuan); Ghidra dan IDA memakai instalasi yang sudah ada.
- Linux. Ghidra, JADX, tool firmware, dan analisis JavaScript butuh
psyang kompatibel dengan procps di PATH. - Binary besar. Naikkan batas waktu startup lewat
REA_GHIDRA_STARTUP_TIMEOUT_MSatauREA_HOPPER_STARTUP_TIMEOUT_MS. - Update rutin. Proyek ini bergerak cepat; jalankan
rea updateataunpx rea-agents@latest setupsebelum melaporkan bug. - Unduh dari sumber resmi saja. Pengelola mengingatkan bahwa repo dengan nama mirip atau README salinan belum tentu resmi. Sumber resmi hanya GitHub morluto/rea, rea.tools, dan paket npm rea-agents.
Contoh Studi Kasus Reverse Engineering dengan REA
Tiga showcase resmi menunjukkan rentang kemampuan REA, dari game DOS lawas hingga aplikasi produktivitas modern:
| Studi kasus | Target | Apa yang dicapai |
|---|---|---|
| DX-Ball | Game Windows, binary x86 | Menelusuri pemanggilan suara ke helper penghitung posisi pan, lalu merekonstruksinya ke C. Hasilnya lolos 3.205 kasus uji x86 asli dan menghasilkan ulang ke-63 byte fungsi hasil kompilasi secara identik. |
| Notion | Aplikasi Electron | Melacak API clipboard dari renderer, lewat preload dan IPC, ke main process, lalu memeriksa format rich clipboard-nya. |
| TH04 | Game PC-98 (DOS 16-bit) | Memulihkan perhitungan sudut peluru (tetap dan terarah) dari instruksi 16-bit, lalu membandingkan rekonstruksi C++ dengan output compiler historisnya. |
Pola yang sama muncul di ketiganya: agen tidak berhenti di pseudocode, tetapi menulis ulang logika dan membuktikan kesamaannya lewat pengujian terhadap binary asli. Inilah yang membedakan REA dari sekadar "decompiler + chatbot".
Manfaat REA untuk Blue Team dan Audit Keamanan
Meski dipromosikan untuk memahami fitur aplikasi, REA sangat berguna untuk sisi defensif. Kemampuan intinya, yaitu membedah perangkat lunak tanpa source code dengan bukti yang bisa diverifikasi, adalah pekerjaan harian analis SOC dan incident responder.
- Triage sampel mencurigakan. Analis bisa meminta agen membaca string, import, dan alur fungsi dari binary yang ditemukan di endpoint, lalu merangkum indikator (domain, path, mekanisme persistence) untuk rule SIEM. Lakukan di VM analisis yang terisolasi.
- Analisis capture jaringan. Ringkasan pcap (endpoint, DNS, TLS SNI, distribusi protokol) dan HAR membantu investigasi beaconing atau exfiltration tanpa harus menyusun filter tshark manual.
- Supply chain dan SBOM. Ekstraksi metadata modul Go dan crate Rust (cargo-auditable) dari binary memungkinkan pengecekan versi dependensi rentan pada aplikasi pihak ketiga yang tidak menyertakan SBOM.
- Review aplikasi vendor dan mobile. Inspeksi APK (manifest, permission, endpoint) dan aplikasi Electron (IPC, preload) membantu due diligence keamanan sebelum aplikasi dipakai di lingkungan perusahaan.
- Forensik. Pemeriksaan database SQLite, crash dump, dan firmware mempercepat penggalian artefak saat investigasi insiden.
Untuk lingkungan yang diatur ketat (misalnya lembaga keuangan di bawah pengawasan OJK), ada dua catatan penting. Pertama, hasil tool dikirim ke penyedia model AI, sehingga menganalisis aplikasi internal atau data sensitif perlu dikaji terhadap kebijakan klasifikasi data dan UU PDP. Kedua, karena REA bisa menjalankan target (runtime capture), gunakan mesin khusus analisis, bukan workstation produksi.
Baca juga artikel lain seputar keamanan siber di kategori Cyber Security dan pembahasan tools lainnya di kategori Tools.
Batasan, Lisensi, dan Aspek Hukum
REA adalah alat yang kuat, dan pengelolanya cukup tegas soal batasan penggunaannya.
Batasan teknis
- Kualitas analisis native bergantung pada provider (Hopper, Ghidra, IDA); dukungan format dan OS berbeda-beda per provider, dan dukungan Ghidra di Windows masih eksperimental.
- Banyak fitur lanjutan (pcap, firmware, crash dump, EVM) hanya terverifikasi di Linux x64 dan butuh tool eksternal yang Anda sediakan sendiri.
- Proyek bergerak sangat cepat (ratusan issue dan PR terbuka), jadi fitur di branch main bisa belum ada di rilis npm terbaru.
- Agen tetap bisa salah menafsirkan pseudocode. Bukti yang disertakan REA membantu, tetapi verifikasi manusia tetap wajib.
Lisensi
- Kode REA berlisensi MIT; komponen pihak ketiga tetap memakai lisensi masing-masing.
- Tool komersial seperti IDA Pro, Hopper, dan JEB harus diperoleh secara sah. REA tidak memberi lisensi atau kunci apa pun, dan secara eksplisit melarang penggunaan versi crack, kunci curian, atau bypass pembatasan lisensi.
Hukum dan etika
- Menurut DISCLAIMER proyek, REA ditujukan untuk riset yang sah, edukasi, interoperabilitas, pelestarian perangkat lunak, serta analisis software milik sendiri atau yang Anda punya izin untuk memeriksanya.
- Banyak EULA aplikasi komersial melarang reverse engineering. Membangun ulang fitur "yang mirip" dari aplikasi pesaing juga berisiko dari sisi hak cipta dan rahasia dagang, jadi pahami logikanya lalu tulis implementasi sendiri, jangan menyalin kode hasil dekompilasi.
- Di Indonesia, akses atau manipulasi sistem elektronik tanpa hak dapat bersinggungan dengan UU ITE. Pastikan ada otorisasi tertulis untuk setiap target yang bukan milik Anda.
FAQ Seputar REA
Apakah REA gratis?
Ya. REA open-source dengan lisensi MIT dan bisa dipasang gratis lewat npm. Namun beberapa provider analisis seperti IDA Pro dan Hopper adalah software berbayar; alternatif gratisnya adalah Ghidra.
Apakah REA mengunggah aplikasi yang dianalisis?
Tidak. REA menganalisis target secara lokal. Tetapi hasil analisis dikirim ke model AI yang dipakai agen, sehingga kebijakan data penyedia model tersebut tetap berlaku.
Agen AI apa saja yang didukung REA?
Setup otomatis mendukung Claude Code, Codex, Cursor, Gemini CLI, dan Grok Build. Agen lain yang mendukung server MCP lokal bisa didaftarkan secara manual.
Apakah reverse engineering legal di Indonesia?
Tergantung konteks. Analisis software milik sendiri, untuk interoperabilitas, atau dengan izin pemilik umumnya aman. Melanggar EULA, mengakses sistem tanpa hak, atau menyalin kode milik pihak lain bisa melanggar hukum, termasuk UU ITE dan UU Hak Cipta.
Apakah REA bisa dipakai untuk analisis malware?
Bisa untuk tujuan defensif, misalnya membaca string, import, dan alur fungsi sampel untuk menyusun indikator deteksi. Pastikan analisis dilakukan di lingkungan terisolasi dan sesuai kebijakan keamanan organisasi.
Kesimpulan
REA mengubah reverse engineering dari pekerjaan manual yang menuntut keahlian tinggi menjadi percakapan dengan agen AI yang didukung bukti. Kekuatan utamanya ada pada tiga hal: cakupan target yang sangat luas dalam satu server MCP, hasil yang selalu disertai bukti dan batasan, serta analisis yang berjalan lokal.
Bagi developer, REA mempercepat riset "bagaimana aplikasi lain melakukan ini". Bagi tim Blue Team, REA bisa menjadi asisten triage malware, analisis jaringan, dan audit supply chain. Kuncinya tetap sama untuk keduanya: gunakan hanya pada target yang sah, perhatikan ke mana data hasil analisis dikirim, dan jangan menelan mentah-mentah kesimpulan agen tanpa memeriksa buktinya.

Join the conversation