Një dobësi në Python, që shfaqet gjatë përpunimit të numrave të papërshkruar në ctypes.

Janë në dispozicion përmirësime për versionet e gjuhës së programimit Python 3.7.10 dhe 3.6.13, në të cilat është eliminuar një dobësi (CVE-2021-3177), e cila mund të çojë në ekzekutimin e kodit gjatë përpunimit të numrave me presje të lëvizshme të pa verifikuar në menaxhuesit që thërrasin funksione në gjuhën C duke përdorur mekanizmin ctypes. Problemi ndikon gjithashtu në degët Python 3.8 dhe 3.9, por përditësimet për to janë ende në fazën e kandidatëve për lëshim (lëshimi është planifikuar për më 1 mars).

Problemi Ă«shtĂ« shkaktuar nga mbushja e tamponit nĂ« funksionin ctypes PyCArg_repr(), qĂ« ndodh pĂ«r shkak tĂ« pĂ«rdorimit tĂ« pasigurt tĂ« sprintf. NĂ« veçanti, pĂ«r pĂ«rpunimin e rezultatit tĂ« ekzekutimit tĂ« konvertimit ‘sprintf(buffer, "", self->tag, self->value.b)’ ishte caktuar njĂ« buffer statik me madhĂ«si 256 byte ("char buffer[256]"), ndĂ«rsa rezultati mund tĂ« kalojĂ« kĂ«tĂ« vlerĂ«. PĂ«r tĂ« kontrolluar nĂ«se aplikacionet preken nga kjo dobĂ«si, mund tĂ« provoni tĂ« kaloni vlerĂ«n "1e300", e cila gjatĂ« pĂ«rpunimit me metodĂ«n c_double.from_param do tĂ« shkaktojĂ« njĂ« crash, pasi numri rezultues pĂ«rmban 308 shifra dhe nuk i pĂ«rshtatet buffer-it 256-byte. Shembulli i kodit problematic: import ctypes; x = ctypes.c_double.from_param(1e300); repr(x)

Problemi mbetet i përshtatshëm në Debian, Ubuntu dhe FreeBSD, por është tashmë eliminuar në Arch Linux, Fedora, SUSE. Në RHEL, dobësia nuk shfaqet për shkak të ndërtimit të paketave në mënyrë FORTIFY_SOURCE, e cila bllokon mbushjet e tilla të tamponëve në funksionet e vargjeve.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster