Prije nekoliko dana Google je predstavio novi projekat open source, koji ima naziv «Vanir» koji se pozicionira kao aStatički analizator koda dizajniran za identifikaciju ranjivosti u softverskim projektima, posebno onima koji još nisu ispravljeni putem zakrpa.
Kako Vanir radi zasniva se na bazi podataka potpisa koji sadrži informacije o poznatim ranjivostima i odgovarajućim zakrpama, koji omogućava poređenje izvornog koda sa primenjenim ispravkama radi otkrivanja mogućih proboja bezbednosti.
Pravljenjem Vanira otvorenog koda, naš cilj je omogućiti široj sigurnosnoj zajednici da doprinese i ima koristi od ovog alata, omogućavajući šire usvajanje i konačno poboljšanje sigurnosti u različitim ekosistemima.
Među glavne prednosti Vanira izdvajaju se:
- Identificiranje ranjivosti u forksu i kodu treće strane
Vanir olakšava otkrivanje nedostajućih zakrpa u račvama, modifikacijama ili posuđenjima koda izvan glavnog projekta. U Android ekosistemu, ovo vam omogućava da provjerite da li su originalni proizvođači uređaja ispravno primijenili potrebne zakrpe na svoje prilagođene verzije platforme. - Analiza bez zavisnosti od metapodataka
Za razliku od drugih alata, Vanir ne zahtijeva dodatne informacije kao što su brojevi verzija, historija urezivanja ili SBOM (Software Bill of Materials) liste. Njihov pristup se zasniva isključivo na statičkoj analizi postojećeg izvornog koda. - Automatsko generisanje potpisa
Vanir automatizuje kreiranje potpisa iz javnih informacija o ranjivosti (CVE) i zakrpa koje objavljuju održavaoci. Ovo pojednostavljuje ažuriranje i održavanje baze podataka potpisa. - Povećane performanse i efikasnost
Oslanjajući se na statičku analizu izvornog koda, Vanir nudi znatno bolje performanse u odnosu na dinamičku analizu ili alate za verifikaciju binarnog sklopa. - Samodovoljnost i lokalna implementacija
Alat omogućava organizacijama da implementiraju i pokreću infrastrukturu na svojim vlastitim sistemima, eliminišući potrebu da se obrate vanjskim uslugama ili se oslanjaju na treće strane. - Ažurirana i pouzdana baza podataka
Vanir koristi bazu podataka potpisa koju podržava Google Android sigurnosni tim, osiguravajući pouzdano i ažurno pokrivanje kritičnih ranjivosti. - Integracija sa CI/CD
Podrška za integraciju sa kontinuiranom integracijom i kontinuiranom isporukom (CI/CD) sistemima omogućava automatizaciju otkrivanja ranjivosti u razvojnom ciklusu, olakšavajući implementaciju sigurnosnih procesa u DevSecOps-u. - Prilagodljivost i fleksibilnost
Osim otkrivanja ranjivosti, Vanir se može prilagoditi za druge zadatke, kao što je identifikacija kloniranja koda, analiza dupliciranja ili korištenje koda sa specifičnim licencama u drugim projektima.
Iako je Vanir prvobitno bio dizajniran za Android, može se lako prilagoditi drugim ekosistemima uz relativno male modifikacije, što ga čini svestranim alatom za poboljšanje ukupne sigurnosti softvera.
Sastav Vanira
Vanir sastoji se od dvije komponente glavni:
- generator potpisa
- detektor izgubljene zakrpe.
El generator kreira potpise na osnovu opisa ranjivosti (u OSV formatu) i veze do odgovarajućih zakrpa, obrada koda se obavezuje na određena spremišta kao što su googlesource.com i git.codelinaro.org, uz mogućnost dodavanja podrške za druge servise koji koriste pull handlere.
Kako djeluje Vanir?
Detektor Vanira analizira izvorni kod spremišta i provjerava ispravke ranjivosti su prisutni. Ova funkcija se izvodi korištenjem naprednih algoritama Uz prečišćavanje potpisa i višestruku analizu uzoraka, Vanir proizvodi detaljan izvještaj koji ističe nezakrpljene ranjivosti, pružajući veze do pozicija koda i reference na CVE identifikatore i primijenjene zakrpe.
Kao primjer za razumijevanje kapaciteta Vanira u smislu performansi, ovo možete skenirati Android izvorni kod, Sa bazom podataka koja pokriva više od 2000 ranjivosti, za 10 do 20 minuta na modernom računaru. Stopa lažnih pozitivnih rezultata, na osnovu dvije godine korištenja u Google-u, ostaje niska, oko 2.72%.
konačno ako jesi zainteresovani da saznaju više o tome, detalje možete provjeriti u sljedeći link.