- Michelle Blanc, M.Sc. commerce électronique. Marketing Internet, consultante, conférencière, auteure. 18 ans d'expérience - https://www.michelleblanc.com -

L’éternel débat : un CMS à code source ouvert ou codé en dur?

Pin It [1]

Hier j’ai partagé le statut suivant [2] sur les médias sociaux :

Passer la journée à interviewer des fournisseurs web suite à un appel d’offres avec un client = On a de la belle expertise au Québec

Or, dans ma messagerie Facebook, une connaissance qui s’adonne à être développeur, me fit parvenir ce message et une discussion s’en suivit :

Interlocuteur

Il me semble que tu as discuté de l’avantage des CMS par rapport à des sites codés entièrement à la main…
Je ne sais pas si j’ai contribué à ce sujet, ni tes conclusions. Mais j’ai quelques remarques à ce sujet, rafraichies par une expérience que j’ai vécu ajourd’hui, est-ce que ça t’intéresse ?

Moi

Oui pourquoi pas

Interlocuteur

Désolé pour la longueur, c’est pour ça que j’ai demandé avant
Aujourd’hui, j’ai un autre exemple sous la main: les sites avec CMS se font hacker comme c’est pas permis.
Je dois bien avoir programmé et/ou supervise pas loin d’une centaine de sites web, dont une vingtaine qui sont sur des CMS, particulièrement Joomla, mais aussi Drupal, WordPress et SPIP.
Jusqu’à présent, à ma connaissance, aucun des sites programmés entièrement à la main n’a été hacké. Versus _tous_ les sites sur CMS, dont certains plusieurs fois.
Je crois que c’est dû à différents facteurs :
– c’est plus facile de trouver des failles dans le code des CMS, que dans le code d’un site fait “à la main”, car le code des CMS est accesible publiquement et gratuitement, pas celui développé juste pour un site.
– comme pour les virus pour Mac vs Windows, plus une plateforme est répandue, plus c’est plus “payant” soit en “bragging rights”, soit en dollars, selon les intentions du hacker de trouver des failles exploitables. Si un hacker trouve une faille dans un de mes sites “fait main”, ce sera dommage pour moi, mais aussi pour lui, car il n’aura trouvé la “clé sous le paillasson” pour un seul site. Alors que s’il trouve une faille dans un CMS, c’est “bonjour la visite!”.
– les CMS utilisent des plugins et des “Templates” qui sont parfois de provenance douteuse. Il est très difficile de tout vérifier ce code pour des “backdoors” et autres failles exploitables même si en théorie la “communauté” veille au grain, il en passe toujours entre les mailles du filet. Pas simple non plus de le garder à jour ces plugins, surtout qu’il y a une forte rotation, chez les auteurs de ces plugins, extensions, modules, templates, alouette! Récemment, je travaillais avec un programmeur de plugin Vietnamien, qui m’a demandé les paramètres d’accès FTP, pour le compte sur lesquel est un de mes sites!
– finalement, il n’est pas toujours simple de faire migrer un site vers une version à date du CMS. Ce qui fait que plusieurs webmestres et clients retardent les mises à jour. Et comme ces mises à jour concernent souvent des améliorations au niveau de la sécurité, avec chaque jour qui passe qu’un système n’est pas mis à jour, ses chances qu’un hacker lui trouve une faille augmentent…

Moi

c’est un intéressant point de vue. Mais un site codé en dur peut difficilement rivaliser en fonctionnalité/coût et en intelligence avec celui développé par une foule de passionnés. Par ailleurs, même la CIA et le NSA sont en open sources.
et on s’entend que pour un site à vocation informationnelle ce n’est pas si critique

Interlocuteur

C’est comme pour le reste dans la vie, c’est toujours utile d’avoir des bons backups
Pis pour la CIA et la NSA, ils ont tout avantage à attirer les méchants qui viennent se jeter gratis dans leur bouche et ils ne manquent pas de ressources pour “patcher” et avoir du code “custom” non plus.

Moi

et attaché un client à qu’un seul fournisseur est aussi le peinturer dans l’coin

Interlocuteur

Oh, absolument. Ça dépends vraiment du but du site, les très cheaps ne valent pas le trouble et les assez gros peuvent se payer du code in-house. Les CMS sont idéaux tout le reste qui est entre ces deux extrèmes.

Y’a quand même l’exception des sites web qui sont vraiment bien codés, avec plein de commentaires dans le code etc… quand c’est bien fait, ce n’est pas si difficile à reprendre pour un autre codeur qui a les qualifications. Les clients ne sont alors pas si mal pris que ça. Et pour ce qui est des CMS, ça arrive aussi que c’est tellement mal foutu qu’il faille tout rebâtir de zéro. En fait, les CMS ne sont pas nécessairement une garantie que ce soit facile ou même juste possible de reprendre un projet par une autre équipe.