web-dev-qa-db-fra.com

Comment masquer ce que j'utilise pour exécuter mon site?

Y a-t-il quelque chose que je puisse faire pour empêcher quelqu'un de savoir que mon site utilise Drupal en regardant le code source de la première page? Je fais référence aux personnes qui scannent des sites à l'aide d'un logiciel qui détecte le logiciel utilisé pour exécuter le site Web afin de pouvoir l'attaquer en utilisant n'importe quel point faible connu.

S'il n'est pas possible de masquer complètement le fait que le site utilise Drupal, est-il au moins possible de les confondre (par exemple, en aliasant les pages de noeud avec des URL comme http://example.com/servlets/<node-id>.jsp)?

72
kiamlaluno

C'est une vieille question à laquelle on a déjà répondu, mais j'ai récemment mis un effort à rédiger une description de tous les choses que vous auriez besoin de changer:

  • Supprimez le méta-générateur pour Drupal 7
  • Supprimer le texte révélateur comme CHANGELOG.txt
  • Vérifiez l'en-tête Expires
  • Répertoires de marche pour les codes d'état HTTP 200/404/403
  • Rechercher les messages texte par défaut - Ajuster tous les messages destinés aux utilisateurs
  • Regardez le HTML - le HTML par défaut du noyau et des modules est un signe révélateur

Fondamentalement: il pourrait être techniquement possible de masquer le fait que votre site exécute Drupal, mais vous y consacreriez tellement de temps que cela n'en vaut pas la peine. Vous devriez plutôt vous concentrer sur la sécurisation et sur les opérations sécurisées (par exemple, la possibilité de déployer rapidement les mises à jour, la surveillance des journaux, etc.).

52
greggles

Vous ne pouvez pas le cacher complètement. La plupart de ce qui est nécessaire pour le faire, nécessiterait un hacking core. Le plus gros indicateur, c'est la variable JavaScript Drupal qui est lisible depuis la première page, ou n'importe quelle page d'ailleurs.

Si vous souhaitez améliorer la sécurité de vos sites en cachant qu'il s'agit d'un site Drupal, vos efforts sont mieux dépensés pour les révisions de code que pour essayer de cacher le fait que le site est fait avec Drupal.

99
googletorp

C'est trop facile à faire, kiam!

  • Utilisez un proxy inverse ou personnalisez votre démon http pour filtrer l'en-tête ennuyeux Drupal http
  • Refuser l'accès http à tous les dossiers par défaut Drupal
  • Utilisez PHP tampon de sortie pour réécrire et masquer votre source HTML, supprimez les données inutiles
  • Utilisez l'alias d'URL ou custom_url_rewrite_in/outbound pour faire de vos URL un gâchis
  • Modifiez l'erreur 404 par défaut, supprimez/modifiez update.php
  • Apportez d'autres modifications si quelqu'un le découvre

Et enfin et surtout, assurez-vous que votre site est si simple qu'il ne nécessite pas JS ou CSS pour les comportements normaux (n'utilisez pas Views ou Ctools ...), ne prend pas en charge l'authentification des utilisateurs, etc. cela signifie que votre site devrait être aussi simple qu'un site html statique.

Ok, tout ça pour faire croire aux gens que votre site ne fonctionne pas avec Drupal. Quoi qu'il en soit, la sécurité par l'obscurité est inutile.

42
jcisio

Il y a un article officiel et une discussion concernant le même .

