Python ipaddress sårbarhed

Programmeringssproget Pythons standardbibliotek, ipaddress, lider af den samme kritiske sårbarhed til validering af IP-adresser, som blev rapporteret i 'netmask'-biblioteket tidligere på året.

Sårbarheden, navngivet CVE-2021-28918 (kritisk), som er flankeret med yderligere to sårbarheder, CVE-2021-29418 (medium) og CVE-2021-29424 (høj), blev fundet i både npm- (en packet manager til JavaScript) og Perl-versionerne af netmask og andre lignende biblioteker. Regressionsårbarheden sneg sig ind i Python 3.xs ipaddress modul som et resultat af en rettelse, foretaget af udviklerne bag Python i 2019. Det skriver Bleeping Computer.

Det viser sig, at ipaddress-standardbiblioteket, der blev introduceret i Python 3.3, også er påvirket af denne sårbarhed.

Fejlen, CVE-2021-29921, vedrører forkert parsing af IP-adresser i ipaddress standardbiblioteket.

Pythons ipaddress-modul giver udviklere mulighed for nemt at oprette IP-adresser, netværk og grænseflader; og for at parse / normalisere IP adresser, der er indtastet i forskellige formater.

Regressionsfejl introduceret i 2019, patch kommer

Selvom ipaddress-modul blev introduceret i Python 3.3, kom regressionsfejlen ind i modulet fra Python version 3.8.0 til og med 3.10, ifølge researcherne bag fundet. 

Før v3.8.0a4 havde Pythons ipaddress nogle kontroller på plads, der afviste IP-adresser, leveret i blandede formater (dvs. i otte-tals- og ti-talssystem).

Disse kontroller blev imidlertid fjernet fuldstændigt, fra og med Python version 3.8.0a4.

Der fulgte en diskussion blandt udviklerne bag Python om årsagerne til denne fjernelse og de praktiske grunde til at indføre denne ændring, når det drejede sig om håndtering af tvetydige IP-adresser.

Diskussioner om en kommende patch pågår og nøjagtige detaljer om, hvilken version af Python, den vil omfatte, er fortsat uklare. En alternativ workaround er også blevet foreslået.

Link:

https://www.bleepingcomputer.com/news/security/python-also-impacted-by-critical-ip-address-validation-vulnerability/