Le typosquatting n'est plus une simple arnaque réservée aux naïfs qui tapent mal une URL. Désormais, les attaquants enregistrent des noms de domaine quasi identiques à ceux de bibliothèques logicielles populaires. Lorsqu'un développeur commet une erreur de frappe en installant un paquet, son système d'intégration continue télécharge du code malveillant sans que personne ne s'en aperçoive. Le problème passe d'un utilisateur à l'ensemble de la chaîne d'approvisionnement.
Comment les attaquants exploitent les processus automatisés 🔍
Les attaquants publient des paquets dans des dépôts publics comme npm ou PyPI avec des noms tels que requets au lieu de requests. Les outils CI/CD, qui exécutent des installations sans supervision humaine, sont la cible parfaite. En ne vérifiant pas chaque dépendance, le système télécharge le paquet malveillant. Une fois à l'intérieur, le code peut voler des identifiants, injecter des portes dérobées ou modifier le binaire final. La détection est complexe car le nom est presque identique au nom légitime.
Le développeur qui a mal tapé et déployé une porte dérobée 🛠️
Imaginez un développeur endormi tapant pip install collerful-stuff au lieu de colorful-stuff. Son CI l'accepte joyeusement, sans poser de questions. Le paquet malveillant s'installe, salue l'attaquant et lui ouvre un VPN privé vers la base de données de production. Tout cela à cause d'une seule lettre de différence. Le pire, c'est que le développeur accuse le clavier, mais le vrai coupable est le système qui fait aveuglément confiance à tout nom qui ressemble au bon.