請更新您的瀏覽器

您使用的瀏覽器版本較舊,已不再受支援。建議您更新瀏覽器版本,以獲得最佳使用體驗。

GitHub 爆紅的 REA 真能逆向任何軟體?從 51 件實作看 AI Agent 的能力與限制

TechOrange 科技報橘

更新於 12小時前 • 發布於 10小時前 • 廖紹伶

AI Coding Agent 不只能協助開發者寫程式,現在也開始挑戰沒有原始碼的軟體,甚至嘗試重新實作其中的功能。開源專案 REA(Reverse Engineer Anything)近期在 GitHub 爆紅,截至 10 月 14 日已累積約 22.6 萬顆 Stars。它讓 Claude Code、Codex、Cursor 等 AI Coding Agent 能操作專業逆向工程工具,分析已編譯的執行檔、封閉式應用程式及部分韌體映像。

REA 官方更展示了 AI Agent 協助重建遊戲函式的成果,但這套號稱能「逆向任何東西」的工具,真能分析並重建各種軟體嗎?它究竟能做到什麼程度,又有哪些限制?

從程式分析到功能重建,REA 如何讓 AI Agent 參與逆向工程?

逆向工程是指在沒有原始碼的情況下,透過分析程式執行檔、指令或行為,理解軟體的內部運作方式。過去,工程師可以使用 Ghidra、IDA 等逆向分析工具進行研究,但仍須自行追蹤函式、解讀程式邏輯,REA 則是一套讓 AI Agent 操作既有逆向工程工具的開源專案。

根據 REA 官方 GitHub,它並非自行開發新的反編譯引擎,而是透過模型上下文協定(MCP),將 Ghidra、IDA 等工具連接至 AI Coding Agent,讓 Agent 能依據使用者提出的問題,自行呼叫工具、取得分析結果,再決定下一步要追蹤哪些程式線索。

REA 官方流程圖:使用者向 AI Agent 提出問題後,Agent 透過 REA 呼叫本機分析工具,取得程式碼、參照關係與待確認資訊,再利用這些證據解釋程式行為、重新實作功能或進行測試,必要時還可繼續追查。圖片來源:REA

REA 也會依程式類型採取不同分析方式。例如 JavaScript、Electron 應用程式可以直接分析模組及程式結構;編譯成機器碼的原生程式,則需要透過 Ghidra、IDA 等工具取得反編譯結果及函式呼叫關係。這讓 Agent 不只協助撰寫程式,也能參與理解既有軟體、研究特定功能及重新實作相似功能的工作。

REA 的另一項特色,是讓分析結果有據可查。《Cyber Security News》指出,其價值在於將使用者提出的問題,連結到可檢視的程式碼與可驗證的分析結果。技術作者 Satyajit Ghana 也在一篇原始碼分析文章中指出,REA 透過證據識別碼、來源紀錄等機制,協助使用者追溯 Agent 的分析依據,而非只接受模型給出的結論。

實際流程可從 REA 官方的 DX-Ball 案例理解。該研究希望重建一款打磚塊遊戲的聲音左右定位函式,但最初取得的反編譯結果並不完整。Agent 於是進一步檢查組合語言指令、追蹤函式呼叫及運算常數,逐步找出聲音定位的計算邏輯。最終重新撰寫的 C 函式通過 3,205 組與原始函式比較的測試,重新產生的 63 個機器碼位元組也與原始函式吻合。

既然 REA 官方案例展示了 Agent 如何參與逆向工程,但這套工具在其他開發者手中的實際表現如何?

51 件公開實作紀錄揭露:REA 成功多集中於小型程式與特定功能

技術作者 Quang Lee 在 10/12 發表的分析文章中,從 GitHub、X、YouTube、Hacker News 等平台蒐集 51 件可公開查閱的 REA 實作紀錄。這並非 REA 的全部使用案例,而是作者蒐集到的公開紀錄。其中 29 件達成各自設定的目標、16 件部分完成、6 件失敗。

不過,29 件成功案例中有 9 件來自 REA 專案貢獻者。若排除這些案例,另外 42 件獨立使用者紀錄中,有 20 件達成目標。進一步分析這 20 件成功紀錄,9 件屬於小型程式或簡單任務,6 件是中型應用程式的單一功能,另外 5 件未公開具體應用程式名稱。

換言之,在能辨識任務類型的獨立成功案例中,成果集中於小型程式或中型應用程式的特定功能,尚不足以證明 REA 能完整重建大型商業軟體。由於這些公開案例的難度與驗證方式不一致,也並非受控測試,因此不能直接視為 REA 的整體成功率。

較複雜的應用程式則面臨更多困難。Quang Lee 蒐集的紀錄中,有開發者嘗試分析語音輸入工具 Wispr Flow,但 REA 呼叫約一小時後仍逾時,最後只產生一份 64 行的 Python 腳本,未涵蓋原應用程式的雲端功能。

除了能否成功分析,輸出資料量也是實務考量。技術網站 SoloSoft 在 10 月 8 日實測 REA 5.0.0,發現它能追蹤小型 Electron 應用程式的跨程序通訊,但分析 8 個檔案時,預設結果回報約 21 萬個 tokens;若使用內建參數僅輸出摘要,則可降至 193 個。這並非模型實際計費用量,卻顯示 Agent 工作流程需要妥善控制分析結果的資料量。

另一項挑戰是結果驗證。Quang Lee 觀察相關軟體重建案例發現,成果較完整的專案往往具備自動化比對方法,能將原版與重建版本的行為逐項比較。然而,複雜應用程式涉及更多執行狀態、設定與外部服務,即使重建版本能完成部分功能,仍難以確認是否與原始軟體的所有行為一致。

針對實際使用 REA 的開發者,《Cyber Security News》也提醒,逆向工程仍須確認是否具有適當授權,並由人工審查 AI 的分析結果。此外,REA 雖在本機執行分析,但資料若傳送給使用雲端模型的 AI Agent,仍可能受到模型服務商的資料處理政策約束,因此本機分析不代表所有資料都留在本機。

【推薦閱讀】

◆ Jev 爆紅後 Strands Decider、Clef 接連登場,決策模型正走出哪些不同路線?

◆ 為何不直接用 Mac mini?Ghost 為個人 Agent 造專用電腦,19 歲創辦人獲 a16z 領投

◆ Meta 最強 AI 模型 Muse Wonder 登場,為何自認更適合個人與專業 Agent?

*本文開放合作夥伴轉載,資料來源:REA 1、《Cyber Security News》、REA 2、Quang Lee、Vito Ruocco、Satyajit、SoloSoft,首圖來源:REA

加入『 TechOrange 官方 LINE 好友』 掌握最新科技資訊!

查看原始文章

更多理財相關文章

01

首度證實評估德州設廠!與Terafab合作洽談中 魏哲家強調:晶圓廠必須由台積電營運

鏡報
02

破紀錄! 外資賣超台股提款逾3000億元 大盤暴跌1655點

太報
03

全國議員持股「檔數王」是他 734檔股票「統統1股」原因曝光

自由電子報
04

台股收盤/台股寫史上第6大跌點!崩1655點櫃買跌5.53% 這些族群倒地

三立新聞網
05

台積電Q3財報超狂!EPS衝29.43元創新高 2奈米營收占比衝8%

鏡報
06

砸48億入股!3M為何看上玉晶光?持股鎖3年、背後藏CPO大布局

數位時代
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...