GoranStimac.com



NodeJS sigurnosna izdanja od 10. siječnja 2022

Sada su dostupna ažuriranja za retke izdanja v17.x, v16.x, v14.x i v12.x Node.js za sljedeće probleme.

Neispravno rukovanje alternativnim nazivima URI subjekta (Medium)(CVE-2021-44531)

Prihvaćanje proizvoljnih tipova alternativnog imena subjekta (SAN), osim ako PKI nije posebno definiran za korištenje određenog tipa SAN-a, može rezultirati zaobilaženjem međuprodukta ograničenih imenom. Node.js je prihvaćao URI SAN tipove, za koje PKI-ovi često nisu definirani za korištenje. Osim toga, kada protokol dopušta URI SAN-ove, Node.js nije ispravno odgovarao URI-ju.

Verzije Node.js s popravkom za to onemogućuju tip URI SAN pri provjeravanju certifikata prema imenu hosta. Ovo se ponašanje može vratiti putem opcije naredbenog retka --security-revert.

Više pojedinosti bit će dostupno na CVE-2021-44531 nakon objave.

Ovu ranjivost prijavio je Google.

Utjecaji:

  • Sve verzije izdanja 17.x, 16.x, 14.x i 12.x.

Zaobići provjeru certifikata putem ubrizgavanja niza (Medium)(CVE-2021-44532)

Node.js pretvara SAN-ove (Alternativni nazivi predmeta) u format stringa. Koristi ovaj niz za provjeru certifikata ravnopravnih korisnika u odnosu na imena hostova prilikom provjere veza. Format niza bio je podložan ranjivosti ubrizgavanja kada su se ograničenja imena koristila unutar lanca certifikata, što je omogućilo zaobilaženje ovih ograničenja imena.

Verzije Node.js s popravkom za ovu escape SAN-ove koji sadrže problematične znakove kako bi se spriječilo ubrizgavanje. Ovo se ponašanje može vratiti putem opcije naredbenog retka --security-revert.

Više pojedinosti bit će dostupno na CVE-2021-44532 nakon objave.

Ovu ranjivost prijavio je Google.

Utjecaji:

  • Sve verzije izdanja 17.x, 16.x, 14.x i 12.x.

Netočno rukovanje predmetom certifikata i poljima izdavatelja (Medium)(CVE-2021-44533)

Node.js nije ispravno rukovao viševrijednim relativnim razlikovnim imenima. Napadači bi mogli izraditi subjekte certifikata koji sadrže jednovrijedno relativno razlikovno ime koje bi se tumačilo kao viševrijedno relativno razlikovno ime, na primjer, kako bi ubacili zajedničko ime koje bi omogućilo zaobilaženje provjere subjekta certifikata.

Pogođene verzije Node.js ne prihvaćaju viševrijedne relativne razlikovne nazive i stoga nisu ranjive na takve napade same. Međutim, kod treće strane koji koristi dvosmislenu prezentaciju predmeta certifikata u čvoru može biti ranjiv.

Više pojedinosti bit će dostupno na CVE-2021-44533 nakon objave.

Ovu ranjivost prijavio je Google.

Utjecaji:

  • Sve verzije izdanja 17.x, 16.x, 14.x i 12.x.

Prototip zagađenja putem svojstava “console.table” (Low)(CVE-2022-21824)

Zbog logike oblikovanja funkcije console.table() nije bilo sigurno dopustiti da se korisnički kontrolirani unos prosljeđuje parametru properties dok se istovremeno prosljeđuje običan objekt s barem jednim svojstvom kao prvim parametrom, koji može biti __proto__. Zagađenje prototipa ima vrlo ograničenu kontrolu, jer dopušta samo dopisivanje praznog niza numeričkim tipkama prototipa objekta.

Verzije Node.js s popravkom za ovo koriste null protoype za objekt kojem se ova svojstva dodijeljuju.

Više pojedinosti bit će dostupno na CVE-2022-21824 nakon objave.

Hvala Patriku Oldsbergu (rugvip) što je prijavio ovu ranjivost.

Utjecaji:

  • Sve verzije izdanja 17.x, 16.x, 14.x i 12.x.

Preuzimanja i pojedinosti o izdanju

Povezane objave