AI agenti za kodiranje napravili su evolucijski skok – od alata koji primarno generiraju kod na temelju tekstualnih uputa prema sustavima sposobnima za dubinsku analizu, razumijevanje strukture i otkrivanje tajni unutar već postojećeg softvera. Novi alat otvorenog koda pod nazivom REA (skraćeno od Reverse Engineer Anything) povezuje napredne AI asistente poput Claude Codea i Cursora sa specijaliziranim alatima za obrnuti inženjering poput Ghidre, IDA Pro i Hoppera. Ova integracija omogućuje umjetnoj inteligenciji samostalno praćenje rada programa i dekonstrukciju njegove unutarnje logike, čak i kada izvorni kod nije dostupan.
Tradicionalno je obrnuti inženjering zahtijevao visoko specijalizirane stručnjake za sigurnost koji su ručno analizirali izvršne datoteke, strojni kod i asemblerske upute. REA funkcionira kao inteligentni most: AI agent putem ovog alata šalje upite sustavima za analizu, zaprima sirove podatke, tumači ih i na temelju prikupljenih dokaza usmjerava daljnju istragu. Iz binarnih izvršnih datoteka alat može rekonstruirati pseudokod, asemblerske instrukcije, nizove znakova (strings), simbole, pozive funkcija i njihove međusobne reference, pomažući istraživačima da uočenu funkcionalnost izravno povežu s odgovarajućim pozadinskim kodom.
Područje primjene ovog alata iznimno je široko te nije ograničeno samo na lokalno izvršne programe. REA podržava analizu JavaScripta, aplikacija građenih na Electron okviru, .NET okruženja, Android APK paketa, web stranica te samog firmwarea uređaja. Kod Electron aplikacija, primjerice, alat može precizno mapirati module, putanje izvornog koda i tokove komunikacije između različitih procesa. Važno je naglasiti da umjetna inteligencija ne zamjenjuje alate poput Ghidre ili IDA Pro; oni i dalje obavljaju fizikalno rasčlanjivanje, dok AI koordinira tijek analize, interpretira rezultate i donosi zaključke.
Učinkovitost ovog pristupa potkrepljuju i konkretni testovi koje je objavio razvojni tim. U eksperimentu s klasičnom igrom DX-Ball, AI je uspio potpuno oporaviti x86 kod odgovoran za izračun lokacije zvuka. Rekreirana funkcija prošla je čak 3205 testova usporedbe s originalom i točno reproducirala svih 63 bajta strojnog koda kompajlirane funkcije. U drugom je testu REA uspješno pratio način na koji aplikacija Notion obrađuje podatke iz međuspremnika, mapirajući putanju od elemenata korisničkog sučelja, preko međuprostornog sloja (middleware), pa sve do glavnih procesa aplikacije.

Foto: REA
Dolazak ovako moćnih automatiziranih alata sa sobom donosi i značajne sigurnosne rizike. Iako je mogućnost analize softvera bez izvornog koda neprocjenjiva za sigurnosne istraživače i analize zlonamjernog softvera, ona zahtijeva oprez i strogo upravljanje pristupnim pravima. Budući da se prikupljeni podaci šalju AI agentima radi obrade, lokalno pokretanje alata ne jamči potpunu privatnost jer su podaci podložni uvjetima pružatelja AI modela. Nadalje, dok se statička analiza koda odvija sigurno bez pokretanja aplikacije, analiza u stvarnom vremenu (dinamička analiza) komunicira s programom koristeći korisničke ovlasti, što može stvoriti ozbiljne ranjivosti ako se analizira maliciozni softver.
Unatoč zvučnom nazivu, REA još uvijek posjeduje svoja ograničenja te ovisi o platformi, tipu ciljanog softvera i dostupnim analitičkim alatima. Njegova najveća vrijednost ne leži u potpunom potiskivanju ljudskog faktora, već u sposobnosti da AI pitanja poveže s provjerljivim, egzaktno testiranim podacima. Pojava ovog projekta jasno pokazuje da umjetna inteligencija ulazi u novu eru – eru u kojoj više ne stvara samo novi kod, već sustavno uči iz postojećih programa i razotkriva njihove skrivene mehanizme.

