Facebook open sourced Mariana Trench static analyzer

Ipinakilala ng Facebook ang isang bagong open source static analyzer, Mariana Trench, na naglalayong tukuyin ang mga kahinaan sa mga Android application at Java program. Posibleng pag-aralan ang mga proyekto nang walang source code, kung saan ang bytecode lang para sa Dalvik virtual machine ang available. Ang isa pang bentahe ay ang napakataas na bilis ng pagpapatupad nito (ang pagtatasa ng ilang milyong linya ng code ay tumatagal ng humigit-kumulang 10 segundo), na nagbibigay-daan sa iyong gamitin ang Mariana Trench upang suriin ang lahat ng iminungkahing pagbabago pagdating ng mga ito. Ang code ng proyekto ay nakasulat sa C++ at ipinamamahagi sa ilalim ng lisensya ng MIT.

Ang analyzer ay binuo bilang bahagi ng isang proyekto upang i-automate ang proseso ng pagrepaso sa mga source text ng mga mobile application para sa Facebook, Instagram at Whatsapp. Sa unang kalahati ng 2021, natukoy ang kalahati ng lahat ng mga kahinaan sa mga mobile application ng Facebook gamit ang mga awtomatikong tool sa pagsusuri. Ang Mariana Trench code ay malapit na nauugnay sa iba pang mga proyekto sa Facebook; halimbawa, ang Redex bytecode optimizer ay ginamit upang i-parse ang bytecode, at ang SPARTA library ay ginamit upang biswal na bigyang-kahulugan at pag-aralan ang mga resulta ng static na pagsusuri.

Natutukoy ang mga potensyal na kahinaan at isyu sa privacy sa pamamagitan ng pagsusuri sa mga daloy ng data sa panahon ng pagpapatupad ng application upang matukoy ang mga sitwasyon kung saan pinoproseso ang raw external na data sa mga mapanganib na konstruksyon, gaya ng mga query sa SQL, pagpapatakbo ng file, at mga tawag na nagti-trigger ng mga external na programa.

Ang gawain ng analyzer ay bumaba sa pagtukoy ng mga pinagmumulan ng data at mga mapanganib na tawag kung saan hindi dapat gamitin ang source data - sinusubaybayan ng analyzer ang pagpasa ng data sa pamamagitan ng chain ng mga function call at ikinokonekta ang source data sa mga potensyal na mapanganib na lugar sa code . Halimbawa, ang data na natanggap sa pamamagitan ng isang tawag sa Intent.getData ay itinuturing na nangangailangan ng source tracking, at ang mga tawag sa Log.w at Runtime.exec ay itinuturing na mga mapanganib na paggamit.

Facebook open sourced Mariana Trench static analyzer


Pinagmulan: opennet.ru

Magdagdag ng komento