Au cours de ces derniers jours, j'ai remarqué sur mon blog que quelqu'un essayait de se faufiler.
La personne a essayé de trouver l'URL de connexion (mon site Web n'est pas ouvert pour l'enregistrement des utilisateurs), elle a donc tout essayé depuis my-domain.com/admin, my-domain.com/administrator .. et aussi my-domain.com/wp- login (ce qui indique que la personne ne connaît pas drupal ..)
Une fois que la personne s'est retrouvée sur/utilisateur, elle a essayé de se connecter en tant qu'administrateur en essayant différents noms d'utilisateur: admin, administrateur, etc. (je n'utilise jamais 'admin' comme nom d'utilisateur pour l'utilisateur root)
existe-t-il un moyen d'empêcher/protéger un site Web drupal de ce genre de choses?
Merci
ps: je suis intéressé par la façon de le faire à la fois pour d6 et d7.
Ces types de sondes sont très courants sur Internet. Vous pouvez potentiellement faire certaines choses pour bloquer ce problème et réduire le succès d'un attaquant.
Tout d'abord, je recommande à tout le monde d'utiliser Authentification à deux facteurs afin que même si l'attaquant devine votre nom d'utilisateur et votre mot de passe, il ne puisse toujours pas se connecter. Il y avait une prime de 500 $ pour casser TFA et bien que les attaquants à chapeau blanc aient un nom d'utilisateur et un mot de passe, ils ne pouvaient pas s'introduire.
Le module de révision de la sécurité ou Droptor peut aider à surveiller ces échecs de connexion. S'ils se produisent souvent, vous devez commencer à prendre d'autres mesures. Les attaques par force brute sur les mots de passe ne fonctionnent que si quelqu'un les fait beaucoup donc si cela se produit quelques dizaines de fois, je ne m'inquiéterais pas.
Vous pouvez suivre l'adresse IP utilisée par cette personne à l'aide d'entrées de surveillance, puis utiliser les règles d'accès D6 intégrées (ou l'équivalent d7 - http://drupal.org/project/user_restrictions ) pour bloquer l'accès via cette IP. Vous pouvez également refuser l'accès à l'adresse IP dans Apache ou un autre pare-feu au niveau du serveur. Le pare-feu/serveur Web est un endroit plus efficace pour bloquer les utilisateurs en termes de charge sur le serveur, mais il nécessite généralement un peu plus d'efforts.
Pour Drupal 6 et 7, AjitS a fourni une réponse avec une bonne description de la façon d'utiliser une fonction de limitation de débit pour empêcher les tentatives de connexion répétées à partir de la même IP.
Il s'agit en fait d'un comportement totalement attendu. Chaque fois que vous publiez un site Web sur une adresse IP publique, en quelques heures/jours, vous commencerez à obtenir du trafic de ce type. 99,99% du temps, ce ne sont que des bots qui exécutent un script générique à la recherche d'applications non corrigées ou de mots de passe faciles. Cela explique pourquoi vous voyez des hits sur domain.com/wp-login, l'hôte attaquant (automatisé) ne sait même pas initialement que vous exécutez Drupal, il essaie tous les chemins des CMS populaires, Wordpress, Drupal, etc. .
Je dis ne perdez pas trop de temps à vous en préoccuper. Quoi que vous fassiez, vous toujours trouverez ces scripts grattant votre site ... du monde entier.
Deux choses simples rendront votre application relativement sécurisée:
Servir les pages de connexion et d'administration via https
Avoir un mot de passe décent pour l'administrateur
Quel que soit le schéma de sécurité que vous implémentez, TOUJOURS avoir une sauvegarde récente de vos fichiers.
Bonne chance, joyeux nouvel an.
Peut-être que l'utilisation de renommer les chemins d'admin aiderait?
Le but de ce module est de sécuriser drupal backend en redéfinissant le chemin d'administration.
Pour Drupal 6, vous devez vérifier le module Login Security .
Le module de sécurité de connexion améliore les options de sécurité dans l'opération de connexion d'un site Drupal. Par défaut, Drupal introduit uniquement le contrôle d'accès de base refusant l'accès IP au contenu complet) du site.
Avec le module de sécurité de connexion, un administrateur de site peut protéger et restreindre l'accès en ajoutant des fonctionnalités de contrôle d'accès aux formulaires de connexion (formulaire de connexion par défaut dans/user et le bloc appelé "bloc de formulaire de connexion"). En activant ce module, un administrateur de site peut limiter le nombre de tentatives de connexion non valides avant de bloquer des comptes ou de refuser l'accès par adresse IP, temporairement ou définitivement. Un ensemble de notifications peut aider l'administrateur du site à savoir quand quelque chose se passe avec le formulaire de connexion de son site: devinettes de mot de passe et de compte, tentatives de connexion par bruteforce ou tout simplement comportement inattendu avec l'opération de connexion.
Pour Drupal 7, comme @saadlulu a dit qu'il existe déjà une fonctionnalité de verrouillage de l'accès après 5 tentatives infructueuses de connexion. Si vous voulez plus de contrôle, vous pouvez essayer le Flood Control module.
Ce projet est destiné à ajouter une interface d'administration pour les variables de contrôle des inondations cachées dans Drupal 7, comme les limiteurs de tentatives de connexion et toutes les futures variables cachées.
Je voudrais gérer cela de la même manière que les connexions ayant échoué à partir d'autres sources (par exemple ssh, ftp) sont gérées, afin qu'elles soient toutes traitées de manière cohérente. Pour cela, je regarderais fail2ban , que j'ai eu beaucoup de succès en utilisant contre les connexions SSH par force brute. Il alimente également très bien les outils de surveillance et bloque au niveau du pare-feu, ce qui est généralement plus sûr que d'empêcher simplement les connexions Drupal car il est courant que plusieurs vecteurs d'attaque proviennent du même endroit, par exemple). par exemple s'ils exécutent des choses comme metasploit.
Ce que vous demandez n'est pas logique si vous voulez supprimer ou empêcher l'accès à la page/utilisateur.
Si vous parvenez à empêcher cette page, comment allez-vous y accéder?
De plus Drupal fournit déjà un moyen d'arrêter de telles attaques en verrouillant l'accès à un utilisateur après 5 tentatives.
Vous pouvez cependant limiter les tentatives à votre compte administrateur.