I NPM-pakkeopbevaringen blev der opdaget et sikkerhedsproblem, der tillader pakken ejer at tilføje enhver bruger som vedligeholder uden at modtage samtykke fra denne bruger og uden at informere dem om handlingen. Problemet forværres af, at efter at en ekstern bruger er blevet tilføjet som vedligeholder, kunne den oprindelige pakke ejer fjerne sig selv fra listen over vedligeholdere, og den eksterne bruger forbliver den eneste ansvarlige for pakken.
Problemet kunne udnyttes af skabere af ondsindede pakker til at tilføje kendte udviklere eller store virksomheder som vedligeholdere for at øge brugernes tillid og skabe en illusion om, at anerkendte udviklere har ansvar for pakken, mens de i virkeligheden ikke har noget med den at gøre og endda ikke kender dens eksistens. For eksempel kunne en angriber offentliggøre en ondsindet pakke, ændre vedligeholderen og invitere brugerne til at teste en ny udvikling fra en stor virksomhed. Sårbarheden kunne også anvendes til at smæde ryggen på bestemte udviklere ved at præsentere dem som initiativtagere til tvivlsomme handlinger og ondsindede aktiviteter.
GitHub blev informeret om problemet den 10. februar og løste det på npmjs.com den 26. april ved at indføre obligatorisk bekræftelse af brugernes samtykke til at tilslutte sig et andet projekt. Det anbefales til udviklere af mange NPM-pakker at kontrollere, om der er tilknyttede bindninger i deres pakker, der er tilføjet uden deres samtykke.
Kilde: opennet.ru
