6 conseils pour protéger votre site des robots de backups

Des attaques de plus en plus fréquentes

Si vous gérez un site depuis quelques années, vous aurez sans doute remarqué ces derniers temps un fléau en nette progression. Votre site subit de plus en plus de scans de robots qui cherchent des failles sur votre site pour essayer de les exploiter.

 

Ces robots sont pointus et disposent parfois d’une longue liste pré-établie de failles, mais depuis peu il y a un nouveau genre de robots, qui s’attaquent, à une mauvaise pratique des équipes de développement ou de maintenance : Ils cherchent les fichiers de backups du site !

Durant les interventions de mise en production ou de maintenance, il n’est pas rare de rencontrer des développeurs qui font des backups du site à la racine ou qu’ils renomment des fichiers comme le « configuration.php » en « configuration.php.old ».

 

Jusqu’à là rien de dramatique, mais si à la fin de l’intervention de fichier n’est pas retiré, des robots pourraient très bien appeler le fichier « configuration.php.old » et avoir accès au code qu’il contient. Si ce fichier contient les codes d’accès à votre base de données ou à d’autres informations sensibles, votre site sera compromis et vos données piratées.

 

Durant les interventions de mise en production ou de maintenance, il n’est pas rare de rencontrer des développeurs qui font des backups du site à la racine ou qu’ils renomment des fichiers comme le « configuration.php » en « configuration.php.old ».

 

Jusqu’à là rien de dramatique, mais si à la fin de l’intervention de fichier n’est pas retiré, des robots pourraient très bien appeler le fichier « configuration.php.old » et avoir accès au code qu’il contient. Si ce fichier contient les codes d’accès à votre base de données ou à d’autres informations sensibles, votre site sera compromis et vos données piratées.

 

Il y a quelques règles élémentaires à adopter par les intervenants :Ne pas utiliser des noms de fichiers communs pour créer des sauvegardes, comme : backup, sauvegarde, upload, www, site, public_html, home, etc…

Ne pas mettre les sauvegardes à la racine du site ou dans un dossier accessible au public: Mettre les sauvegardes dans un dossier privé ou dans un dossier protégé par une authentification.
Ne pas renommer un fichier php sous une autre extension autre que « php » (exemple : .old, .bak, etc…) car une fois que le fichier n’est plus un fichier php il peut être téléchargé par n’importe qui et avoir accès au code source.

 

Une fois que l’intervention est terminée, supprimer tous les fichiers de sauvegarde.
Préférer de ne pas intervenir directement en production utiliser des solutions de versionning comme GIT afin d’éviter justement de devoir manipuler des backups ou de renommer des fichiers.

Configurer votre serveur pour que certains types de fichiers ne soient pas accéssibles (exemple : .zip, .sql, .bak, .gz, etc…) ou utiliser un logiciel de protection de site comme WRA Protect ou équivalent.

 

La liste ci-dessous de requêtes (l’adresse du site concerné a été remplacée par nom-du-site.com) faites par un robot n’est pas exhaustive mais en voici quelques exemples :

 

nom-du-site.com/nom-du-site.com.zip
nom-du-site.com/nom-du-site.com.tgz
nom-du-site.com/nom-du-site.com.tar.gz
nom-du-site.com/nom-du-site.com.tar
nom-du-site.com/nom-du-site.com.sql.gz
nom-du-site.com/nom-du-site.com.sql
nom-du-site.com/nom-du-site.com.rar
nom-du-site.com/nom-du-site.com.gz
nom-du-site.com/www.nom-du-site.7z
nom-du-site.com/www.nom-du-site.zip
nom-du-site.com/www.nom-du-site.tgz
nom-du-site.com/www.nom-du-site.tar.gz
nom-du-site.com/www.nom-du-site.tar
nom-du-site.com/www.nom-du-site.sql.gz
nom-du-site.com/www.nom-du-site.sql
nom-du-site.com/www.nom-du-site.rar
nom-du-site.com/www.nom-du-site.gz
nom-du-site.com/www.nom-du-site.com.7z
nom-du-site.com/www.nom-du-site.com.zip
nom-du-site.com/www.nom-du-site.com.tgz
nom-du-site.com/www.nom-du-site.com.tar.gz
nom-du-site.com/www.nom-du-site.com.tar
nom-du-site.com/www.nom-du-site.com.sql.gz
nom-du-site.com/www.nom-du-site.com.sql
nom-du-site.com/www.nom-du-site.com.rar
nom-du-site.com/www.nom-du-site.com.gz
nom-du-site.com/www.zip
nom-du-site.com/www.tgz
nom-du-site.com/www.tar.gz
nom-du-site.com/www.tar.bz2
nom-du-site.com/www.tar
nom-du-site.com/www.rar
nom-du-site.com/www.gz
nom-du-site.com/web.zip
nom-du-site.com/web.tar.gz
nom-du-site.com/web.tar
nom-du-site.com/web.rar
nom-du-site.com/upload.zip
nom-du-site.com/upload.rar
nom-du-site.com/site.zip
nom-du-site.com/site.tgz
nom-du-site.com/site.tar.gz
nom-du-site.com/site.tar
nom-du-site.com/site.rar
nom-du-site.com/public_html.zip
nom-du-site.com/public_html.tgz
nom-du-site.com/public_html.tar.gz
nom-du-site.com/public_html.tar
nom-du-site.com/public_html.rar
nom-du-site.com/htodcs.rar
nom-du-site.com/htdocs.zip
nom-du-site.com/htdocs.tar.gz
nom-du-site.com/htdocs.tar
nom-du-site.com/home.zip
nom-du-site.com/home.tgz
nom-du-site.com/home.tar.gz
nom-du-site.com/home.tar
nom-du-site.com/home.rar
nom-du-site.com/dump.zip
nom-du-site.com/dump.tgz
nom-du-site.com/dump.tar.gz
nom-du-site.com/dump.tar
nom-du-site.com/dump.sql.tgz
nom-du-site.com/dump.sql.gz
nom-du-site.com/dump.sql
nom-du-site.com/dump.rar
nom-du-site.com/backup/backup.zip
nom-du-site.com/backup/backup.tgz
nom-du-site.com/backup/backup.tar.gz
nom-du-site.com/backup/backup.tar

Demande d'informations

Appuyer sur Entrée pour valider.