Cross-Site Scripting : un guide pour les utilisateurs de WordPress

Publié: 2021-04-21

Si vous êtes préoccupé par les scripts intersites et leur impact sur votre site Web WordPress, vous n'êtes certainement pas paranoïaque. Bien que la vulnérabilité des scripts intersites (également connus sous le nom de XSS) ne soit pas exclusive aux propriétaires de sites WordPress, ses impacts négatifs potentiels sur les sites WordPress sont extrêmement importants à comprendre.

Dans ce guide, nous allons décomposer les vulnérabilités des scripts intersites (XSS) que vous devez surveiller. Une partie de cela va devenir un peu technique, mais à la fin du guide, vous serez en mesure de prendre une décision éclairée concernant la sécurité globale de votre site WordPress en ce qui concerne les scripts intersites. De plus, vous saurez exactement quoi faire pour éviter une attaque.

Maintenant, plongeons.

Dans ce guide

    Qu'est-ce que le Cross-Site Scripting (XSS) ?

    Les scripts intersites (XSS) sont un type d'attaque de malware qui est exécuté en exploitant les vulnérabilités intersites sur n'importe quel site WordPress. En fait, c'est le moyen le plus courant pour les sites WordPress d'être piratés car il y a tellement de plugins WordPress qui ont des vulnérabilités XSS.

    Script intersites expliqué

    Qu'est-ce que le cross site scripting en termes encore plus techniques ?

    Les vulnérabilités de scriptage intersites permettent l'exécution de code JavaScript étranger sur un site Web. Cela peut être très difficile à détecter pour les propriétaires de sites WordPress, car les attaques qui exploitent la vulnérabilité peuvent être de plusieurs types.

    C'est encore plus vrai si vous utilisez un site WordPress très volumineux ou complexe avec de nombreux plugins qui fonctionnent à l'unisson.

    Les nombreux types d'attaques XSS peuvent être résumés en deux catégories distinctes :

    • Script malveillant exécuté dans le navigateur côté client
    • Script malveillant stocké et exécuté sur votre serveur, puis diffusé par un navigateur

    Dans l'un ou l'autre de ces cas, le piratage utilise une attaque de script inter-sites pour manipuler le fonctionnement de votre site, ou même voler des données critiques du site.

    Qu'est-ce qui rend les attaques XSS courantes pour les sites Web WordPress ?

    En tant qu'utilisateur de WordPress, vous savez peut-être déjà à quel point certains plugins WordPress sont complexes. En fait, certains plugins que vous utilisez sont encore plus complexes que le noyau WordPress lui-même.

    Malheureusement, plus le plugin WordPress est complexe, plus la possibilité que vous soyez confronté à des problèmes de sécurité est élevée. Les auteurs de plugins savent à quel point il est difficile de se protéger contre les attaques XSS, et cela rend vraiment leur travail tout un défi.

    Certains des géants de la technologie les plus estimés, tels que Facebook, Apple et Google, ont déjà été victimes d'attaques XSS. En fait, ils emploient des équipes entières de sécurité dédiées pour minimiser les risques de ces attaques.

    Cela devrait aider à mettre les choses dans une meilleure perspective quant à la facilité avec laquelle une attaque peut se faufiler dans un plugin WordPress, avec beaucoup moins de ressources de sécurité que les géants de la technologie.

    Vous vous demandez probablement à quel point votre site est vulnérable aux attaques de scripts intersites.

    Tout d'abord, il est important de noter que si vous maintenez tous vos thèmes et plugins à jour, vous avez déjà considérablement réduit vos risques. Cependant, il n'existe aucun moyen garanti de se protéger complètement contre une attaque XSS.

    La plupart des sites WordPress ont des vulnérabilités qui ne sont pas publiques et que les pirates peuvent exploiter. Pour cette raison, des analyses régulières de votre site sont d'une importance vitale. Plus à ce sujet plus tard.

    script intersites WordPress

    Alors que les dommages que les pirates peuvent causer avec une attaque de script inter-sites dépendent des détails exacts de leur objectif final, dans le pire des cas, l'ensemble de votre site peut être pris en charge.

    Dans d'autres cas, les pirates apporteront des modifications mineures à un site Web, ou même redirigeront un site vers un site malveillant qu'ils ont configuré.

    En d'autres termes, les pirates informatiques exploitant les vulnérabilités des scripts intersites de WordPress savent comment :

    • Piratez les sessions de vos utilisateurs en détectant les identifiants de session
    • Placer des redirections et des popups que vous n'avez pas autorisés
    • Lancer des attaques de phishing malveillantes
    • Enregistrez chaque frappe de leur victime en installant des enregistreurs de frappe
    • Voler vos informations financières, ou les informations financières d'un utilisateur du site

    Quels sont les types de scripts intersites ?

    Toutes les attaques XSS ne sont pas également dangereuses. En fait, certains sont beaucoup plus dangereux que d'autres.

    Dans certaines attaques, les pirates auront un accès complet à votre site WordPress. À ce stade, ils peuvent pratiquement en faire tout ce qu'ils veulent.

    Dans d'autres cas, l'attaque permettra à un pirate de modifier une partie de votre site. Bien qu'il ne soit pas aussi dangereux qu'un piratage XSS sur un site complet, cela peut également être très dangereux car il servira de malware à tous vos visiteurs.

    Différentes attaques de scripts intersites nécessitent qu'un pirate informatique soit un membre du site contributeur. Dans de tels cas, le danger posé est nettement inférieur.

    Comment fonctionne le Cross Site Scripting ?

    Les pirates informatiques chevronnés trouvent les vulnérabilités du site en utilisant des outils automatisés. Après avoir découvert les vulnérabilités, il suffit d'exécuter le piratage souhaité.

    Malheureusement, l'ensemble du processus de piratage peut être effectué par des bots.

    Il existe cinq manières différentes pour les pirates d'utiliser XSS pour atteindre leurs objectifs.

    1. Pirater une session utilisateur

    Une attaque XSS peut aider les pirates à accéder aux cookies. L'aspect le plus dangereux de ceci est que ce type d'attaque a révélé l'ID de session d'un utilisateur.

    La majorité des sites Web utilisent des sessions pour chaque utilisateur du site afin de définir un identifiant unique. Les sessions sont ensuite stockées dans des cookies de session à l'aide d'un script.

    Les pirates peuvent envoyer un cookie de session au site spécifique, par exemple, http://198.178.260.468/ et la demande est enregistrée dans le fichier access.log du serveur.

    Lorsque le pirate utilise les informations de session, il peut se connecter à l'un des comptes auxquels vous vous êtes connecté sans avoir besoin d'un mot de passe.

    2. Exécution d'activités non autorisées

    Dans certains cas, les pirates ne sont pas en mesure d'utiliser JavaScript pour voler le cookie souhaité. Dans ces cas, ils tenteront d'utiliser des attaques XSS pour exécuter des activités qui ne sont pas autorisées.

    Par exemple, ils peuvent engager un script qui fait apparaître un message dans votre section de commentaires et continue d'être publié à plusieurs reprises.

    Ce type d'attaque de script croisé prend généralement la forme d'un script malveillant qui se propage comme un virus à vos utilisateurs. Il peut également être utilisé pour dégrader votre site.

    3. Attaques de phishing

    Souvent, les vulnérabilités des scripts intersites de WordPress conduisent les pirates informatiques dans un schéma beaucoup plus vaste qu'une simple attaque XSS.

    Les scripts intersites peuvent conduire à des attaques de phishing sur votre site.

    En règle générale, un script malveillant commence à pousser une escroquerie de phishing sur votre site WordPress qui incitera les utilisateurs à fournir des informations très sensibles.

    C'est une attaque très dangereuse.

    4. Installation de l'enregistreur de frappe

    Ce type d'attaque implique un pirate informatique implémentant un script qui installera un enregistreur de frappe sur un site WordPress vulnérable.

    Chaque fois que votre utilisateur tape quelque chose, ce keylogger stocke les informations et les transmet au pirate. C'est un moyen rapide et facile de voler des informations de carte de crédit, des mots de passe, des informations médicales et bien plus encore.

    5. Vol d'informations sensibles

    Nous avons discuté des cookies et de la façon dont ils sont volés. Mais cette attaque particulière porte ce principe à un niveau différent.

    Imaginez un scénario où la page « banques en ligne » de votre coopérative de crédit fait l'objet d'une attaque XSS. Si un pirate utilise un script particulier, un pirate pourrait se connecter directement à votre compte courant sans validation.

    Bien qu'il ne s'agisse pas d'un nouveau concept, il s'agit d'une extension de ce que les pirates informatiques sont capables d'effectuer en utilisant des cookies de session.

    Comment protéger mon site WordPress contre les attaques de scripts intersites ?

    Le vrai problème est que les pirates professionnels continuent de proposer des variantes plus judicieuses de texte malveillant qui peuvent désormais contourner même la meilleure prévention des scripts intersites.

    C'est vraiment une sorte de jeu du chat et de la souris.

    La meilleure façon de détecter les attaques XSS est d'utiliser un plugin tel que iThemes Security Pro iThemes Security Pro dispose de plusieurs fonctionnalités de sécurité de site Web pour construire votre première ligne de défense contre les attaques de scripts intersites. (plus à ce sujet dans un peu).

    Il est également extrêmement important de coupler votre défense avec un plugin de sauvegarde WordPress comme BackupBudy qui peut restaurer un point antérieur de l'historique de votre site, si le pire devait arriver.

    De toute évidence, dans un monde parfait, des piratages comme celui-ci n'arriveraient jamais. Mais les attaques XSS sont incroyablement difficiles à protéger, ce qui fait de la sécurité renforcée de WordPress votre priorité absolue.

    Comment fonctionnent les attaques XSS

    Le fonctionnement d'une attaque dépend du type d'attaque lancée par le pirate. Et bien qu'il existe plusieurs types de scripts intersites, ils utilisent tous JavaScript pour diffuser des logiciels malveillants.

    Si vous n'êtes pas familier avec JavaScript, c'est un langage qui repose entre le code HTML de votre site Web. Il est capable de créer des variables spécifiques qui effectuent des calculs robustes.

    À vrai dire, un développeur peut utiliser JavaScript pour exécuter presque toutes les fonctions imaginables.

    Par exemple, un site WooCommerce qui accepte les paiements et les stocke dans une base de données peut utiliser JavaScript pour envoyer des informations de connexion et des détails de paiement à une autre personne.

    Lorsque des pirates exploitent cette vulnérabilité dans le code de votre site pour exécuter JavaScript, il s'agit d'une attaque XSS totale. Ce type de vulnérabilité se produit généralement presque partout sur votre site Web où les utilisateurs saisissent des données, notamment sous la forme de :

    • Pop-up
    • Formulaires de renseignements
    • Barres de recherche
    • URL

    Gardez à l'esprit que le champ de saisie des données ne doit pas nécessairement être visuel. Dans certains cas, il peut s'agir d'une variable défectueuse dans le code de votre site qui appelle des données non filtrées à partir d'une base de données ou de tout autre fichier.

    Attaques XSS persistantes ou stockées

    Supposons un instant que votre site soit un blog avec une section de commentaires ouverte. Si l'un de vos utilisateurs vous laisse un commentaire, ces données sont envoyées à la base de données et stockées.

    Il est important que votre site soit configuré pour désinfecter ces données avant de les stocker dans votre base de données. En d'autres termes, il doit vérifier si l'utilisateur a entré un commentaire légitime ou s'il s'agit d'un script malveillant.

    Sans ce contrôle en place, il peut ouvrir une faille XSS dans WordPress.

    Voilà comment cela fonctionne:

    1. Le pirate localise et exploite la vulnérabilité

    Les pirates utilisent des scanners qui effectuent des recherches sur Internet et localisent les sites présentant des vulnérabilités aux attaques de scripts intersites. Une fois qu'un site est trouvé, des scripts malveillants sont insérés dans la section des commentaires du site.

    Sans aucun contrôle en place, votre site prend le script malveillant et l'envoie à la base de données.

    2. Les visiteurs voient votre page infectée

    Pour un visiteur moyen du site, les données d'un pirate informatique ressemblent à un commentaire standard. Ce que ce visiteur ne sait pas, c'est qu'un simple commentaire est un code exécutable qui va voler les cookies.

    Toute personne visitant la page sera impactée négativement.

    3. Vol de cookies de navigateur

    La plupart des utilisateurs ont généralement plusieurs onglets ouverts sur leur navigateur à tout moment, pour des éléments tels que les médias sociaux, les e-mails, Amazon, YouTube et le site Web de leur employeur.

    Lorsqu'un utilisateur visite un site infecté et consulte la page contenant le commentaire d'un pirate informatique, le code est immédiatement exécuté et permet à un pirate informatique de voler les cookies du navigateur.

    L'attaque est appelée attaque intersites, car ils sont capables de voler les cookies de chaque site Web ouvert sur n'importe quel onglet.

    4. Exploiter les cookies volés

    À l'aide des cookies volés, un pirate informatique se fait passer pour un utilisateur de site authentifié, par exemple sur des sites commerciaux pour effectuer des achats illégaux.

    Les attaquants peuvent également voler des informations de compte, telles que des mots de passe et des noms d'utilisateur, et pirater des e-mails pour envoyer des e-mails de phishing à toute une liste de contacts.

    Les possibilités malveillantes sont apparemment infinies.

    Attaques XSS non persistantes ou réfléchissantes

    Il ne s'agit pas d'une attaque contre les visiteurs du site, mais d'une attaque contre le site Web.

    Si vous êtes propriétaire d'un site WordPress, vous avez probablement vous-même de nombreux onglets de navigateur ouverts.

    Souvent, le tableau de bord d'administration WordPress n'est que l'un des nombreux onglets différents que vous laissez régulièrement ouverts. Et c'est exactement ce qui rend possibles les attaques XSS réfléchissantes.

    Voici comment cela se passe :

    1. Le propriétaire du site est attiré par un lien malveillant

    Dans certains cas, un pirate enverra un lien malveillant vers votre e-mail dans l'espoir que vous tomberez dans le piège.

    Dans d'autres cas, les pirates placeront des liens malveillants sur d'autres sites.

    Si vous cliquez sur l'un de ces liens, un script se charge sur votre site WordPress à partir d'un site externe.

    2. Saisie des cookies de session

    Lorsque vous cliquez sur le lien malveillant, vous exécutez le code qu'ils ont utilisé. Cela permettra au pirate de voler vos cookies et d'accéder au compte administrateur de votre site WordPress.

    Une fois qu'ils ont obtenu un accès administratif complet au site, ils peuvent facilement voler des données sensibles et des identifiants de connexion. Ils pourraient même vous verrouiller hors de votre site ou l'utiliser pour exécuter un certain nombre de piratages différents.

    Ce qui est effrayant, c'est qu'ils seront faits en votre nom.

    Une attaque XSS correctement exécutée aura des conséquences majeures pour votre entreprise et votre site Web, et pourrait irrémédiablement nuire à votre crédibilité. Se remettre de ces attaques peut prendre beaucoup de votre temps précieux et de votre argent durement gagné.

    C'est pourquoi il est si important de prendre toutes les précautions possibles contre cela.

    Prévention des scripts intersites WordPress : 5 étapes

    Il n'y a pas de moyen facile de le dire, mais il n'existe pas de plan infaillible pour éviter la cybercriminalité. La meilleure chose à faire est d'avoir un plan solide en place pour les audits de sécurité WordPress de routine. Votre première étape pour éviter les attaques XSS est de commencer à vous préparer dès maintenant avec ces étapes.

    1. Téléchargez et installez le plugin iThemes Security Pro

    Pour commencer à sécuriser et à protéger votre site, téléchargez et installez le plugin iThemes Security Pro.

    Obtenez iThemes Security Pro maintenant

    2. Sécurisez vos utilisateurs contre le piratage de session

    En termes simples : vous devriez avoir mis en place une protection contre le piratage de session pour vos administrateurs et éditeurs sur votre site Web WordPress.

    Pourquoi? Comme nous l'avons mentionné précédemment, ordPress génère un cookie de session chaque fois que vous vous connectez à votre site Web. Et disons que vous avez une extension de navigateur qui a été abandonnée par le développeur et ne publie plus de mises à jour de sécurité. Malheureusement pour vous, l'extension de navigateur négligée présente une vulnérabilité. La vulnérabilité permet à de mauvais acteurs de détourner les cookies de votre navigateur, y compris le cookie de session WordPress mentionné précédemment. Encore une fois, ce type de piratage est connu sous le nom de Session Hijacking . Ainsi, un attaquant peut exploiter la vulnérabilité de l'extension pour se greffer à votre connexion et commencer à apporter des modifications malveillantes à votre utilisateur WordPress.

    La fonction Appareils de confiance iThemes Security Pro fait du piratage de session une chose du passé. Si l'appareil d'un utilisateur change au cours d'une session, iThemes Security déconnectera automatiquement l'utilisateur pour empêcher toute activité non autorisée sur le compte de l'utilisateur, telle que la modification de l'adresse e-mail de l'utilisateur ou le téléchargement de plug-ins malveillants.

    La fonctionnalité Appareils de confiance dans iThemes Security Pro fonctionne pour identifier les appareils que vous et les autres utilisateurs utilisez pour vous connecter à votre site WordPress. Une fois vos appareils identifiés, nous pouvons empêcher les pirates de session et autres acteurs malveillants de causer des dommages à votre site Web.

    Lorsqu'un utilisateur s'est connecté sur un appareil non reconnu, les appareils de confiance peuvent restreindre leurs capacités de niveau administrateur. Cela signifie que si un attaquant était capable de pénétrer dans le backend de votre site WordPress, il n'aurait pas la possibilité d'apporter des modifications malveillantes à votre site Web.

    Dans ce scénario, vous recevrez un e-mail vous informant que quelqu'un s'est connecté à votre site à partir d'un appareil non reconnu. L'e-mail comprend une option pour bloquer l'appareil du pirate. Ensuite, vous pouvez simplement rire et rire, sachant que vous avez gâché la journée d'un méchant.

    Un autre avantage de Trusted Devices est qu'il fait du piratage de session une chose du passé. Si l'appareil d'un utilisateur change au cours d'une session, iThemes Security déconnectera automatiquement l'utilisateur pour empêcher toute activité non autorisée sur le compte de l'utilisateur, telle que la modification de l'adresse e-mail de l'utilisateur ou le téléchargement de plug-ins malveillants.

    Pour commencer à utiliser Trusted Devices, activez-les sur la page principale des paramètres de sécurité, puis cliquez sur le bouton Configurer les paramètres .

    Dans les paramètres Appareils de confiance, décidez quels utilisateurs vous souhaitez utiliser la fonctionnalité, puis activez les fonctionnalités Restreindre les capacités et Protection contre le piratage de session .

    Après avoir activé le nouveau paramètre Appareils de confiance, les utilisateurs recevront une notification dans la barre d'administration WordPress concernant les appareils non reconnus en attente. Si votre appareil actuel n'a pas été ajouté à la liste des appareils de confiance, cliquez sur le lien Confirmer cet appareil pour envoyer l'e-mail d'autorisation.

    Cliquez sur le bouton Confirmer l'appareil dans l'e-mail de connexion non reconnu pour ajouter vos appareils actuels à la liste des appareils de confiance.

    Une fois les appareils approuvés activés, les utilisateurs peuvent gérer les appareils à partir de leur page de profil utilisateur WordPress. À partir de cet écran, vous pouvez approuver ou refuser des appareils de la liste Appareils de confiance.

    De plus, vous avez la possibilité de vous inscrire à certaines API tierces pour améliorer la précision de l'identification des appareils de confiance et d'utiliser des images cartographiques statiques pour afficher l'emplacement approximatif d'une connexion non reconnue. Consultez le paramètre Appareils de confiance pour voir quelles intégrations sont disponibles,

    3. Activez la gestion des versions pour garder vos thèmes et plugins à jour

    Il est difficile de garder une trace de chaque vulnérabilité WordPress divulguée - nous les suivons et les partageons dans nos résumés des vulnérabilités WordPress - et comparons cette liste aux versions des plugins et des thèmes que vous avez installés sur votre site Web. Cependant, cela n'empêche pas les pirates WordPress de cibler les plugins et les thèmes présentant des vulnérabilités connues. Avoir un logiciel avec des vulnérabilités connues installé sur votre site donne aux pirates les plans dont ils ont besoin pour prendre le contrôle de votre site Web.

    La fonction de gestion des versions d'iThemes Security Pro vous permet de mettre à jour automatiquement WordPress, les plugins et les thèmes. Au-delà de cela, Version Management propose également des options pour renforcer votre site Web lorsque vous exécutez un logiciel obsolète et rechercher d'anciens sites Web.

    Pour commencer à utiliser la gestion des versions, activez le module sur la page principale des paramètres de sécurité.

    Cliquez maintenant sur le bouton Configurer les paramètres pour examiner de plus près les paramètres.

    4. Activez l'analyse du site de sécurité iThemes

    L'analyse de site iThemes Security Pro vérifie sur votre site Web les vulnérabilités connues de WordPress, des plugins et des thèmes et applique un correctif lorsqu'il est disponible.

    Pour activer l'analyse du site sur les nouvelles installations, accédez aux paramètres d'iThemes Security Pro et cliquez sur le bouton Activer dans le module des paramètres de l' analyse du site .

    Pour déclencher une analyse de site manuelle, cliquez sur le bouton Analyser maintenant sur le widget d'analyse de site situé dans la barre latérale droite des paramètres de sécurité.

    Les résultats de l'analyse du site s'afficheront dans le widget.

    Si l'analyse du site détecte une vulnérabilité, cliquez sur le lien de vulnérabilité pour afficher la page de détails.

    Sur la page de vulnérabilité de l'analyse du site, vous verrez s'il existe un correctif disponible pour la vulnérabilité. Si un correctif est disponible, vous pouvez cliquer sur le bouton Mettre à jour le plug- in pour appliquer le correctif sur votre site Web.

    Il peut y avoir un délai entre le moment où un correctif est disponible et la mise à jour de la base de données des vulnérabilités de sécurité iThemes pour refléter le correctif. Dans ce cas, vous pouvez désactiver la notification pour ne plus recevoir d'alertes liées à la vulnérabilité.

    Important : vous ne devez pas désactiver une notification de vulnérabilité tant que vous n'avez pas confirmé que votre version actuelle inclut un correctif de sécurité ou que la vulnérabilité n'affecte pas votre site.

    5. Activer la détection de modification de fichier

    Pour commencer à surveiller les modifications apportées aux fichiers , activez la détection des modifications de fichiers sur la page principale des paramètres de sécurité.

    Paramètres de détection de modification de fichier de sécurité WordPress

    Une fois la détection des modifications de fichiers activée, iThemes Security Pro commencera à analyser tous les fichiers de votre site Web en morceaux . L'analyse de vos fichiers en morceaux aidera à réduire les ressources nécessaires pour surveiller les modifications apportées aux fichiers.

    L'analyse initiale des modifications de fichiers créera un index des fichiers de votre site Web et de leurs hachages de fichiers. Un hachage de fichier est une version abrégée et non lisible du contenu du fichier.

    Une fois l'analyse initiale terminée, iThemes Security Pro continuera à analyser votre fichier par morceaux. Si un hachage de fichier change lors de l'une des analyses suivantes, cela signifie que le contenu du fichier a changé.

    Vous pouvez également exécuter une modification de fichier manuelle en cliquant sur le bouton Analyser les fichiers maintenant dans les paramètres de détection de modification de fichier

    Bouton d'analyse de sécurité WordPress pour les modifications de fichiers

    Conclusion : scripts intersites et protection de votre site WordPress

    Nous espérons que ce guide vous a aidé à comprendre le risque de scriptage intersites sur votre site WordPress. En mettant en œuvre quelques bonnes pratiques de sécurité WordPress, ainsi que les 5 étapes ci-dessus, vous aurez une meilleure ligne de défense.

    Obtenez le contenu bonus : Un guide de la sécurité WordPress
    Téléchargez le guide

    script intersites WordPress