Janë publikuar përditësime korrigjuese për interpretuesin Perl 5.40.2 dhe 5.38.4, të cilat rregullojnë një cenueshmëri (CVE-2024-56406), e cila çon në përmbushjen e buferit gjatë transliterimit të simboleve të pa-ASCII të formuar posaçërisht përmes operatorit «tr/../..». Nuk përjashtohet mundësia e shfrytëzimit të kësaj cenueshmërie për të organizuar ekzekutimin e kodit të vet në sistem. Problemi shfaqet në versionet stabile të Perl që nga viti 2021 dhe prek degët Perl 5.34, 5.36, 5.38 dhe 5.40. Mund të ndjekësh rregullimin e cenueshmërisë në shpërndarjet e mëposhtme: Debian, Ubuntu, Fedora, Arch, FreeBSD. Shpërndarjet e bazuara në RHEL 9, SUSE 15 dhe openSUSE Leap 15.6 nuk janë të prekura nga cenueshmëria, pasi përfshijnë versionet e Perl 5.32 dhe 5.26.
Cenueshmëria prek programet që përdorin të dhëna të jashtme të pa verifikuara në anën e majtë të operatorit «tr», ku përcaktohet një variabël me të dhëna për të përmirësuar simbolet (për shembull, «$external_string =~ tr/a/b/»). Në funksionin mbështetës S_do_trans_invmap() gjatë përpunimit të disa bajtëve të pa-ASCII ndodh një referencë në memorie jashtë buferit të alokuar. Përmbushja ndodh sepse disa sekuenca bajtësh në setin e dhënash origjinal mund të shndërrohen në sekuenca UTF-8, për të cilat kërkohen dy bajtë në vend të një.
ĂshtĂ« e rĂ«ndĂ«sishme tĂ« theksohet se cenueshmĂ«ria u shfaq pas njĂ« ndryshimi tĂ« shtuar nĂ« vitin 2020, i cili eleminoi kontrollin shtesĂ« tĂ« mjaftueshmĂ«risĂ« sĂ« alokimit tĂ« memories nĂ«n pretencĂ«n se gjatĂ« llogaritjes sĂ« madhĂ«sisĂ« Ă«shtĂ« e mjaftueshme rrumbullakimi i madhĂ«sisĂ« nĂ« anĂ«n e sipĂ«rme. PĂ«r tĂ« kontrolluar praninĂ« e cenueshmĂ«risĂ«, mund tĂ« ekzekutoni kodin: perl -e â$_ = â\x{FF}â x 1000000; tr/\xFF/\x{100};â Gabim segmentimi (nĂ« themel tĂ« dump-it)
Burimi: opennet.ru
