← Listeye dön

Tüm yazılımları tersine çevir: REA GitHub 58,000 Star, angent bir soruya ters döner.

itadol5j

GitHub son zamanlarda başka bir projeye ateş açtı: REA. Kullanıcı "42,000 Yıldız" olduğunu söyledi, ancak bugün olduğu gibi (10 Ekim 2026) sayı yükseldi. 58,000 Yıldız, 11,000 Fork- Söylediklerinden daha fazlası. Ve aynı şeyi söyleyebilirsiniz: herhangi bir yazılımı tersine çevirmek için kullanabilirsiniz, uygulamayı orijinal ikiliye kazın.

Ters mühendislik ve angent işbirliği kavramı Şekil

I. REA: Sorun tam olarak nedir?

Geleneksel geri dönüş “Man, derlemeyi okumak için birkaç gün boyunca bir karşı derleyicide oturuyor.” REA'nın fikri, bir anti-circulator (enerji, Ghidra veya IDA ileori kod) koymak ve sonra JavaScript için statik bir analizciye bağlanmaktır. NET. Angent, aracı sorgulamaktan, sonuçları toplamak ve kanıtları geri almaktan sorumludur.

Onun OKME exemplifier tüm satış noktası: "Notlar uygulamadaki aramanın nasıl çalıştığını, bana kanıtları göster ve projem için benzer bir özellik yapın." Sahip olduğunuz şey bir açıklama, bir kod yeri ve bilmediğiniz şeyin bir listesi.

Anahtar nokta tüm yerel işlemleri analiz etmektir ve sonuçlar kanıt ve kısıtlamalara eşlik edecek - modelin sizin için bir açıklama yapmasına izin vermeyecektir.

ii. Hangi hedefleri yemek için

REA'nın oldukça geniş bir destek üssü var, bu aslında ortak ters nesneler içeriyor:

  • Yerli: sahte kodlar, derlemeler, dizeler, semboller, aramalar ve referanslar (Hopper/Ghidra/IDA gerekli)
  • Offline ELF Layoutoutparagraflar, bölümler, orijinal sembolü/reposition, statik mitigation adayı
  • JavaScript / Elektron: modül, ithalat, kaynak Map, rota, birincil motor olmadan birincil (statik analiz) ile ilgili.
  • Web Sitesi Web Sitesi Web Sitesi Web Sitesi Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web Site Web SitesiSayfa yapısı, senaryolar, web gözlem ve ekran görüntüsü
  • .NET Program Koleksiyonu: metadata, CIL komutları, inşaata karşı orijinal bağımlılığın ilanı (kone statik)
  • Android PlusListe bildirimi, sınıf, ters çeviri yöntemi ve referans (başsız JADX + Tamam JDK)
  • KatıBölümler, orijinal analizle intersect (needs Binwalk / Unblob)
  • EVM bytes, login Linux kazaları, HAR kaplar, süreç davranışıBekle.

Çevre gereksinimleri: Node.js 22.x (≥22.19), 24.x (≥24.11) veya 26+, artı npm. Desteklenen ajanlar Claude Code, Codex, Cursor, Gemini CLI, Grok Build, vs. - yerel MCP Serverlarını destekleyen herhangi bir ajan temel olarak işlevseldir. Bir sipariş yükleyin:npx rea-agents setupMCP sunucusuna kayıt olacak ve eşlik eden iş akış açıklamasını yazacaktır ve sonra yeniden başlatacaktır.

MCP

Üç kamu davası: kanıtlayan nedir?

Yıldız numaraları ısıyı ve vaka sonuçlarını temsil eder. REA yetkilisi üç gösteriyi “What can” ve “What can not”.

Vaka 1: DX-Ball için Ses alanı formülü

Soru: 1990'larda DX-Ball, tuğlaların yatay konumunu bir sol / doğru ses alanına nasıl dönüştürdü? Karşı derleyici içeridedir 0x406400 Sadece bir şanssız giriş görüldü __ftol() Call; komutasındaki referanslar eksik [EBP+8]Bilmiyorum. Takip et caller 0x411f40 koordinat formülü bulundu 20 + 30 × tile_x1.5625, 500.0 ve ilk akustik ölçeklendirme 1.0'dan üç sabiti okuyun.

En sonunda restore edilen kural: çiftliği koordine etmek, 1.5625, eksi 500.0, depo akustik alan tarafından çoğaltılır ve sonra kesilir. Sol kenarla 1 -500, merkez 0, doğru kenar 500. Gerçekten güven inşa eden şey, kimlik doğrulamanın anlamıdır: yazar, orijinal x86 işlevi ve yeni C versiyonu aracılığıyla aynı anda 3205 örnek alır ( 0-640 tam pozisyon, ölçeklendirme 0.1/20-1), ve sabit VC 4.0 aracı zinciri altında astes orijinal 63 bytes ile eşleştirilir. Tüm proje raporu 55 C fonksiyonu korudu, 45380 karşılaştırmalar.

Bunu kanıtlayamadı.Oyunun geri sonuna kadar ses alanını bağlantı kurmak için hareket hala tamamlanmaktır ve oyunlanabilir ürün eksiktir; çalışma, DX-Ball 1.07'de sabit bir Hash'e bağlıdır; “konuşturulmuş ve kontrol edilen sabitler tamamen otomatik değildir.

