Pysa, Facebook-ek eskaintzen duen Python-en analizatzaile estatikoa

Facebook-ek "Pysa" kode irekiko analisi estatikoa aurkeztu du»(Python Static Analyzer) hau da Python kodean egon daitezkeen ahultasunak identifikatzeko diseinatua.

Pysa datu fluxuen analisia eskaintzen du kodea exekutatzearen ondorioz balizko ahultasun eta arazo ugari identifikatzeko aukera ematen du agertu behar ez duten lekuetan datuak erabiltzearekin lotutako pribatutasunari buruzkoa.

Adibidez, Pysa kanpoko datu gordinen erabileraren jarraipena egin dezake deietan kanpoko programak, fitxategien eragiketetan eta SQL eraikuntzetan exekutatzen dituztenak.

Gaur egun, Pysari buruzko xehetasunak partekatzen ditugu, Python kodean segurtasun eta pribatutasun arazoak detektatu eta prebenitzeko eraiki dugun iturri irekiko analisi estatiko tresna. Iaz, Zoncolan nola sortu genuen partekatu genuen, analisi estatikoko tresna, 100 milioi hack kode lerro baino gehiago aztertzen laguntzen diguna eta ingeniariei milaka segurtasun arazo potentzial saihesten laguntzen diena Arrakasta horrek Pysa garatzera bultzatu gintuen, Python Static Analyzer-en akronimoa da.

Pysak algoritmo berak erabiltzen ditu analisi estatikoa egiteko eta baita kodearekin partekatzeko ere Zoncolan. Zoncolan bezala, Pysa programa baten bidez datuen fluxuak jarraitzen ditu.

Erabiltzaileak iturriak (datu garrantzitsuak sortzen diren lekuak) definitzen ditu, baita konketa ere (iturburuko datuak amaitu behar ez diren lekuak).

Segurtasun aplikazioetarako, iturri mota ohikoenak erabiltzaileak kontrolatutako datuak aplikazioan sartzen diren lekuak dira, Django hiztegia, esaterako.

Hartzaileak askoz ere askotarikoak izaten dira, baina kodea exekutatzen duten APIak sar ditzakete, adibidez eval, edo fitxategi sistemara sartzen diren APIak, adibidezos.open

Pysak analisi erronda errepikariak egiten ditu laburpenak eraikitzeko zehazteko zehazteko zein funtziok itzultzen dituzten datuak iturri batetik eta zein funtzioak dituzten azkenean harraska batera joaten diren parametroak. Pysak azkenean iturri bat harraska batera konektatzen duela aurkitzen badu, arazo baten berri ematen du. 

Analizatzaile lana sarrerako datu iturriak identifikatzera murrizten da eta dei arriskutsuak, jatorrizko datuak erabili behar ez direnak.

Pysak funtzio deien katearen bidez datuak igarotzen ditu eta jatorrizko datuak kodean arriskutsuak izan daitezkeen lekuekin lotzen ditu.

Django eta Tornado bezalako kode irekiko Python zerbitzari-esparruak erabiltzen ditugunez, gure produktuetarako, Pysa-k segurtasun arazoekin topo egin dezake esparru horiek erabiltzen dituzten proiektuetan lehen exekuziotik hasita. Oraindik estaldura ez dugun Pysa esparruetarako erabiltzea konfigurazio lerro batzuk gehitzea bezain erraza da Pysari zerbitzarira datuak nondik datozen esateko.

Pysak identifikatutako ohiko ahultasun bat Zulip mezularitza plataforman irekitako birbideratze arazoa da, miniaturak bistaratzean kanpoko parametro garbiak pasatzeak eragindakoa.

Pysaren datu-fluxuaren jarraipena egiteko gaitasunak fotograma osagarrien erabilera balioztatzeko eta erabiltzaileen datuak erabiltzeko gidalerroak betetzen direla zehazteko erabil daitezke.

Adib Konfigurazio osagarririk gabeko Pysa erabil daiteke proiektuak esparruak erabiliz egiaztatzeko Django eta Tornado. Pysak web aplikazioetan ohiko ahultasunak ere antzeman ditzake, hala nola, SQL ordezkapena eta cross-site scripting (XSS).

Facebooken, analizatzailea Instagram zerbitzuaren kodea egiaztatzeko erabiltzen da. 2020ko lehen hiruhilekoan, Pysak Facebookeko ingeniariek Instagram zerbitzariaren kode oinarrian aurkitutako arazo guztien% 44 identifikatzen lagundu zuen.

Guztira 330 arazo identifikatu ziren prozesuan Pysa erabiliz aldaketa automatikoen egiaztapena, horietatik 49 (% 15) esanguratsutzat ebaluatu ziren eta 131 (% 40) ez ziren arriskutsuak. 150 kasutan (% 45) arazoak positibo faltsuei egotzi zaizkie.

Analizatzaile berria Pyre motako egiaztapen tresna-sortarako gehigarri gisa diseinatuta dago eta zure biltegian kokatzen da. Kodea MIT lizentziarekin kaleratzen da.

Bukatzeko horri buruz gehiago jakin nahi baduzu, xehetasunak jatorrizko mezuan kontsulta ditzakezu. Esteka hau da.


Artikuluaren edukia gure printzipioekin bat dator etika editoriala. Akats baten berri emateko egin klik hemen.

Idatzi lehenengo iruzkina

Utzi zure iruzkina

Zure helbide elektronikoa ez da argitaratuko. Beharrezko eremuak markatuta daude *

*

*

  1. Datuen arduraduna: Miguel Ángel Gatón
  2. Datuen xedea: SPAM kontrolatzea, iruzkinen kudeaketa.
  3. Legitimazioa: Zure baimena
  4. Datuen komunikazioa: datuak ez zaizkie hirugarrenei jakinaraziko legezko betebeharrez izan ezik.
  5. Datuak biltegiratzea: Occentus Networks-ek (EB) ostatatutako datu-basea
  6. Eskubideak: Edonoiz zure informazioa mugatu, berreskuratu eta ezabatu dezakezu.