4 modules pour vérifier que votre site Drupal est bien développé

Photo de Stéphane

Par Stéphane Bordage le mardi 23 juin 2015

AMOA / Gestion de projet : 4 modules pour vérifier que votre site Drupal est bien développé

Votre site Drupal vient de vous être livré mais vous n'êtes pas expert Drupal. Comment vérifier que les développements respectent les règles de l'art ? Vous pouvez bien sur réaliser un audit avec des experts Drupal externes. Mais, avant d'en arriver là, vous pouvez facilement vous faire une idée en utilisant 4 modules Drupal.

Hacked!

Le module Hacked! scanne le coeur Drupal, les modules contribués et les thèmes en comparant ceux installés sur votre site à ceux disponibles sur drupal.org. En comparant les 2 sources, il détermine si des modules / thèmes ont été modifiés (ce qui est une mauvaise pratique). Il peut même indiquer les lignes exactes si le module Diff est installé. Dans le même style, en complément, il y a MD5 Check qui vérifie que le code des modules n'est pas modifié. A utiliser en production pour détecter les attaques.

Coder

Coder vérifie le code de vos modules custom en s'appuyant sur les règles de codage de Drupal et peut même corriger certaines erreurs ! Il n'est accessible qu'en lignes de commandes.

Security Review

Le module Security Review vérifie automatiquement un ensemble d'erreurs mettant en danger votre site :

  • Safe file system permissions (protecting against arbitrary code execution)
  • Text formats don't allow dangerous tags (protecting against XSS)
  • PHP or Javascript in content (nodes and comments and fields in Drupal 7)
  • Safe error reporting (avoiding information disclosure)
  • Secure private files
  • Only safe upload extensions
  • Large amount of database errors (could be sign of SQLi attempts)
  • Large amount of failed logins (could be sign of brute-force attempts)
  • Responsible Drupal admin permissions (protecting against access misconfiguration)
  • Username as password (protecting against brute-force)
  • Password included in user emails (avoiding information disclosure)
  • PHP execution (protecting against arbitrary code execution)
  • Base URL set (protecting against some phishing attempts)
  • Views access controlled (protecting against information disclosure)

Site Audit

Probablement le plus utile lors de la recette, le module Site audit génère automatiquement un rapport générale sur le respect des bonnes pratiques Drupal :

  • Best Practices - structural recommendations
  • Block - caching
  • Cache - optimal Drupal caching settings
  • Codebase - size of the site; size and count of managed files
  • Content - checks for unused content types, vocabularies
  • Cron - Drupal's built-in cron
  • Database - collation, engine, row counts, and size
  • Extensions - count, development modules, duplicates, missing
  • Insights - Analyze site with Google PageSpeed Insights
  • Security - check for common security exploits, such as malicious menu router items
  • Status - check for failures in Drupal's built-in status report
  • Users - blocked user #1, number of normal and blocked users, list of roles
  • Views - caching settings
  • Watchdog - 404 error count, age, number of entries, enabled, PHP errors

Aller plus loin

Ces modules apportent une solution simple et rapide pour évaluer l'état général d'un projet. Mais ils ne remplacent pas une vraie expertise Drupal. Seule l'expérience, acquise au travers de nombreux projets et dans des contextes différents, permet d'auditer sérieusement un site.

L'autre limite à avoir en tête est que la réussite de votre projet s'écrit avant que la moindre ligne de code n'ai été produite. En effet, c'est la qualité de l'architecture technique proposée qui rendra votre site performant et évolutif. Une fois développé, il est souvent trop tard pour corriger le tir.

L'étape de transformation du besoin en spécifications orientées Drupal est donc essentielle. Ca tombe bien, c'est une de nos expertise :-)

comments powered by Disqus