Getty Images/iStockphoto
Attaques par rebond via le service Polyfill.io
En février, une société chinoise du nom de Funnull a acheté le domaine Polyfill.io, ce qui a suscité l’inquiétude de la communauté de l’informatique quant aux menaces pesant sur la chaîne logistique du logiciel.
Des acteurs malveillants exploitent le service populaire Polyfill.io pour mener des attaques par rebond à grande échelle en exploitant la chaîne logistique du logiciel.
Dans un billet de blog publié mardi, des chercheurs de l’entreprise néerlandaise de cybersécurité Sansec ont révélé une campagne massive de compromission de la chaîne logistique du logiciel impliquant Polyfill.io, un service de bibliothèque JavaScript largement utilisé. Sansec a découvert que des acteurs malveillants avaient injecté des charges utiles Polyfill malveillantes dans plus de 100 000 sites web. Les chercheurs ont initialement observé l’activité à partir de février, après l’acquisition du domaine Polyfill.io et du compte GitHub par Funnull, une société chinoise.
Sansec souligne que le domaine a injecté des logiciels malveillants dans des terminaux mobiles par l’intermédiaire de tout site web qui l’intègre en utilisant le domaine cdn.polyfill.io. Bien que la bibliothèque open source soit utilisée pour assurer le support d’anciens navigateurs, la portée potentielle de l’attaque est importante. SanSec estime que plus de 100 000 sites, dont Intuit et le Forum économique mondial, utilisent polyfill.
La manipulation des fonctions et des comptes GitHub pour mener des attaques en compromission de la chaîne logistique du logiciel est une tendance croissante en 2024.
« Le code polyfill est généré dynamiquement sur la base des en-têtes HTTP, de sorte que de multiples vecteurs d’attaque sont probables », indique Sansec dans son blog.
Les chercheurs ont enquêté sur un incident où polyfill a été malicieusement utilisé pour rediriger les utilisateurs mobiles vers un site de paris sportifs à l’aide d’un faux domaine Google Analytics. Sansec avertit que le code avait été écrit avec une protection contre la rétro-ingénierie et qu’il ne s’activait que sur des appareils spécifiques et à des heures précises. Plus inquiétant encore, le code ne s’activait pas lorsqu’il détectait un utilisateur administrateur et retardait l’exécution lorsqu’un service d’analyse web était trouvé.
« L’auteur original de polyfill recommande de ne pas l’utiliser du tout, car les navigateurs modernes n’en ont plus besoin de toute façon », relève Sansec.
Sansec a mis à jour son blog mercredi en indiquant subir des attaques en DDoS depuis la publication de son étude sur Polyfill.io. En outre, les chercheurs ont indiqué que Namecheap avait suspendu le nom de domaine, ce qui « élimine le risque pour l’instant ». Ils avaient précédemment noté que Funnull avait enregistré plusieurs noms de domaines de secours pour Polyfill.io auprès de Namecheap et d’autres bureaux d’enregistrement de noms de domaine.
Funnull a publié une déclaration sur X, anciennement Twitter, mercredi, réfutant toute implication du service Polyfill.io dans une activité malveillante.
Someone has maliciously defamed us. We have no supply chain risks because all content is statically cached. Any involvement of third parties could introduce potential risks to your website,
— Polyfill (@Polyfill_Global) June 26, 2024
but no one would do this as it would be jeopardize our own reputation.
We have already…
Circonscrire la menace
Cloudflare a annoncé mercredi avoir pris des mesures drastiques contre Polyfill.io et Funnull qui suppriment essentiellement le domaine de son CDN. Comme SanSec et d’autres fournisseurs, Cloudflare a observé que des acteurs malveillants utilisaient le service pour injecter du code JavaScript malveillant dans les navigateurs des utilisateurs. Les chercheurs ont conseillé aux utilisateurs de ne pas faire confiance au service de bibliothèque JavaScript pour de nombreuses raisons, notamment les fausses déclarations affichées à propos de Cloudflare sur le site web Polyfill.io.
Cloudflare a conseillé de supprimer complètement le service des sites web.
« Il s’agit d’une menace réelle pour l’ensemble de l’Internet, compte tenu de la popularité de cette bibliothèque », écrit Cloudflare dans un billet de blog. « Au cours des dernières 24 heures, nous avons mis en place un service de réécriture automatique d’URL JavaScript qui réécrira tout lien vers polyfill.io trouvé sur un site web proxyé par Cloudflare en un lien vers notre miroir sous cdnjs. Cela évitera d’interrompre la fonctionnalité du site tout en atténuant le risque d’une attaque sur la chaîne logistique ».
Cloudflare a ajouté que la fonction est activée automatiquement pour tout site web utilisant son offre gratuite. En février, Cloudflare a créé son propre miroir du site Polyfill.io en raison des soupçons qui pesaient sur le nouveau propriétaire du domaine, Funnull. À l’époque, Cloudflare a souligné que Funnull était une société relativement inconnue, ce qui a suscité des craintes pour l’intégrité de la chaîne logistique.
« Le nouveau propriétaire était inconnu dans le secteur et n’avait pas la confiance nécessaire pour gérer un projet tel que polyfill.io. L’inquiétude, soulignée même par l’auteur original, était que s’ils devaient abuser de polyfill.io en injectant du code supplémentaire dans la bibliothèque, cela pourrait causer des problèmes de sécurité de grande envergure sur Internet, affectant plusieurs centaines de milliers de sites web », peut-on lire dans le billet de blog.
Sur la piste de l’acteur malveillant
Cloudflare a ajouté que ses inquiétudes concernant les attaques sur la chaîne logistique se sont concrétisées mardi lorsque les utilisateurs de Polyfill.io ont été redirigés vers des sites malveillants. Le blog souligne que Cloudflare n’a pas bloqué le domaine en raison de crainte de pannes généralisées. Cloudflare a déclaré que les estimations montrent que polyfill.io est utilisé « sur près de 4 % de tous les sites web ».
Le fournisseur de services Cloud Fastly a également créé un miroir de Polyfill.io avant l’acquisition de Funnull, citant des préoccupations similaires.
D’autres noms de domaine impliqués ont été identifiés : bootcss[.]com, bootcdn[.]net, staticfile[.]org, mais également staticfile[.]net, unionadjs[.]com, xhsbpza[.]com, union.macoms[.]la, et newcrbpc[.]com. Le lien entre ces noms de domaine est un identifiant Cloudflare trouvé dans le dépôt GitHub de la librairie.
Un chercheur en sécurité a en outre trouvé des références suggérant qu’il pourrait s’agir là d’une campagne trouvant son origine en juin 2023.