Écrit par Laborouge le
Mis à jour le
nébuleuse informatique sur fond bleu

Audit de sécurité : 1 - Présentation

2 minutes

Lors de la livraison en production d'un de nos sites, notre client nous a fait savoir son intention de réaliser un "audit de sécurité" sur notre travail ainsi que notre hébergement.

Je me suis réjoui de cette initiative. Cela veut dire que notre client a conscience des risques liés au développement d'un site web. Et j'y ai vu une belle opportunité de remettre en question mon travail, notre travail.

Cela fait maintenant 8 ans que je développe des sites sous Drupal et je me suis dit que je devais sans doute avoir pris quelques mauvaises habitudes niveau sécurité. C'était donc une occasion de remettre mon travail en question.

La découverte et la correction des points soulevés par cet audit m'ont tellement passionné que j'ai décidé de vous les présenter ici.

Bien sur, pour des raisons de confidentialité, je ne pourrais pas rentrer dans les détails de cet audit, ni même donner le nom du site. Mais je vais essayer de vous présenter point par point les problématiques soulevées ainsi que leur résolution.

Voici la liste des points :

1. XSS Stored : exécution de code JavaScript

Cross-site scripting (XSS) est une attaque par injection de code JavaScript ou HTML. Elle permet d'exécuter du code malicieux dans le navigateur de la victime.

2. Énumération des paiements

Les confirmations de paiement sont libres d'accès, aucune authentification n'est nécessaire.

3. Énumération des utilisateurs

L'énumération des utilisateur est une technique utilisée par les acteurs malveillants pour identifier les noms d'utilisateur valides sur une application Web.

4.Fichiers inutiles au fonctionnement de la production

Lorsque l'on effectue des recherches d'url sur le site, il est possible de trouver de nombreux fichiers librement accessibles qui ne semblent n'avoir aucun rapport avec le fonctionnement du site en lui-même. 

5. Fuite d'information : fichier de template

En inspectant le code source du site, certaines informations apparaissent telles que le nom des fichiers utilisés par le moteur de template.

6. CSRF : déconnexion utilisateur

7. En-têtes HTTP : Strict-Transport-Security

8. En-têtes HTTP : Content-Security-Policy

9. En-têtes HTTP : fuite d'information sur la version

10. Multiples vulnérabilités : CKEditor

11. Multiples vulnérabilités : PHPMailer

Illustration par Gerd Altmann de Pixabay

À propos

Laborouge
Développeur basé sur la région de Rouen, je me suis spécialisé dans le développement de site web avec le C.M.S. Drupal.

Ajouter un commentaire

Le contenu de ce champ sera maintenu privé et ne sera pas affiché publiquement.
Cette question sert à vérifier si vous êtes un visiteur humain ou non afin d'éviter les soumissions de pourriel (spam) automatisées.