Cybersecurity-onderzoekers hebben details onthuld van een nieuwe campagne die een cluster van 24 npm-pakketten gebruikt als gratis phishing-infrastructuur voor het omleiden naar nep-CAPTCHA-pagina’s in ClickFix-stijl.
“Hoewel de malware eenvoudigweg een enkele HTML-pagina in het npm-pakket is, en het downloaden ervan geen schade zou aanrichten, is het gebruik van npm door de bedreigingsactor niet bedoeld om de ontwikkelaars te infecteren die het installeren, maar om het register en de spiegelservers te gebruiken als een veilige, gevalideerde opslag voor de malware”, aldus OX Security-onderzoekers Moshe Siman Tov Bustan en Vitalii Chepurko.
De lijst met npm-pakketten, waarvan sommige nog steeds beschikbaar zijn om te downloaden, vindt u hieronder –
- bgzxcuite2
- prezdentkxheiw
- egair0810
- mnteckets
- airdzticket
- Egypte0811
- paspoort811
- vxhjkseuiaqkb
- ndmushdkeqe
- ndmxchdjxn2
- ndmfguyhoxc3
- mjsdqwocvn
- m2fcsfyjkuxb
- m3fdfocdoewn
- @zorgelijk/reutil
- testdgdbcsd
- tesgfvbncsdbcv
- mndsxcusiwlk1
- mn2adskhweox
- mn3sadkoiewu
- mn4xcouzvhus
- mbxcnsuwgs1
- skxcmwuncbg2
- mobielwaefhxc3
De campagne richt zich specifiek op mirrors zoals unpkg. Eenmaal gespiegeld op deze services, wordt het HTML-bestand (bijvoorbeeld “unpkg(.)com/[email protected]/index.html”) een live, volledig weergegeven nep-Cloudflare CAPTCHA-pagina die wordt gehost op een vertrouwd domein, maar omleidt naar de ClickFix phishing-infrastructuur.
Als gevolg hiervan wordt iedereen die een link opent die op de npm-mirror wordt gehost, misleid om onbedoelde acties uit te voeren die kunnen leiden tot de inzet van malware. Hierbij wordt een nep-Cloudflare-verificatiepagina weergegeven, die het doelwit vervolgens naar een externe website stuurt die door de aanvaller wordt beheerd.
De HTML-pagina bevat de logica om de valse CAPTCHA-verificatieprompt te bedienen, evenals JavaScript dat nodig is om een verzoek naar een externe server te sturen. Uit eerste versies van de malware bleek dat deze het verzoek naar een typosquat-domein stuurden dat de inlogpagina van Microsoft nabootst (“login(.)microsofte(.)live”).
Maar nadat het domein was toegevoegd aan de Safe Browsing-blokkeerlijst van Google Chrome, zou de bedreigingsacteur achter de campagne hebben gereageerd door over te schakelen naar KeyVal (“api.keyval(.)org”), een gratis, openbare sleutel-waarde-opslag waarmee ontwikkelaars een sleutel-waarde-paar kunnen instellen of een waarde kunnen ophalen die aan een sleutel is gegeven met behulp van een REST API.
Daarbij verandert het de legitieme service in een dead drop-resolver (DDR) en gebruikt deze om de URL waarnaar het slachtoffer wordt doorgestuurd te extraheren en te decoderen.
“Momenteel stuurt de externe logica de gebruiker door naar de legitieme ChatGPT-website, maar deze kan worden bewapend om ClickFix of andere phishing-domeinen af te leveren wanneer de aanvaller dit heeft geconfigureerd”, aldus de onderzoekers.
Dit is niet de eerste keer dat deze aanpak door slechte actoren wordt misbruikt. In oktober 2025 detailleerde Socket een reeks van 175 npm-pakketten die het content delivery network (CDN) van unpkg.com gebruikten om omleidingsscripts te hosten die slachtoffers naar pagina’s voor het verzamelen van inloggegevens stuurden als onderdeel van een campagne met de codenaam Beamglea.
“Dreigingsactoren blijven nieuwe en nieuwe technieken vinden en gebruiken, niet alleen om malware te verspreiden, maar ook om legitieme infrastructuur te gebruiken om hun ladingen en gegevens op te slaan”, aldus OX Security.
“Als we malware beschouwen als codefamilies die gegevens rechtstreeks stelen van de machine waarop ze draaien, kunnen we andere ideeën over het hoofd zien, zoals misbruik van de infrastructuur, het gebruik van npm en zijn spiegelservers als gratis opslag, en persistentie – aangezien npm-pakketten voor altijd in spiegelservers kunnen blijven bestaan, zelfs nadat ze uit de officiële winkels zijn verwijderd.”