Tu ne peux pas. N'essaye pas

  • Les attaques automatisées (de loin les attaques les plus courantes) n'inspectent même pas le serveur avant d'essayer leurs exploits .
    L'inspection des journaux de tout site de haut niveau montrera des milliers de demandes infructueuses pour /AspBB/db/betaboard.mdb_private/cmd.asp/scripts/../../winnt/system32/cmd.exe/wp-login//administrator/components/com_wmtgallery/admin.wmtgal, /cgi-bin/ip.cgi ... et un nombre illimité de tentatives d'exploits historiques sur tout système indépendant.
    Les attaques contre les exploits se produisent même si les exploits n'existent pas sur votre système d'exploitation ou votre CMS. Quoi que vous fassiez pour mal identifier votre site, être ignoré de toute façon par les pirates amateurs.
  • Quoi que vous pensiez pouvoir cacher, il y a d'autres indices pour tout système.
    La simple suppression de certaines de toutes les chaînes qui contiennent "drupal" ne déguise pas votre site en un snooper raisonnable. Il existe des dizaines de façons de deviner ce qui sert vos pages, même des services dédiés pour dire si ce site exécute Drupal. Seuls les mots clés que vous reconnaissez et pensez être une menace sont un sous-ensemble mineur des indicateurs réels.
    Demandez index.php /? Q = utilisateur. Essayez ensuite de désactiver cette réponse sans paralyser votre site.
  • La sécurité par l'obscurité n'est pas une sécurité. Cela donne une fausse impression d'être "en sécurité" lorsque vous ne cachez que des vulnérabilités derrière un écran de fumée que tout attaquant qui représentait une menace réelle serait en mesure de voir à travers.
  • Bien qu'il ne soit pas entièrement impossible de pirater le code au point où la plupart des traces de Drupal sont cachées de la source HTML , (C'est Open source après tout) les étapes nécessaires pour le faire casseraient si mal le cœur que votre branche piratée du code serait incompatible avec les mises à jour de sécurité réelles  que vous ne pouviez pas corriger et serait véritablement ouvert à toutes les menaces futures réelles identifiées par l'équipe de sécurité. Il s'agit d'une véritable voie vers la vulnérabilité du système.
  • La plupart des modules importants ou utiles ont leur propre "signature" de code qui est difficile à cacher sans réécriture importante. Si vous utilisez des "vues", "cck", "annonce", "imagecache", "jquery", agrégation css, thèmes contribués ou quoi que ce soit utile sur votre site - quelqu'un peut dire . Le masquer entièrement nécessiterait généralement une conversion totale des fonctions du thème - au moins. Même alors, obsfucation ne fonctionnera probablement pas .
  • Pour supprimer l'identification de nombreuses fonctionnalités avancées, comme même l'installation facile de Google Analytics qui peut utiliser Drupal Bibliothèques pour fonctionner, vous devez nécessairement soit renoncer à ces fonctionnalités, soit les réécrire de manière cela ne profite pas de l'infrastructure Drupal. Parfois, cela est possible, mais dans tous les cas, c'est contre-productif.

Vous pourriez être intéressé par la lecture Sécuriser votre site aussi.

Rappelez-vous ne jamais pirater le noya

34
niksmac

Vous pouvez également utiliser le module File Aliases pour modifier la structure de fichiers par défaut.

Le module File Aliases vous permet d'utiliser des alias personnalisables par jeton pour vos fichiers téléchargés, vous donnant la possibilité de garder votre système de fichiers organisé comme d'habitude tout en fournissant des chemins propres (c'est-à-dire, plus/sites/default /des dossiers/).

1
john

Il est inutile de cacher que votre site exécute Drupal. C'est la mauvaise façon d'envisager le développement de sites Web. Vous devez vous concentrer sur la sécurité. Assurez-vous de mettre en œuvre toutes les mesures de sécurité et tout ira bien. Il n'y a aucune raison au monde de cacher que vous utilisez un certain cms ou un autre logiciel. Avec des addons FF comme Wappalyzer, vous pouvez dire en un instant si un site utilise Drupal, donc la question est assez théorique.

1
picxelplay

Je suis d'accord avec d'autres personnes que vous ne pouvez pas le cacher entièrement. Si vous regardez la source HTML, vous remarquerez que plusieurs fois les fichiers CSS et JavaScript n'ont pas été agrégés. L'agrégation CSS et JavaScript doit être activée.

1
user140

Dans ce passé, j'ai échangé mes polices pour les polices de projet typiques Ruby comme Lucida Sans, augmentant également les tailles d'entrée comme tous les enfants branchés.

Un autre cadeau est le graphique "throbber" pour les champs de saisie semi-automatique. Cela ne fonctionne pas non plus lorsque vous augmentez la taille d'entrée. En voici un que vous pouvez voler: http://beta.seattlebedandbreakfast.com/misc/throbber.gif

0
doublejosh