Facebook բաց կոդով Mariana Trench ստատիկ անալիզատոր

Facebook-ը ներկայացրել է նոր բաց ստատիկ անալիզատոր՝ Mariana Trench-ը, որն ուղղված է Android պլատֆորմի և Java ծրագրերի հավելվածների խոցելիության հայտնաբերմանը: Հնարավոր է վերլուծել նախագծերը առանց կոդերի, որոնց համար հասանելի է միայն Dalvik վիրտուալ մեքենայի բայթկոդը։ Մեկ այլ առավելություն դրա կատարման շատ բարձր արագությունն է (կոդի մի քանի միլիոն տողերի վերլուծությունը տևում է մոտ 10 վայրկյան), ինչը թույլ է տալիս օգտագործել Mariana Trench-ը՝ ստուգելու առաջարկվող բոլոր փոփոխությունները, երբ դրանք հասնում են: Ծրագրի կոդը գրված է C++-ով և տարածվում է MIT լիցենզիայի ներքո:

Անալիզատորը մշակվել է Facebook-ի, Instagram-ի և Whatsapp-ի բջջային հավելվածների սկզբնական տեքստերի վերանայման գործընթացի ավտոմատացման նախագծի շրջանակներում: 2021 թվականի առաջին կիսամյակում Facebook-ի բջջային հավելվածների բոլոր խոցելիությունների կեսը հայտնաբերվել է ավտոմատացված վերլուծության գործիքների միջոցով։ Mariana Trench կոդը սերտորեն փոխկապակցված է Facebook-ի այլ նախագծերի հետ, օրինակ՝ Redex bytecode optimizer-ը օգտագործվել է բայթկոդը վերլուծելու համար, իսկ SPARTA գրադարանը՝ ստատիկ վերլուծության արդյունքները տեսողականորեն մեկնաբանելու և ուսումնասիրելու համար:

Պոտենցիալ խոցելիությունները և գաղտնիության խնդիրները բացահայտվում են՝ վերլուծելով տվյալների հոսքերը հավելվածի կատարման ընթացքում՝ բացահայտելու իրավիճակները, երբ չմշակված արտաքին տվյալները մշակվում են վտանգավոր կառուցվածքներում, ինչպիսիք են SQL հարցումները, ֆայլերի գործառնությունները և արտաքին ծրագրերը գործարկող կանչերը:

Անալիզատորի աշխատանքը հանգում է տվյալների աղբյուրների և վտանգավոր զանգերի նույնականացմանը, որոնց դեպքում աղբյուրի տվյալները չպետք է օգտագործվեն. . Օրինակ, Intent.getData-ին զանգի միջոցով ստացված տվյալները համարվում են աղբյուրի հետագծման կարիք, իսկ Log.w և Runtime.exec զանգերը համարվում են վտանգավոր օգտագործում:

Facebook բաց կոդով Mariana Trench ստատիկ անալիզատոր


Source: opennet.ru

Добавить комментарий