Vilnerabilite nan bibliyotèk rezo yo nan lang Rust ak Go ki pèmèt ou kontoune verifikasyon adrès IP

Vilnerabilite ki gen rapò ak tretman kòrèk nan adrès IP ak chif octal nan fonksyon analiz adrès yo te idantifye nan bibliyotèk estanda yo nan lang yo Rust ak Go. Vulnerabilite yo fè li posib pou kontoune chèk pou adrès valab nan aplikasyon yo, pou egzanp, òganize aksè nan adrès koòdone loopback (127.xxx) oswa subnets intranet lè yo pote atak SSRF (fouyaj demann bò sèvè). Vulnerabilite yo kontinye sik pwoblèm yo te idantifye deja nan bibliyotèk node-netmask (JavaScript, CVE-2021-28918, CVE-2021-29418), prive-ip (JavaScript, CVE-2020-28360), ipaddress (Python, CVE-). 2021-29921 ), Done::Valide::IP (Perl, CVE-2021-29662) ak Net::Netmask (Perl, CVE-2021-29424).

Dapre spesifikasyon la, valè fisèl adrès IP kòmanse ak zewo yo ta dwe entèprete kòm nimewo oktal, men anpil bibliyotèk pa pran sa a an kont epi tou senpleman jete zewo a, trete valè a kòm yon nimewo desimal. Pa egzanp, nimewo 0177 nan oktal egal a 127 an desimal. Yon atakè ka mande yon resous lè li espesifye valè "0177.0.0.1", ki nan notasyon desimal koresponn ak "127.0.0.1". Si yo itilize bibliyotèk la ki gen pwoblèm, aplikasyon an p ap detekte adrès 0177.0.0.1 nan sous-rezo 127.0.0.1/8, men an reyalite, lè w ap voye yon demann, li ka jwenn aksè nan adrès "0177.0.0.1" la. fonksyon rezo yo pral trete kòm 127.0.0.1. Nan yon fason menm jan an, ou ka tronpe chèk aksè nan adrès intranet lè w espesifye valè tankou "012.0.0.1" (ekivalan a "10.0.0.1").

Nan Rust, bibliyotèk estanda "std::net" te afekte pa yon pwoblèm (CVE-2021-29922). Analizeur adrès IP nan bibliyotèk sa a jete yon zewo anvan valè yo nan adrès la, men sèlman si pa gen plis pase twa chif yo te espesifye, pou egzanp, "0177.0.0.1" ta dwe konnen kòm yon valè envalid, ak yon rezilta kòrèk. ta dwe retounen an repons a 010.8.8.8 ak 127.0.026.1. Aplikasyon ki sèvi ak std::net::IpAddr lè analize adrès itilizatè yo espesifye yo potansyèlman sansib pou atak SSRF (fouyaj demann bò sèvè), RFI (Enklizyon Fichye Remote) ak LFI (Enklizyon Fichye Lokal). Vilnerabilite a te fiks nan branch Rust 1.53.0.

Vilnerabilite nan bibliyotèk rezo yo nan lang Rust ak Go ki pèmèt ou kontoune verifikasyon adrès IP

Nan Go, bibliyotèk estanda "net" la afekte (CVE-2021-29923). Fonksyon entegre net.ParseCIDR la sote zewo dirijan anvan nimewo oktal olye pou yo trete yo. Pou egzanp, yon atakè ka pase valè a 00000177.0.0.1, ki, lè yo tcheke nan net.ParseCIDR (00000177.0.0.1/24) fonksyon, yo pral analize kòm 177.0.0.1/24, epi yo pa 127.0.0.1/24. Pwoblèm nan tou manifeste tèt li nan platfòm Kubernetes la. Se vilnerabilite a fiks nan Go lage 1.16.3 ak beta 1.17.

Vilnerabilite nan bibliyotèk rezo yo nan lang Rust ak Go ki pèmèt ou kontoune verifikasyon adrès IP


Sous: opennet.ru

Add nouvo kòmantè