Direct naar de inhoud
Software Supply Chain Security

npm-mirrors voor fake CAPTCHA: phishing uitgelegd

npm-mirrors fake CAPTCHA

Een nieuwe phishingcampagne laat zien hoe creatief aanvallers misbruik kunnen maken van ogenschijnlijk legitieme software-infrastructuur. In dit geval draait het om npm-mirrors fake CAPTCHA: aanvallers plaatsen HTML-logica in npm-pakketten en gebruiken daarna mirrors zoals unpkg om een “vertrouwde” nep-Cloudflare-verificatiepagina te laten renderen.

De kern is belangrijk: de onderzoekers benadrukken dat de payload in een pakket in essentie uit één HTML-pagina bestaat. Het gevaar schuilt echter niet in het “infecteren van ontwikkelaars die installeren”, maar in het inzetten van de registry en mirror-diensten als opslag en distributiemechanisme voor phishing.

Hoe npm-mirrors fake CAPTCHA mogelijk maken

Bij deze campagne wordt een cluster van 24 npm-pakketten gebruikt als vrije phishing-infrastructuur. Sommige pakketten zouden zelfs nog te downloaden zijn. In plaats van ontwikkelaars te besmetten, maken de aanvallers gebruik van het feit dat npm-mirrors content live en volledig gerenderd aan bezoekers aanbieden.

Concreet: zodra een kwaadwillige link naar een mirror-bestand verwijst (bijvoorbeeld een unpkg-achtige URL naar index.html binnen een pakketversie), krijgt de bezoeker een pagina te zien die sterk lijkt op een echte CAPTCHA-check. Door de vormgeving en flow lijkt het alsof je eerst moet verifiëren bij een betrouwbare partij.

Wat er gebeurt als je zo’n nepverificatiepagina opent

De HTML-pagina bevat niet alleen de presentatie van de nep-Cloudflare CAPTCHA, maar ook JavaScript om een request naar een externe server te sturen. Vervolgens wordt de bezoeker omgeleid naar een externe site die door de aanvaller wordt beheerd.

Dit is waar de phishing in de praktijk tot actie komt: het systeem stuurt slachtoffers via de “verificatie” door naar een volgende stap met ongewenste doeleinden. Volgens de onderzoekers kan dat uiteindelijk leiden tot het deployen van malware of andere frauduleuze handelingen.

Van typosquatting naar een alternatief omleidingsmechanisme

In eerdere iteraties zou de externe request gestuurd zijn naar een typosquat domein dat de Microsoft-loginpagina nabootste (in de bron wordt genoemd: login.microsofte.live). Toen dit domein op een gegeven moment door Chrome Safe Browsing werd geblokkeerd, zou de actor hebben geschakeld naar een andere aanpak: gebruikmaken van een publieke key-value store.

Daarbij wordt de dienst api.keyval.org genoemd als vervanger. Het doel blijft hetzelfde: de “verificatie” is de lokroep, maar via een technische omweg wordt de echte omleidings-URL uitgelezen en gedecodeerd.

KeyVal als dead drop resolver (DDR)

De onderzoekers beschrijven dat de gekozen key-value service kan werken als een soort dead drop resolver. Dat betekent: de aanvaller kan een waarde klaarzetten (een sleutel/antwoord), terwijl de HTML-pagina van het slachtoffer de juiste waarde ophaalt met een REST-achtige request op basis van een key.

Zo verandert de legit ogende infrastructuur in een schakelpunt voor de phishingflow. In de waargenomen configuratie wordt de gebruiker vervolgens naar een legitieme ChatGPT-website geleid. Maar de onderzoekers waarschuwen dat dezelfde logica later geconfigureerd kan worden om slachtoffers naar ClickFix of andere phishingdomeinen te sturen.

Welke npm-pakketten zijn betrokken?

