Skip to main content
Blog
Blog

Supply Chain Risico Eindigt Niet Bij NPM

Door alleen NPM (of een ander register) te controleren, ben je niet beschermd tegen aanvallen via third-party scripts.

May 30, 2024 3 min read
Illustratie dat client-side security niet alleen om npm draait
Inhoudsopgave

Kort samengevat: door de browser opgehaalde third-party scripts buiten de dekking van registry-scanning

  • Groen is niet klaar: Iedereen behandelt een groene Socket-scan als supply-chain-afgerond, maar Amerikaanse supply-chain-aanvallen stegen met 115% tussen 2022 en 2023 en 95% van de door de browser opgehaalde scripts heeft geen bescherming tegen DNS-hijack, dus het register is één laag van vele.
  • Volledige codecontrole: cside controleert de volledige code van elke third-party bron 100% van de tijd voordat die in de browser van een gebruiker rendert, monitort meer dan 60 attributen met AI en neemt historische context mee, wat een registry-scanner niet kan zodra code dynamisch aan productiesessies wordt geleverd.
  • Het onbewaakte stuk: Socket regelt de installatiestap, de WAF van Cloudflare regelt inbound en Hadrian en Cycognito regelen het externe oppervlak, dus de beslissing is niet welke je aanhoudt, maar of het browser-runtime-stuk tussen install en inbound op dezelfde manier gemonitord wordt of aan vertrouwen wordt overgelaten.

Weinig tijd? Bekijk cside's in-browser Magecart- en skimmerblokkering. Dit dekt alles hieronder in één deployment.

Supply Chain aanvallen zijn tegenwoordig een topprioriteit. Het aantal van deze aanvallen in de VS steeg met 115% tussen 2022 en 2023, volgens Statista. Tools zoals Socket en Coana detecteren schadelijke code in registers zoals NPM. Maar het supply chain risico eindigt daar niet.

Diagram van client-side beveiligingsrisico's door dynamisch geïnjecteerde third-party content

Sommige tools zijn third-party scripts die door de browser van de gebruiker worden opgehaald. Door alleen NPM (of een ander register) te controleren, ben je niet beschermd tegen aanvallen via deze scripts.

Deze scripts, gebruikt voor marketing tracking, advertenties, captchas en nog veel meer, worden vaak voor het gemak op hele sites geïmplementeerd. Deze scripts zijn krachtig en kunnen dingen zoals code herschrijven, gebruikers omleiden, gegevens exfiltreren en zelfs crypto minen in je browser.

De leveringsmethode van deze scripts maakt dynamisch gedrag mogelijk. Elke gebruiker kan elke keer een andere levering krijgen, vooral wanneer een script is gecompromitteerd.

Naarmate meer mensen betere dependency security benaderingen adopteren, worden dynamische scripts die browser-side worden opgehaald een steeds interessantere en substantiëlere aanvalsvector. Dit maakt het controleren van alleen bronnen een riskant spel. De betere benadering is het controleren van de volledige code elke keer dat deze wordt geleverd, wat cside doet.

Bovendien worden veel van deze scripts niet onderhouden door tech-gerichte bedrijven. Tools kunnen verwaarloosd raken wanneer bedrijven worden opgeheven of overgenomen, waardoor ze vatbaar worden voor kaping. Zelfs gerenommeerde, veelgebruikte diensten zijn niet zonder fouten, zoals blijkt uit cdnjs-problemen in 2021 of deze persoon die een verlopen politie- en sociale-dienstendomein in België kocht en op die manier toegang kreeg tot privé-informatie.

Tot slot missen 95% van deze scripts bescherming tegen DNS-hijacks. Zelfs het netwerk waarop je zit kan invloed hebben op het script dat je krijgt.

Wat te doen aan dit alles

Dit is wat we aanbevelen:

Gebruik een tool zoals Socket (of alternatieven) voor supply chain risico op het register en gebruik cside om het gedrag van third-party scripts browser-side te monitoren. We controleren de volledige code van third-party bronnen, 100% van de tijd, voordat deze wordt geleverd aan de browser van je gebruiker. Zo beveiligen we deze kant van de supply chain volledig.

Ten slotte moet je je infrastructuur beschermen tegen inkomende aanvallen. Gebruik daarvoor iets zoals Cloudflare's Web Application Firewall.

Meer niche dingen zoals formulier-uploads en bot-detectie kunnen specialistische tooling vereisen.

Gebruik proactieve monitoring tools zoals Hadrian of Cycognito om het dreigingsoppervlak te monitoren.

Diagram van de supply-chain-risicolagen voorbij npm-pakketten

Simon Wijckmans
Founder & CEO

Founder and CEO of cside. Previously a product manager on Cloudflare Page Shield (now Cloudflare Client-Side Security). Co-chair of the W3C Anti-Fraud Community Group and a Forbes 30 Under 30 honoree. Building accessible security against client-side attacks, web security is not an enterprise-only problem.

FAQ

Frequently Asked Questions

Build-time dependencies zijn één risicobron, maar runtime third-party scripts, CDN's en dynamisch geladen content draaien ook in de browser. Een aanvaller hoeft maar één van die lagen te compromitteren om bij je gebruikers te komen.

CDN's, tagmanagers, A/B-testtools, analytics, betaal-SDK's en elk script dat scripts laadt. Client-side monitoring zoals cside volgt deze allemaal op runtime, niet alleen bij installatie.

Monitor en beveilig je third-party scripts

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Start gratis, of probeer Business met een proefperiode van 14 dagen.

cside-dashboardinterface met scriptmonitoring en beveiligingsanalyses
Related Articles
Boek een demo

Wil je dit doornemen met een engineer?

Dertig minuten, op je eigen site. Geen slides.

We laten je zien:

Welke scripts van derden er nu op je site draaien
Hoe je ervoor staat op PCI DSS 6.4.3 en 11.6.1
Welk deel van je verkeer uit bots en AI-agents bestaat

Liever gewoon een vraag stellen?

Vrije momenten zoeken…

Alleen echte mensen. Wij merken het.

Lukt het boeken niet? Agenda in een nieuw tabblad openen

Wat wil je oplossen?

Vertel het ons in één zin, dan komen we terug met iets bruikbaars in plaats van een standaardverhaal.

Waar we meestal mee helpen:

Zien welke scripts van derden op je site draaien
Bewijs voor PCI DSS 6.4.3 en 11.6.1
Bots, AI-agents en accountovername

Liever meteen een moment inplannen? Kies een tijdstip