Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


Table des matières
Table of Contents




Pratiques sécuritaires de développement numérique

Choisir son mot de passe

La majorité des mots de passe que nous choisissons peuvent être facilement découvert par un programme informatique. Afin d’éviter que des incidents de sécurité sur les sites internet de CBC/Radio-Canada se produisent, nous demandons à ce que les mots de passe choisis soient fort et sécuritaire.

Tous les mots de passe utilisés pour s'authentifier à la base de données, au gestionnaire de contenu, à un partage de fichier FTP, ou autres, doivent être générés automatiquement par un ordinateur. Vous pouvez utiliser le site https://passwordsgenerator.net/ qui offre une bonne flexibilité en matière de génération.

Conserver vos mots de passe en sécurité dans un gestionnaire de mots de passe. Ceux-ci incluent le plus souvent un générateur de mots de passe intégré.

Authentification des utilisateurs et administrateurs

Si votre site internet offre la possibilité à ses utilisateurs de se connecter afin d'offrir du contenu personnalisé, des précautions particulières doivent être prises.

Ne jamais enregistrer les mots de passe des utilisateurs en clair dans une base de données. Générez plutôt une signature du mot de passe SHA256 en implémentant votre propre "sel".

Si votre site internet offre une connexion restreinte pour la gestion, pensez à déléguer l'authentification à Google si possible, en utilisant les plugin existants ou en intégrant Google OAuth à votre backend.

Les pages de connexion en HTTP

Les pages de connexion qui n'imposent pas le protocole HTTPS sont à risque de voir leur données (nom d’utilisateur et mot de passe entre autre) interceptées.

La mise en place d'une communication sécurisée avec le serveur lors de l'accès à une page d'authentification est essentielle à la protection des données des utilisateurs.

De plus, les dernières mises à jour des navigateurs web dévalorisent les sites qui ne supportent pas l'encryption, c'est pourquoi SSL devrait être configuré et activé. HTTPS devrait être le protocole de communication par défaut.

Systèmes de contrôle de révision de code

Les répertoires de Git ou Subversion contiennent le code source de tous vos fichiers, certains d'entre eux peuvent révéler des informations confidentielles telles que des clés privées ou encore des signatures de mots de passe.

Ne jamais sauvegarder de dossier .git ou .svn dans le répertoire html, même si le serveur web n'autorise pas l'accès à ces dossiers.

Utilisation des fichiers .htaccess

Rendez inaccessible tous les dossiers et fichiers qui ne sont pas censés être servis par le serveur. Beaucoup d'exemples sont disponibles sur le web pour sécuriser votre site grâce au fichier .htaccess.

Validation des donnée de formulaires

Lorsque vous traitez des données issues de formulaires, utilisez des fonctions de nettoyage et d'encodage de la donnée avant de la transmettre au serveur.

Imposez des restrictions en terme de nombres et types de caractères lorsque possible (i.e. nom, code postal, etc, pas de caractères spéciaux).

CMS

Si vous nécessitez la mise en place et l'accès à un CMS, nous pouvons vous offrir une instance Wordpress. Il sera de votre responsabilité de maintenir Wordpress et les plugins à jour.

Information complémentaire

OKIOK - Radio-canada - Atelier sur la sécurité des applications Web v1.1.pdf
Top 10 des risques de sécurité web de OWASP (2017)
Top 10 des bonnes pratiques de sécurité web de OWASP
Guide interne de sécurité de la compagnie de sécurité Pager Duty (rendu public)