De bron noemt een lijst van 24 npm-pakketnamen die in deze campagne worden gebruikt. Daarbij gaat het om onder andere (niet uitputtend weergegeven) namen als bzgxcuite2, prezdentkxheiw, passport811, vxhjkseuiaqkb en verschillende andere varianten met lange alfanumerieke reeksen, plus één scoped pakketnaam: @worrisome/reutil.

Omdat mirrors zoals unpkg bestanden hosten op basis van pakketnaam en versie, kan de aanvaller door het kiezen van specifieke versies en links gericht sturen op welke content live wordt aangeboden aan bezoekers.

Waarom dit anders is dan “gewone” malware via npm

In veel supply chain-verhalen gaat het om pakketten die ontwikkelaars installeren en daarbij code uitvoeren. In deze campagne zit het anders: de aanvallers zien npm en de mirrors vooral als betrouwbare opslag en distributie.

De onderzoekers leggen dat verband expliciet: malware is niet alleen “code die data steelt van een machine”, maar kan ook bestaan uit misbruik van infrastructuur als opslag en persistente distributie. Het idee is dat npm-pakketten (en vooral mirror-content) lang kunnen blijven doorlopen, zelfs nadat een pakket uit de officiële store is verwijderd.

De link met eerdere misbruikpatronen

Dit is niet de eerste keer dat aanvallers CDN- of mirror-functionaliteit gebruiken om redirects en phishing te faciliteren. In oktober 2025 werd door Socket beschreven hoe 175 npm-pakketten unpkg’s content delivery network konden inzetten om gebruikers naar credential harvesting-pagina’s te sturen binnen een campagne met de codenaam Beamglea.

Dat herhaalt het algemene patroon: kwaadwillenden zoeken niet alleen naar nieuwe malware, maar naar nieuwe manieren om legitieme infrastructuur te gebruiken voor payloads en omleidingen.

Praktische signalen en acties voor organisaties

Niet elk security-team kan direct ingrijpen op alle mirrors, maar je kunt wel het risico verkleinen. Denk aan het herkennen van omleidingsketens en het beperken van onbedoelde klikken op “verificatie” prompts.

  • Beperk externe links in werkstromen: laat medewerkers niet zomaar verificatieflows openen op basis van een onverwachte URL.
  • Let op domein- en subdomeinvarianten: typosquatting is een terugkerend element in dit soort campagnes.
  • Gebruik webbeveiliging en threat intelligence: bloklijsten en safe browsing helpen, maar de bron geeft ook aan dat aanvallers dan snel schakelen.
  • Bekijk je supply chain beleid: controleer naast code ook welke content en redirects in je omgeving mogelijk zijn via third-party hosting.

Als je daarnaast wilt snappen hoe misleiding via “schijnverificatie” en het omzeilen van verdediging kan werken, kan dit gerelateerde artikel helpen: Silent patches: waarom ze je verdediging misleiden.

Conclusie: neem npm-mirrors fake CAPTCHA serieus

De boodschap van de onderzoekers is helder: npm-mirrors fake CAPTCHA is een voorbeeld van infrastructuurmisbruik. Aanvallers verpakken phishinglogica in een schijnbaar onschuldige HTML-content binnen npm-pakketten en profiteren vervolgens van het feit dat mirrors die content live aanbieden op een vertrouwde domeinnaam.

Dat maakt het risico niet alleen relevant voor software supply chains, maar ook voor het webgedrag van eindgebruikers: wie een “CAPTCHA-check” opent via zo’n mirror-link, kan alsnog worden omgeleid naar door aanvallers beheerde bestemmingen. Met passende webbeveiliging, linkbewustzijn en een scherp supply chain beleid blijft de impact in de praktijk beter te beheersen.

Wil je verder lezen over hoe aanvallen via legitieme infrastructuur kunnen lopen? Neem dan ook eens een kijkje bij Trojanized npm-pakketten leveren RedC2 Linux implant.

Bron: https://thehackernews.com/2026/08/24-npm-packages-abuse-unpkg-mirrors-to.html