Qu'est-ce que le Slopsquatting et Comment l'Éviter

Si vous avez vu ce terme désagréable flotter, vous vous demandez probablement ce qu’est le slopsquatting et comment cela pourrait vous affecter. Cette attaque désagréable n’est pas la plus facile à repérer, mais il existe des moyens de l’éviter pour vous protéger.
Qu’est-ce que le Slopsquatting
Tout commence par les hallucinations de l’IA, qui sont des choses que l’IA invente. Dans le cadre du slopsquatting, les outils d’IA suggèrent des paquets open source qui n’existent en réalité pas pour que les développeurs les utilisent dans leur code.
Les cybercriminels ont découvert que les hallucinations de l’IA se répètent souvent. Ils profitent de ce défaut en créant des paquets malveillants utilisant ces noms halluciné et les téléchargent sur des hôtes de dépôts de code de confiance tels que GitHub. Lorsque les développeurs demandent à leur plateforme d’IA préférée de suggérer un paquet open source, le chatbot suggère l’un des noms halluciné que les cybercriminels utilisent.

Le résultat est que les développeurs insèrent ces paquets malveillants dans leur logiciel. Une fois qu’il fonctionne, les dégâts sont faits et les attaquants accèdent à tous les appareils sur lesquels le code est exécuté.
Bien que cela puisse ne pas sembler être un problème majeur, une étude a révélé que sur 16 modèles majeurs de génération de code IA, presque 20 % des paquets recommandés n’existaient pas. Pire encore, 43 % des noms de paquets halluciné se répétaient à chaque fois sur 10 exécutions avec le même prompt. Cela facilite beaucoup le choix des noms par les cybercriminels et la suggestion et l’utilisation répétées de leurs paquets malveillants.
Dans l’étude, CodeLlama était le pire contrevenant. En revanche, GPT-4 Turbo avait le moins d’hallucinations. Cela ne signifie pas que vous êtes complètement en sécurité, même si le risque est moindre.
Choses à Surveiller
Que vous soyez un développeur professionnel, occasionnel ou complètement débutant, vous êtes à risque de slopsquatting. C’est en fait une forme de typosquatting, où une seule lettre est la seule différence entre un domaine légitime et sûr et un domaine malveillant. Mais, tout comme le typosquatting, le slopsquatting est évitable si vous faites attention à ces cinq choses :
- Noms de paquets légèrement mal orthographiés – Ce signal d’alerte n’est pas une garantie, surtout que la majorité des noms de paquets halluciné n’ont pas de fautes de frappe. Néanmoins, si vous remarquez quelque chose de mal orthographié, réfléchissez à deux fois avant de l’utiliser.
- Absence de discussions ou de retours – Les paquets avec peu ou pas de discussions peuvent ne pas être les plus sûrs à utiliser. Cela pourrait simplement signifier qu’ils sont tout nouveaux. Ou cela pourrait signaler qu’il s’agit d’un paquet faux qui s’appuie sur les suggestions de l’IA pour que les développeurs le trouvent et l’utilisent innocemment.
- Avertissements d’autres développeurs – Je sais qu’il est facile de se fier aux suggestions de l’IA, mais prenez un moment pour faire des recherches supplémentaires. Utilisez votre moteur de recherche préféré et voyez ce que d’autres disent sur les suggestions de paquets avant de les utiliser vous-même.
- Pas recommandé par d’autres plateformes – Si possible, essayez les mêmes ou des prompts similaires sur plusieurs plateformes de codage IA. Si un paquet est rarement ou jamais recommandé, cela pourrait être un signe majeur de slopsquatting.
- Descriptions confuses – Il devient de plus en plus courant pour les développeurs de s’appuyer sur le “vibe coding”, ce qui signifie qu’ils acceptent simplement les suggestions sans aucune vérification. Pourtant, les paquets malveillants ont souvent des descriptions confuses sur les sites où ils sont hébergés.
Vous pouvez également éviter les paquets de slopsquatting courants déjà identifiés dans la nature simplement en demandant à votre plateforme d’IA préférée une liste.

Les Précautions les Plus Importantes
Même lorsque vous savez quoi chercher, le slopsquatting est encore difficile à repérer dans de nombreux cas. Étant donné que c’est si nouveau, il faudra du temps aux experts en sécurité pour développer un processus fiable pour identifier et éliminer les paquets malveillants. De nombreuses plateformes d’IA tentent également de former leurs modèles à reconnaître les noms/paquets halluciné et à avertir les développeurs avant de les utiliser.
Jusqu’à ce que ces choses se produisent, vous avez trois façons d’empêcher un paquet malveillant de ruiner votre logiciel et tous les appareils sur lesquels il peut être installé.
La plus importante est de toujours exécuter votre code dans un environnement sécurisé et isolé. VirtualBox et VMWare sont deux des machines virtuelles les plus populaires et elles sont gratuites à utiliser. Il existe également des environnements de bac à sable basés sur le cloud, bien que la plupart ne prennent en charge que quelques langages. Replit est un favori car il prend en charge plus de 50 langages.
La deuxième est d’utiliser un outil de scan pour vérifier si un paquet est sûr ou non. J’ai trouvé que l’extension Web Socket est l’une des options les plus faciles à utiliser. Elle est gratuite et fonctionne sur de nombreux sites pour scanner avant de télécharger quoi que ce soit. Actuellement, elle est disponible pour les navigateurs basés sur Chrome et Firefox.

Enfin, vérifiez toujours tout ce que l’IA suggère. Plus vous dépendez de l’IA, plus il est facile pour les cybercriminels d’en profiter. Utilisez l’IA pour vous aider avec le codage, mais vérifiez toutes les suggestions avant de les utiliser.
Si vous devenez victime de slopsquatting, faites-le savoir aux autres développeurs. Publiez des avertissements sur les réseaux sociaux, Reddit et les hôtes de dépôts. Contactez le support de la plateforme d’IA que vous utilisez pour signaler le nom du paquet malveillant afin d’aider à mieux former les modèles d’IA. Diffuser l’information aide les autres à se protéger.