Vaka 2: Video Kuruluna Nasıl Kopyalanır?

Modern bir Electron uygulamasına 90s ikilisinden atlayın. Soru: Notion Desktop 7.6.1 Sistem klibine metin ve HTML nasıl yazılır? Dört segmentte yol: önceden yükleme senaryosu sayfaya maruz kaldı clipboard.write• Bazı kanalda arama ipcRenderer.invoke; ipcMain.handle Kabul edin; Gönderer tarafından elektron clipboard.write Crash. Aynı Kanal adı her iki tarafta. notion:clipboard:writeBilmiyorum.

İki keşif hatırlamaya değer: ana süreç eller hangi sayfanın isteği gönderdiğini doğrulayacaktır ve sadece Notion'un yazması için kendi web setleri vardır - Bu, Electron'un uygulanması gereken doğru pozisyondur; ikincisi, kopyada saklı bir veri parçası, HTML'de bir yorum ile mimetypes özelleştirmeye işaret etmek için Notion'da bir yorum var. text/_notion-blocks-v3-production Yerel olarak saklanan blok verileri. Girişi ID tarafından geçmişken ve giriş sona erdiğinde orijinal metin +HTML döndürür.

Bunu kanıtlayamadı.: REA 4.1.0 sadece etiket önceden yükü analiz eder, maruz API'yi bulun ve invoke Call, sarmaper, yazarın manuel olarak okuduğunu ve Kanalı alıcıya bağladığını fark eder; klibin sonucu, 13 Temmuz 2026 tarihinden itibaren, canlı masaüstü seanslarından değil.

Vaka 3: PC-98 oyunları için Playscreen

16 bit DOS koduna geri dönün. GERA programı, DOS analizinin 16 bitini destekler. Yazar, sabit açıları geri yükler ve bir bomba perde yüzüğünün arkasındaki açıları geri döndürür ve bunları C++ ile yeniden yapılandırır ve tarihi derleyicinin çıktısını karşılaştırır. Şekiller DX-Ball olarak aynıdır: Hesaplamanın küçük bir kısmını geri yükleyin, yeniden inşa edin ve sonra bu açıklamaya inanmak yerine orijinal ürünle onu otantikleştirin.

Dört. Üç vakayı birlikte koyun.

  • Çok dar.: akustik bir formül, bir klip yol, bir mermi perde yüzüğü, ve hiçbir durumda “tüm uygulamayı inşa ediyor” diyor.
  • Kanıtlar eklenir.Adres, sabit, 3205 test, Kanal adı, depolanan prob, derleyici karşılaştırma.
  • Tüm manuel adımlara kabul edildi.Manually repositioned, manuel olarak sarper, derleyici eşleştirme okuyun.
  • Hedefler sabit versiyonları vardır.DX-Ball 1.07 Hash, Notion 7.6.1, orijinal PC-98 ikili.

Bu bugün dürüst bir sınır:Ajan, bireysel davranışları takip etmek için hızlı, lastiksiz bir asistan ve tekrar çalıştırabileceğiniz bir test olduğunu kanıtlıyor.

Vaka doğrulama ve kanıt zinciri

V. Geliştiriciler için ne anlama geliyor

Gerçek bir uygulama yapıyorsanız, REA yeni bir model temsil eder: Bir programın nasıl çalıştığını doğrudan modellemek yerine, modeli kanıt üzerinde konuşmak için profesyonel bir ters araç üzerine koyarsınız. Değeri "tüm yazılımları tek bir anahtar tersine çevirmiyor" değil, ancak "okuma derlemelerinden" ters eşiği "uygunlama + doğrulamalara" hareket edecek.

Ama iki nokta ol. İlk olarak, yerel analiz veri akışı ile aynı değildir - angent, araçları model tedarikçilere ihraç edecek ve veri politikası hala geçerlidir. İkincisi, kanıtların kalitesi sertifikasyon zincirine bağlıydı ve davadaki güvenilirlik 3205 karşılaştırmadan elde edildi ve modelin sözlü yorumundan ziyade eşleşen olarak alındı.

Yerel analiz, kanıtlar ve kimlik doğrulama döngüleri

Nasıl yapılır?

  • Çevre: Node.js 22.x (≥22.19) / 24.x (≥24.11) / 26+, artı npm
  • İlk anahtar yükleme:npx rea-agents setup, anentinizi seçin ve değişiklikleri onaylayın ve bir anentin yeniden başlatın
  • Global kurulum:npm install --global rea-agentsDaha sonra kullanılabilir rea --help
  • Statik JS/Electron analizi:npx -y rea-agents@latest analyze-javascript-application /abs/path --json
  • Temel analiz: sağlayıcının önceden yapılandırılması (Hopper/Ghidra/IDA)
  • Güncelleme:rea updateYa da tekrar koş. npx rea-agents@latest setup

Ters, "uygun derleme"den "uygun + geçerlilik" için hareket ediyor - araç eşini düşürdü, ancak kanıtlar hala test edildi.