Sécurité : WebAssembly est un standard visant à proposer de meilleures performances que JavaScript pour exécuter des applications Web. Mais WebAssembly n'est pas si populaire: seuls 1 639 sites du Top 1 Million utilisent WebAssembly et la plupart le font à des fins malveillantes.

Selon une étude universitaire publiée l'année dernière, environ la moitié des sites Web qui utilisent WebAssembly, une nouvelle technologie Web, l'utilisent à des fins malveillantes.

WebAssembly est un langage bytecode de bas niveau qui a été créé après une collaboration conjointe entre tous les principaux navigateurs.

Il introduit un nouveau format de fichier binaire pour la transmission de code d'un serveur Web vers un navigateur. Une fois qu'il atteint le navigateur, le code WebAssembly (Wasm) s'exécute à une vitesse quasi native, similaire au code compilé C, C ++ ou Rust.

WebAssembly a été créé pour favoriser la vitesse et les performances. En raison de son format binaire, le code Wasm est plus petit que sa forme JavaScript équivalente, mais aussi beaucoup plus rapide lors de l'exécution. Cela fait de WebAssembly la prochaine incarnation d'Adobe Flash, permettant aux sites Web d'exécuter du code complexe nécessitant beaucoup de CPU sans geler un navigateur, une tâche pour laquelle JavaScript n'a jamais été conçu ou optimisé.

WebAssembly a été proposé pour la première fois en 2017, a été approuvé en tant que norme officielle du W3C (World Wide Web Consortium) fin 2019. Il est actuellement pris en charge par tous les principaux navigateurs, sur les ordinateurs de bureau et les appareils mobiles.

publicité

Évaluation de l'utilisation de WebAssembly

Dans un projet de recherche universitaire menée l'année dernière, quatre chercheurs de l'Université technique de Braunschweig, en Allemagne, ont examiné l'utilisation de WebAssembly sur les sites web du Top 1 million Alexa, afin de mesurer la popularité de cette nouvelle technologie.

Pendant une période de quatre jours, l'équipe de recherche a chargé chacun des sites du Top 1 million, ainsi que trois pages aléatoires, et a mesuré l'utilisation de WebAssembly, mais également le temps nécessaire à chaque site pour exécuter le code.

Au total, l'équipe de recherche a déclaré avoir analysé l'utilisation de WebAssembly sur 947704 sites du Alexa Top 1 million (certains étaient hors ligne ou avaient expiré pendant les tests), analysant le code d'un total de 3465320 pages individuelles.

Dans l'ensemble, nous avons découvert 1 639 sites utilisant 1 950 modules Wasm, dont 150 échantillons uniques ", a déclaré l'équipe de recherche.

"Cela signifie que certains modules Wasm sont suffisamment populaires pour être trouvés sur de nombreux sites différents", ont-ils déclaré. "Dans un cas, le même module était présent sur 346 sites différents."

"D'un autre côté, 87 échantillons sont complètement uniques et n'ont été trouvés que sur un seul site, ce qui indique que de nombreux modules sont un développement personnalisé pour un site Web."

Principalement utilisé pour le cryptomining et les jeux

Mais l'équipe de recherche a également examiné la nature du code Wasm que les sites Web chargeaient. Ils ont analysé manuellement le code, examiné les noms de fonction et les chaînes intégrées, puis cartographié les échantillons de code similaire.

Les chercheurs ont déclaré que la grande majorité des échantillons de code qu'ils avaient analysés étaient utilisés pour l'extraction de cryptomonnaie (32% des échantillons) et les jeux en ligne (29,3% des échantillons).

Cependant, alors que la grande majorité des échantillons ont été utilisés à des fins légitimes, deux catégories de code Wasm se sont révélées intrinsèquement malveillantes.

La première catégorie était le code WebAssembly utilisé pour l'extraction de cryptomonnaie. Ces types de modules Wasm ont souvent été trouvés sur des sites piratés, dans le cadre d'attaques dites de cryptojacking (drive-by mining).

La deuxième catégorie faisait référence au code WebAssembly contenu dans des modules Wasm qui masquaient intentionnellement leurs contenus. Ces modules, selon l'équipe de recherche, ont été trouvés dans le cadre de campagnes de publicité.

L'équipe de recherche affirme que le code WebAssembly de ces deux catégories représentait 38,7% des échantillons qu'ils ont trouvés, mais les modules ont été utilisés sur plus de la moitié des sites Web qu'ils ont analysés, principalement parce que le code était souvent réutilisé sur plusieurs domaines, faisant partie d’opérations de piratage à grande échelle.

Les chercheurs affirment que la tendance à utiliser le code WebAssembly à des fins malveillantes risque de gagner du terrain dans un avenir proche.

"Nous ne voyons actuellement que la pointe de l'iceberg d'une nouvelle génération d'obfuscations de logiciels malveillants sur le Web", a déclaré l'équipe de recherche.

Les universitaires recommandent que les entreprises de cybersécurité investissent dans la mise à jour des produits de sécurité pour gérer le nouveau spectre de menaces qui proviendra de cette nouvelle technologie.

Source : ZDNet.com

