Mariana Trench, Facebooki avatud lähtekoodiga staatilise koodi analüsaator

Facebook avalikustas paar päeva tagasi vabastas ta avatud lähtekoodiga staatiline analüsaator, Mariana Trench, mis on mõeldud Androidi rakenduste ja Java -programmide turvaaukude tuvastamiseks.

Kell pakutakse võimalust analüüsida projekte ilma lähtekoodideta, mille jaoks on saadaval ainult Dalviki virtuaalmasina baitkood. Teine eelis on täitmise väga suur kiirus (mitme miljoni koodirida analüüs võtab umbes 10 sekundit), mis võimaldab teil Mariana Trenchi abil kontrollida kõiki kavandatud muudatusi nende juurutamisel.

Analüsaator töötati välja projekti osana, et automatiseerida koodide ülevaatamise protsess mobiilirakenduste allikas Facebookist, Instagramist ja Whatsappist.

Jagame üksikasju Mariana Trench (MT) - tööriista kohta, mida kasutame Androidi ja Java rakenduste turva- ja privaatsusvigade avastamiseks ja vältimiseks. Osana meie jõupingutustest aidata turvalisust hooneautomaatika kaudu laiendada, avasime hiljuti MT, et toetada turbeinsenere Facebookis ja kogu tööstuses.

See postitus on kolmas meie sügavate sukeldumiste seeriasse staatilistesse ja dünaamilistesse analüüsivahenditesse, mida me usaldame. MT on Zoncolani ja Pysa järel uusim süsteem, mis on ehitatud vastavalt Hacki ja Pythoni koodi jaoks.

2021. aasta esimesel poolel tuvastati automatiseeritud analüüsivahendite abil pooled Facebooki mobiilirakenduste haavatavustest. Mariana Trenchi kood on tihedalt läbi põimunud teiste Facebooki projektidega, näiteks kasutatakse baidkoodi analüüsimiseks Redex bytecode optimeerija toimingut ning visuaalseks tõlgendamiseks ja tulemuste uurimiseks SPARTA raamatukogu.staatiline analüüs.

Võimalikud haavatavused ja turvaprobleemid tuvastatakse andmevoogude analüüsimisel rakenduse täitmise ajal, mis võimaldab tuvastada olukordi kus töötlemata väliseid andmeid töödeldakse ohtlikes konstruktsioonides, näiteks SQL -päringud, failitoimingud ja kõned, mis viivad väliste programmide käivitamiseni.

MT on loodud selleks, et oleks võimalik skaneerida suuri mobiilseadmete baase ja tuvastada tõmbepäringute võimalikud probleemid enne nende tootmist. See loodi tiheda koostöö tulemusena Facebooki turva- ja tarkvarainseneride vahel, kes koolitavad MT -d koodi vaatama ja analüüsima, kuidas andmed sellest läbi liiguvad. Andmevoogude analüüsimine on kasulik, sest paljusid turvalisuse ja privaatsusega seotud probleeme saab modelleerida nii, et see ei voolaks.

Analüsaatori töö piirdub andmeallikate ja ohtlike kõnede määramisega, kus algandmeid kasutada ei tohiks: parser jälgib andmete liikumist läbi funktsioonikutsete ahela ja ühendab lähteandmed koodi potentsiaalselt ohtlike kohtadega.

Kuna MT -s saab andmevoogu kirjeldada järgmiselt:

  • Allikas: lähtepunkt. See võib olla string, mida kontrollib kasutaja, kes siseneb rakendusse intent.getData kaudu.
  • Valamu: sihtkoht. Androidis võib see olla kõne logile.w või Runtime.exec. Näiteks loetakse Intent.getData kõnest pärinevaid andmeid jälgitavaks allikaks ning kõnesid Log.w ja Runtime.exec peetakse ohtlikeks kasutusviisideks.

Suur koodibaas võib sisaldada mitut tüüpi allikaid ja vastavaid vastuvõtjaid. Me võime käskida MT -l näidata meile konkreetseid voogusid, määratledes reeglid.

Reegel võib näiteks täpsustada, et soovime leida kavatsetud ümbersuunamisi (probleeme, mis võimaldavad ründajatel delikaatseid andmeid kinni pidada), määratledes reegli, mis näitab meile kõiki jälgi „kasutaja juhitavatest” allikatest kuni kavatsuste ümbersuunamiste valamu.

Lõpuks kui olete huvitatud sellest rohkem teada saama, saate kontrollida üksikasjad järgmisel lingil.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.