Trouver les fichiers par date avec ssh

J'ai eu recours à cette ligne de commande suite à des attaques sur un site en gestion de contenu (CMS). Des fichiers avaient été injectés sur le serveur, puis étaient appelés avec la méthode POST pour exécuter les scripts qu'ils contenaient, ici, c'était pour envoyer un très grand nombre d'e-mails en SPAM. Un site en CMS est fait de plusieurs milliers de fichiers, donc pour trouver tous les fichiers injectés, cela peut être un véritable enfer. Une fois connecté en ssh, on peut avec une ligne de commande lister tous les dossiers et fichiers créés ou mis à jour après une date donnée (votre dernière mise à jour par exemple, ou quelques heures avant l'attaque).

On va tout d'abord chercher le dossier dans lequel se situe le fichier :

cd /chemin/absolu/vers/le/dossier/

Puis on liste les dossiers et fichiers contenus dans ce dossier et ses sous dossiers dont la date est ultérieure à la date donnée :

find -newermt "yyyy-mm-dd"

On peut aussi ajouter une heure :

find -newermt "yyyy-mm-dd 00:00:00"

On peut aussi rechercher les fichiers ajoutés ou mis à jours ces 2 derniers jours :

find . -mtime -2
BLOG COMMENTS POWERED BY DISQUS