Aller au contenu
Sécurité medium

ua-parser-js (npm)

3 min de lecture
Point de compromission dans la chaîne Rupture · étape Registres
Source
amont
Dépendances
deps
Build & CI
ci
Packaging
artefact
Release
provenance
Registres
Registres
Déploiement
admission
Runtime
exécution
Rayon d'explosion — compromission à l'étape Registres, propagation possible aux consommateurs. Domaines : Intégration, Release, Déploiement
Gravité élevé
Compte npm du mainteneur détourné ; versions malveillantes publiées, installant un cryptomineur et un voleur d'identifiants.
7 M+/sem
téléchargements
3 versions
0.7.29/0.8.0/1.0.0
minage
charge déposée
22 oct.
détournement (2021)

En bref

Date
22/10/2021
Gravité
Élevé
Étape de la chaîne
Registres
Domaines SOCLE
Intégration+ Release, Déploiement

Que s'est-il passé ?

Contexte

Le 22 octobre 2021, le compte du développeur de ua-parser-js (7+ M de téléchargements/semaine) est détourné, permettant la publication de versions malveillantes.

Mécanisme

Les versions piégées (0.7.29, 0.8.0, 1.0.0, choisies pour toucher un maximum d'utilisateurs via les règles de version) téléchargent un binaire externe exécuté avec des arguments de pools de minage. Une vague de spam masquait les e-mails d'alerte de npm.

Impact

Très large exposition vu la popularité du paquet ; le développeur a rapidement déprécié les versions et alerté. L'attaque est reliée à la campagne klow/klown/okhsa.

Parades

MFA sur les comptes de publication, détection de republication anormale, surveillance d'egress (téléchargement de binaire, minage), et épinglage des versions.

Chronologie de l'attaque

22 octobre 2021
Détournement du compte

Le compte npm du mainteneur est piraté ; les versions 0.7.29, 0.8.0 et 1.0.0 déposent un mineur, puis sont rapidement dépréciées.

Comment l'attaquant a procédé

Cet incident met en jeu les vecteurs d'attaque suivants du catalogue SOCLE ; chacun renvoie à sa fiche, où l'on trouve les exigences qui le neutralisent :

La leçon à en tirer

Ce qu'il faut retenir

2FA publication ; détection de republication anormale ; quarantaine des nouvelles versions.

Les exigences SOCLE qui auraient limité cet incident

Cet incident se rattache à 4 exigences du référentiel, par domaine. Les satisfaire n'aurait pas forcément tout empêché, mais aurait réduit la probabilité de l'attaque, limité son impact ou accéléré sa détection :

Pour aller plus loin

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn