NPM nastavlja sa sigurnosnim problemima i sada je jedan utjecao na sustav ažuriranja

Prije nekoliko dana GitHub je otkrio dva incidenta u infrastrukturi spremišta NPM paketa, u kojem se navodi da su 2. studenog istraživači sigurnosti treće strane u sklopu programa Bug Bounty pronašli ranjivost u NPM repozitoriju koji omogućuje objavljivanje nove verzije bilo kojeg paketa koji koristi iako nije ovlašten za obavljanje takvih ažuriranja.

Ranjivost je uzrokovana netočnim provjerama autorizacije u kodu mikroservisa koji obrađuju zahtjeve NPM-u. Autorizacijski servis izvršio je provjeru dopuštenja za pakete na temelju podataka proslijeđenih u zahtjevu, ali druga usluga koja je učitavala ažuriranje u spremište odredila je da se paket objavi na temelju sadržaja metapodataka u prenesenom paketu.

Dakle, napadač može zatražiti objavu ažuriranja za svoj paket kojem ima pristup, ali u samom paketu navesti podatke o drugom paketu koji bi se eventualno ažurirao.

Posljednjih nekoliko mjeseci npm tim ulaže u infrastrukturna i sigurnosna poboljšanja kako bi automatizirao nadzor i analizu nedavno objavljenih verzija paketa kako bi identificirao zlonamjerni softver i drugi zlonamjerni kod u stvarnom vremenu.

Dvije su glavne kategorije događaja objavljivanja zlonamjernog softvera koji se javljaju u npm ekosustavu: zlonamjerni softver koji se objavljuje zbog otmice računa i zlonamjerni softver koji napadači objavljuju putem vlastitih računa. Iako su akvizicije računa s velikim utjecajem relativno rijetke, u usporedbi s izravnim zlonamjernim softverom koji su objavili napadači koristeći svoje vlastite račune, akvizicije računa mogu biti dalekosežne kada se ciljaju popularni održavatelji paketa. Iako je naše vrijeme otkrivanja i odgovora na popularne kupnje paketa bilo samo 10 minuta u nedavnim incidentima, nastavljamo razvijati naše mogućnosti otkrivanja zlonamjernog softvera i strategije obavijesti prema proaktivnijem modelu odgovora.

problem popravljena je 6 sati nakon prijave ranjivosti, ali je ranjivost bila prisutna u NPM-u duže nego što pokrivaju zapisnici telemetrije. GitHub navodi da nije bilo tragova napada koji koriste ovu ranjivost od rujna 2020, ali nema jamstva da problem nije ranije iskorišten.

Drugi incident dogodio se 26. listopada. Tijekom tehničkog rada s bazom servisa replicant.npmjs.com, otkriveno je da u bazi podataka postoje povjerljivi podaci dostupni za vanjsko savjetovanje, otkrivajući informacije o nazivima internih paketa koji su spomenuti u dnevniku promjena.

Informacije o tim imenima može se koristiti za izvođenje napada ovisnosti na internim projektima (U veljači je takav napad omogućio pokretanje koda na poslužiteljima PayPal, Microsoft, Apple, Netflix, Uber i 30 drugih tvrtki.)

Osim toga, u odnosu na sve veću učestalost zapljene repozitorija velikih projekata i promicanje zlonamjernog koda putem kompromitiranja računa razvojnog programera, GitHub je odlučio uvesti obveznu dvofaktorsku autentifikaciju. Promjena će stupiti na snagu u prvom tromjesečju 2022. i odnosit će se na održavatelje i administratore paketa uključenih na popis najpopularnijih. Dodatno, daju se informacije o modernizaciji infrastrukture u kojoj će se uvesti automatizirano praćenje i analiza novih verzija paketa za rano otkrivanje zlonamjernih promjena.

Podsjetimo, prema studiji provedenoj 2020., samo 9.27% upravitelja paketa koristi dvofaktorsku autentifikaciju za zaštitu pristupa, a u 13.37% slučajeva, prilikom registracije novih računa, programeri su pokušali ponovno upotrijebiti ugrožene lozinke koje se pojavljuju u poznatim lozinkama .

Tijekom provjere jačine korištenih lozinki pristupilo se 12% računa u NPM-u (13% paketa) zbog korištenja predvidljivih i trivijalnih lozinki poput "123456". Među problemima su bila 4 korisnička računa od 20 najpopularnijih paketa, 13 računa čiji su paketi preuzimani više od 50 milijuna puta mjesečno, 40 - više od 10 milijuna preuzimanja mjesečno i 282 s više od milijun preuzimanja mjesečno. Uzimajući u obzir opterećenje modula duž lanca ovisnosti, kompromitiranje nepouzdanih računa moglo bi utjecati na do 1% svih modula u NPM-u ukupno.

Konačno, ako vas zanima više o tome možete provjeriti detalje U sljedećem linku.


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.