Facebook statický analyzátor Mariana Trench s otvoreným zdrojom

Facebook predstavil nový open source statický analyzátor, Mariana Trench, zameraný na identifikáciu zraniteľností v aplikáciách pre Android a programoch Java. Je možné analyzovať projekty bez zdrojových kódov, pre ktoré je k dispozícii iba bytecode pre virtuálny stroj Dalvik. Ďalšou výhodou je veľmi vysoká rýchlosť vykonávania (analýza niekoľkých miliónov riadkov kódu trvá približne 10 sekúnd), čo vám umožňuje použiť Mariana Trench na kontrolu všetkých navrhovaných zmien hneď, ako prídu. Kód projektu je napísaný v C++ a je distribuovaný pod licenciou MIT.

Analyzátor bol vyvinutý ako súčasť projektu na automatizáciu procesu kontroly zdrojových textov mobilných aplikácií pre Facebook, Instagram a Whatsapp. V prvej polovici roku 2021 bola polovica všetkých zraniteľností v mobilných aplikáciách Facebooku identifikovaná pomocou nástrojov automatizovanej analýzy. Kód Mariana Trench je úzko prepojený s inými projektmi Facebooku, napríklad na analýzu bajtového kódu bol použitý optimalizátor bajtového kódu Redex a na vizuálnu interpretáciu a štúdium výsledkov statickej analýzy sa použila knižnica SPARTA.

Potenciálne zraniteľnosti a problémy so súkromím sa identifikujú analýzou tokov údajov počas vykonávania aplikácie, aby sa identifikovali situácie, keď sa nespracované externé údaje spracúvajú v nebezpečných konštrukciách, ako sú napríklad dotazy SQL, operácie so súbormi a volania, ktoré spúšťajú externé programy.

Práca analyzátora spočíva v identifikácii zdrojov dát a nebezpečných volaní, v ktorých by sa zdrojové dáta nemali používať - ​​analyzátor sleduje prechod dát cez reťaz volaní funkcií a spája zdrojové dáta s potenciálne nebezpečnými miestami v kóde . Napríklad údaje prijaté prostredníctvom volania Intent.getData sa považujú za vyžadujúce sledovanie zdroja a volania Log.w a Runtime.exec sa považujú za nebezpečné použitie.

Facebook statický analyzátor Mariana Trench s otvoreným zdrojom


Zdroj: opennet.ru

Pridať komentár