Facebook iepazīstināja ar Pysa, statisko Python valodas analizatoru

Facebook ieviesa atveriet statisko analizatoru pysa (Python Static Analyzer), kas paredzēts, lai identificētu iespējamās Python koda ievainojamības. Jaunais analizators ir izveidots kā papildinājums tipa pārbaudes rīku komplektam Pīrss un ievietojis savā repozitorijā. Kods publicēta saskaņā ar MIT licenci.

Pysa nodrošina datu plūsmu analīzi koda izpildes rezultātā, kas ļauj identificēt daudzas iespējamās ievainojamības un privātuma problēmas, kas saistītas ar datu izmantošanu vietās, kur tiem nevajadzētu parādīties.
Piemēram, Pysa var izsekot ārējo neapstrādātu datu izmantošanai zvanos, kas palaiž ārējās programmas, failu operācijās un SQL konstrukcijās.

Analizatora darbs ir saistīts ar datu avotu un bīstamu zvanu identificēšanu, kuros nevajadzētu izmantot sākotnējos datus. Dati no tīmekļa pieprasījumiem (piemēram, Django vārdnīca HttpRequest.GET) tiek uzskatīti par avotu, un tādi izsaukumi kā eval un os.open tiek uzskatīti par bīstamiem lietojumiem. Pysa izseko datu plūsmu caur funkciju izsaukumu ķēdi un saista avota datus ar potenciāli bīstamām vietām kodā. Tipiska ievainojamība, kas identificēta, izmantojot Pysa, ir atklāta novirzīšanas problēma (CVE-2019-19775) Zulip ziņojumapmaiņas platformā, ko izraisa nenotīrītu ārējo parametru nodošana sīktēlu renderēšanas laikā.

Pysa datu plūsmas izsekošanas iespējas var pieteikties lai pārbaudītu pareizu papildu ietvaru izmantošanu un noteiktu atbilstību lietotāja datu lietošanas politikai. Piemēram, Pysa bez papildu iestatījumiem var izmantot, lai pārbaudītu projektus, izmantojot Django un Tornado ietvarus. Pysa var arī atklāt izplatītas tīmekļa lietojumprogrammu ievainojamības, piemēram, SQL injekciju un starpvietņu skriptēšanu (XSS).

Facebook vietnē analizators tiek izmantots, lai pārbaudītu Instagram pakalpojuma kodu. 2020. gada pirmajā ceturksnī Pysa palīdzēja identificēt 44% no visām problēmām, kuras Facebook inženieri atrada Instagram servera puses kodu bāzē.
Kopumā Pysa automatizētajā izmaiņu pārskatīšanas procesā tika identificētas 330 problēmas, no kurām 49 (15%) tika novērtētas kā nopietnas un 131 (40%) tika novērtētas kā nopietnas. 150 gadījumos (45%) problēmas tika klasificētas kā viltus pozitīvas.

Avots: opennet.ru

Iegādājieties uzticamu mitināšanu vietnēm ar DDoS aizsardzību, VPS VDS serveriem 🔥 Iegādājieties uzticamu tīmekļa vietņu mitināšanu ar DDoS aizsardzību, VPS VDS serveriem | ProHoster