Spoločnosť GitHub publikovala výsledky analýzy útoku, pri ktorom 12. apríla zločinci získali prístup ku cloudovým prostrediam v službe Amazon AWS, používaným v infraštruktúre projektu NPM. Analýza incidentu ukázala, že útočníci mali prístup k záloham hostiteľa skimdb.npmjs.com a vrátane zálohy databázy s údajmi približne 100 tisíc používateľov NPM k 2015, vrátane hashov hesiel, mien a emailových adries.
Hashy hesiel boli vytvorené pomocou algoritmov PBKDF2 alebo SHA1 so soľou, ktoré boli v roku 2017 nahradené odolnejším systémom bcrypt. Po zistení incidentu boli postihnuté heslá resetované a používateľom bola zaslaná notifikácia o potrebe nastaviť nové heslo. Keďže od 1. marca je v NPM zavedená povinná dvojfaktorová autentifikácia s potvrdením cez email, nebezpečenstvo narušenia údajov používateľov je považované za minimálne.
Okrem toho sa do rúk útočníkov dostali všetky manifestové súbory a metadáta súkromných balíkov k aprílu 2021, CSV súbory s aktuálnym zoznamom všetkých názvov a verzií súkromných balíkov, ako aj obsah všetkých súkromných balíkov dvoch klientov GitHub (mená nie sú zverejnené). Čo sa týka samotného repozitára, analýza stôp a overenie hashov balíkov neodhalilo žiadne zmeny, ktoré by útočníci urobili v NPM balíkoch alebo publikovali falošné nové verzie balíkov.
Útok bol uskutočnený 12. apríla s využitím ukradnutých tokenov OAuth, generovaných pre dvoch externých integrátorov GitHub — Heroku a Travis-CI. Využitím tokenov útočníci dokázali získať z súkromných repozitárov GitHub kľúč pre prístup k API Amazon Web Services, používanému v infraštruktúre projektu NPM. Získaný kľúč umožnil prístup k údajom uloženým v službe AWS S3.
Dodatočne sa odhalili informácie o predtým zistených vážnych problémoch s ochranou súkromia pri spracovaní údajov používateľov na serveroch NPM — v interných logoch sa v otvorenej podobe uchovávali heslá niektorých používateľov NPM, ako aj prístupové tokeny k NPM. Počas integrácie NPM so systémom správy logov GitHub vývojári nezabezpečili vystrihovanie dôverných informácií z logovaných požiadaviek na služby NPM. Tvrdí sa, že nedostatok bol odstránený a logy boli vyčistené ešte pred útokom na NPM. Prístup k logom, ktoré obsahovali verejné heslá, mali iba jednotliví zamestnanci GitHub.
Zdroj: opennet.ru
