Rješavanje problema sigurnosti memorije u C jeziku: AI koristi za konverziju C koda u sigurniji Rust kod
Kako bi se riješio ključni problem sigurnosti memorije u programskom jeziku C, istraživači koriste umjetnu inteligenciju (AI) za pretvaranje softvera napisanog u C jeziku u Rust kod, poznat po svojoj sigurnosti memorije. Rust, koji je razvijen od strane programera Graydona Hoarea dok je radio u Mozilli, postao je popularan izbor za ovu složenu konverziju, u sklopu projekta koji vodi američka agencija za napredna obrambena istraživanja, DARPA.
DARPA je pokrenula projekt TRACTOR (Converting All C Code to Rust), s ciljem korištenja AI-a za automatizaciju procesa pretvaranja C koda u Rust kod. Glavni razlog ove inicijative je dugogodišnji problem sigurnosti memorije u jezicima C i C++. Iako su razvijeni različiti alati za pronalaženje grešaka u C kodu, oni nisu dovoljni za rješavanje ključnih problema koji se pojavljuju pri radu s memorijom u ovim jezicima.
C jezik, razvijen 1970-ih, omogućuje programerima izravno upravljanje memorijom, što može dovesti do pogrešaka koje uzrokuju sigurnosne ranjivosti. Ove pogreške omogućuju hakerima iskorištavanje ranjivosti i ugrožavanje mreža. Za razliku od C-a, Rust je dizajniran kao jezik niske razine koji ugrađuje sigurnosne prakse za upravljanje memorijom, osiguravajući da sve reference budu valjane i sprječavajući mnoge uobičajene pogreške koje se događaju u C kodu.
Rust je postao vrlo popularan zbog svoje sigurnosti memorije i performansi. Velike tehnološke tvrtke, poput Microsofta, već prepisuju ključne dijelove svojih aplikacija, uključujući Windows i Microsoft 365, u Rustu. Također, Rust je integriran u jezgru Linuxa i Chromium mehanizam za raspored, što ga čini ključnim alatom za softverske projekte koji koriste milijuni korisnika diljem svijeta.
Projekt TRACTOR također dolazi u vrijeme kada se razvijaju napredne tehnike strojnog učenja, a DARPA je zainteresirana za korištenje velikih jezičnih modela koje koriste AI chatbotovi i slični servisi. Prema riječima Dana Wallacha, voditelja projekta TRACTOR, AI modeli već mogu pretvoriti dijelove C koda u Rust kod. Iako trenutni rezultati još uvijek nisu savršeni, cilj TRACTOR-a je značajno poboljšati preciznost tih konverzija.
Iako automatska konverzija koda još uvijek predstavlja izazov, DARPA se nada da će projekt TRACTOR donijeti značajna rješenja za probleme sigurnosti memorije te da će imati veliki utjecaj na tržište kibernetičke sigurnosti. Peter Morales, generalni direktor tvrtke Code Metal, vjeruje da TRACTOR ima potencijal, ali ističe da ne postoji jednostavno rješenje za ovaj problem, te da će AI tehnologija trebati značajna poboljšanja kako bi se u potpunosti iskoristila za automatsku konverziju koda.
