Facebook ṣafihan Pysa, olutupalẹ aimi fun ede Python

Facebook ṣafihan ìmọ aimi analyzer pya (Python Static Analyzer), ti a ṣe lati ṣe idanimọ awọn ailagbara ni koodu Python. Oluyanju tuntun jẹ apẹrẹ bi afikun si iru ohun elo irinṣẹ ṣayẹwo Pyre ati Pipa ni ibi ipamọ rẹ. Koodu atejade labẹ iwe-aṣẹ MIT.

Pysa n pese itupalẹ awọn ṣiṣan data bi abajade ti ipaniyan koodu, eyiti o fun ọ laaye lati ṣe idanimọ ọpọlọpọ awọn ailagbara ati awọn ọran aṣiri ti o ni nkan ṣe pẹlu lilo data ni awọn aaye nibiti ko yẹ ki o han.
Fun apẹẹrẹ, Pysa le tọpinpin lilo data ita aise ni awọn ipe ti o ṣe ifilọlẹ awọn eto ita, ni awọn iṣẹ ṣiṣe faili, ati ni awọn itumọ SQL.

Iṣẹ ti olutupalẹ wa si idamo awọn orisun ti data ati awọn ipe ti o lewu ninu eyiti data atilẹba ko yẹ ki o lo. Awọn data lati awọn ibeere wẹẹbu (fun apẹẹrẹ, iwe-itumọ HttpRequest.GET ni Django) ni a gba bi orisun, ati pe awọn ipe bi eval ati os.open ni a gba bi awọn lilo ti o lewu. Pysa tọpa sisan data nipasẹ pq ti awọn ipe iṣẹ ati ṣepọ data orisun pẹlu awọn aaye ti o lewu ninu koodu naa. Ailagbara aṣoju ti a mọ nipa lilo Pysa jẹ iṣoro ṣiṣatunṣe ṣiṣi (CVE-2019-19775) ni Syeed fifiranṣẹ Zulip, ti o ṣẹlẹ nipasẹ gbigbe awọn aye itagbangba ti ko mọ nigba ti n ṣe awọn eekanna atanpako.

Awọn agbara ipasẹ sisan data Pysa le waye lati mọ daju lilo deede ti awọn ilana afikun ati lati pinnu ibamu pẹlu eto imulo lilo data olumulo. Fun apẹẹrẹ, Pysa laisi awọn eto afikun le ṣee lo lati ṣayẹwo awọn iṣẹ akanṣe nipa lilo awọn ilana Django ati Tornado. Pysa tun le ṣawari awọn ailagbara ti o wọpọ ni awọn ohun elo wẹẹbu, gẹgẹbi abẹrẹ SQL ati iwe afọwọkọ aaye (XSS).

Lori Facebook, a lo olutupalẹ lati ṣayẹwo koodu ti iṣẹ Instagram. Ni mẹẹdogun akọkọ ti ọdun 2020, Pysa ṣe iranlọwọ idanimọ 44% ti gbogbo awọn iṣoro ti awọn onimọ-ẹrọ Facebook ti o rii ni koodu koodu ẹgbẹ olupin ti Instagram.
Lapapọ, ilana atunyẹwo adaṣe adaṣe adaṣe ti Pysa ṣe idanimọ awọn ọran 330, eyiti 49 (15%) jẹ iwọn pataki ati 131 (40%) bi kii ṣe pataki. Ni awọn ọran 150 (45%) awọn iṣoro naa ni a pin si bi awọn idaniloju eke.

orisun: opennet.ru

Fi ọrọìwòye kun