Mariana Trench, a Facebook nyílt forráskódú statikus kód elemzője

A Facebook bemutatta néhány napja megjelent a nyílt forráskódú statikus elemző, Mariana Trench, amely az Android alkalmazások és Java programok sebezhetőségének azonosítására szolgál.

Nál nél lehetőség van a projektek forráskód nélküli elemzésére, amelyhez csak a Dalvik virtuális gép bájtkódja érhető el. További előny a végrehajtás nagyon nagy sebessége (több millió kódsor elemzése körülbelül 10 másodpercet vesz igénybe), amely lehetővé teszi a Mariana Trench használatával az összes javasolt változtatás ellenőrzését azok bevezetésekor.

Az elemző egy projekt részeként fejlesztették ki, hogy automatizálják a kód -felülvizsgálati folyamatot mobil alkalmazások forrása a Facebookról, az Instagramról és a Whatsappról.

Részleteket osztunk meg a Mariana Trench (MT) eszközről, amely az Android és Java alkalmazások biztonsági és adatvédelmi hibáinak észlelésére és megelőzésére használt eszköz. Az épületautomatizálás révén a biztonság fokozására tett erőfeszítéseink részeként nemrég megnyitottuk az MT -t, hogy támogassuk a biztonsági mérnököket a Facebookon és az egész iparágban.

Ez a bejegyzés a harmadik a mélyreható merülések sorozatában, amelyekben statikus és dinamikus elemzőeszközökbe bízunk. Az MT a Zoncolan és a Pysa nyomán a legújabb rendszer, amelyet Hack és Python kódokra építettek.

2021 első felében a Facebook mobilalkalmazások összes sebezhetőségének felét azonosították automatizált elemzőeszközökkel. Mariana Trench kódja szorosan összefonódik más Facebook projektekkel, például a Redex bytecode optimalizáló műveletet használják a bytecode elemzésére, a SPARTA könyvtárat pedig az eredmények vizuális értelmezésére és tanulmányozására.

A potenciális biztonsági réseket és biztonsági problémákat az adatáramlás elemzésével azonosítják az alkalmazás végrehajtása során, amely lehetővé teszi a helyzetek azonosítását amelyben a nyers külső adatokat veszélyes konstrukciókban, például SQL -lekérdezésekben, fájlműveletekben és külső programok elindításához vezető hívásokban dolgozzák fel.

Az MT -t úgy tervezték, hogy képes legyen beolvasni a nagyméretű mobilkód -alapokat, és pontosan meghatározni a potenciális problémákat a lehívási kérelmekben, mielőtt azok gyártásba kerülnének. A Facebook biztonsági és szoftvermérnökei közötti szoros együttműködés eredményeként jött létre, akik arra tanítják az MT -t, hogy nézze meg a kódot, és elemezze, hogyan áramlanak rajta az adatok. Az adatfolyamok elemzése hasznos, mert sok biztonsági és adatvédelmi probléma modellezhető adatáramlásként, ahol nem kellene.

Az elemző feladata az adatforrások és a veszélyes hívások meghatározása, ahol az eredeti adatokat nem szabad használni: Az elemző figyeli az adatok áthaladását a függvényhívások láncolatán, és összekapcsolja a kezdeti adatokat a kód potenciálisan veszélyes helyeivel.

Mivel az MT -ben az adatfolyam a következőképpen írható le:

  • Forrás: származási pont. Ez lehet egy felhasználó által vezérelt karakterlánc, amely az `Intent.getData` -n keresztül lép be az alkalmazásba.
  • Mosogató: úti cél. Androidon ez lehet a "Log.w" vagy "Runtime.exec" hívás. Például az Intent.getData címre irányuló hívás adatai figyelhető forrásnak minősülnek, a Log.w és a Runtime.exec hívások pedig veszélyes felhasználásnak minősülnek.

Egy nagy kódbázis sokféle forrást és megfelelő vevőt tartalmazhat. Azt mondhatjuk az MT -nek, hogy a szabályok meghatározásával mutasson nekünk konkrét folyamatokat.

Egy szabály például megadhatja, hogy szándékos átirányításokat szeretnénk megtalálni (olyan problémákat, amelyek lehetővé teszik a támadók számára, hogy érzékeny adatokat elfogjanak), egy olyan szabály meghatározásával, amely megmutatja nekünk a nyomokat a "felhasználó által vezérelt" forrásoktól a "szándékok átirányításainak" süllyesztőjéig.

Végül ha érdekel, hogy többet tudjon meg róla, ellenőrizheti a részletek a következő linken.


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.