Mariana Trench, analizorul de cod static al sursei deschise Facebook

Facebook a fost dezvăluit acum câteva zile a eliberat analizorul static cu sursă deschisă, Mariana Trench, care are scopul de a identifica vulnerabilități în aplicațiile Android și programele Java.

La este oferită capacitatea de a analiza proiecte fără coduri sursă, pentru care este disponibil doar bytecode pentru mașina virtuală Dalvik. Un alt avantaj este viteza foarte mare de execuție (analiza a câtorva milioane de linii de cod durează aproximativ 10 secunde), care vă permite să utilizați Mariana Trench pentru a verifica toate modificările propuse pe măsură ce sunt introduse.

Analizorul a fost dezvoltat ca parte a unui proiect de automatizare a procesului de revizuire a codului sursa de aplicații mobile de pe Facebook, Instagram și Whatsapp.

Împărtășim detalii despre Mariana Trench (MT), un instrument pe care îl folosim pentru a detecta și a preveni erorile de securitate și confidențialitate în aplicațiile Android și Java. Ca parte a efortului nostru de a ajuta la extinderea securității prin automatizarea clădirilor, am deschis recent MT pentru a sprijini inginerii de securitate de la Facebook și din întreaga industrie.

Această postare este a treia din seria noastră de scufundări profunde în instrumentele de analiză statică și dinamică pe care ne bazăm. MT este cel mai recent sistem, după Zoncolan și Pysa, construit pentru codul Hack și, respectiv, Python.

În prima jumătate a anului 2021, jumătate din toate vulnerabilitățile din aplicațiile mobile Facebook au fost identificate folosind instrumente de scanare automată. Codul Marianei Trench este strâns împletit cu alte proiecte Facebook, de exemplu, operația de optimizare a bytecode Redex este folosită pentru a analiza bytecode și biblioteca SPARTA este folosită pentru interpretarea vizuală și studiul rezultatelor analizei statice.

Potențialele vulnerabilități și probleme de securitate sunt identificate prin analiza fluxurilor de date în timpul executării cererii, care permite identificarea situaţiilor în care datele externe brute sunt procesate în constructe periculoase, cum ar fi interogări SQL, operațiuni cu fișiere și apeluri care duc la lansarea de programe externe.

MT este conceput pentru a putea scana baze de coduri mobile mari și pentru a semnala probleme potențiale în cererile de extragere înainte ca acestea să intre în producție. A fost creat ca rezultat al colaborării strânse dintre software-ul Facebook și inginerii de securitate, care îl instruiesc pe MT să se uite la cod și să analizeze modul în care datele circulă prin el. Analizarea fluxurilor de date este utilă, deoarece multe probleme de securitate și confidențialitate pot fi modelate ca date care circulă unde nu ar trebui.

Sarcina analizorului se reduce la determinarea surselor de date și a apelurilor periculoase, unde nu trebuie utilizate datele originale: parserul monitorizează trecerea datelor de-a lungul lanțului de apeluri de funcții și conectează datele inițiale la locuri potențial periculoase din cod.

Deoarece în MT, un flux de date poate fi descris prin:

  • Sursa: un punct de origine. Acesta poate fi un șir controlat de utilizator introdus în aplicație prin „Intent.getData”.
  • Chiuveta: un destin. Pe Android, acesta poate fi un apel către „Log.w” sau „Runtime.exec”. De exemplu, datele de la un apel către Intent.getData sunt considerate o sursă de monitorizat, iar apelurile către Log.wy Runtime.exec sunt considerate utilizări periculoase.

O bază de cod mare poate conține multe tipuri diferite de surse și chiuvete corespunzătoare. Îi putem spune lui MT să ne arate fluxuri specifice prin definirea regulilor.

O regulă ar putea specifica, de exemplu, că dorim să găsim redirecționări de intenție (probleme care permit atacatorilor să intercepteze date sensibile) prin definirea unei reguli care să ne arate toate urmele de la sursele „controlate de utilizator” la un receptor „controlat de utilizator”. redirecţionarea intenţiilor.

În cele din urmă dacă sunteți interesat să aflați mai multe despre asta, puteți verifica detalii în următorul link.


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.