CHR1N est désactivé
Service arrêté sur décision de la direction
La direction IT du CHRSM a exigé la fermeture immédiate de CHR1N en invoquant des raisons de sécurité. Cette décision a été prise sans me consulter, sans échange technique contradictoire et sans qu'aucun élément objectif ne vienne l'étayer. Aucune démonstration de risque. Aucune mise en évidence de faille. Aucun rapport. Juste une décision, tombée du jour au lendemain, sans le moindre fondement technique.
Plus problématique encore : la direction s'est basée sur une ancienne version du site pour formuler son jugement. Je n'ai même pas eu l'occasion de présenter le projet dans son état actuel. On parle d'un produit qui avait été entièrement refondu, audité, durci et optimisé - et personne n'a pris la peine de le regarder. La décision a été rendue sur quelque chose qui n'existait plus. C'est comme juger un livre en lisant la couverture d'un autre.
À aucun moment je n'ai été invité à m'expliquer, à démontrer quoi que ce soit ou à répondre à la moindre question technique. Aucune porte n'a été ouverte. Aucun dialogue n'a été engagé. La décision était prise avant même que la discussion n'ait lieu.
CHR1N était un site intranet d'information interne à destination exclusive du personnel hospitalier. Il centralisait les fiches des disciplines médicales, les disponibilités des médecins, les notes de service et les informations pratiques nécessaires au fonctionnement quotidien de l'établissement. Il intégrait aussi un système de messagerie courte pour simplifier la transmission d'informations entre collègues, à l'instar des omnimails, ainsi qu'un moteur de recherche interne.
Le principe derrière CHR1N, c'est pas compliqué : une base de données centralisée, accessible et modifiable à tout moment par les équipes - au lieu de notes volantes qui se perdent entre deux services, d'informations qui n'arrivent jamais aux bonnes personnes et de données introuvables quand on en a besoin. C'est pas un gadget. C'est pas un jouet. C'est du bon sens appliqué à un vrai problème de terrain que le personnel vivait au quotidien.
D'ailleurs, lors de la première validation du projet, la personne qui a donné son accord était enthousiaste à l'idée d'avoir enfin un annuaire téléphonique regroupant tous les numéros au même endroit. CHR1N n'a pas été imposé. Il a été accueilli, validé et encouragé. Les gens s'en servaient parce que ça leur simplifiait la vie. Personne ne s'est jamais plaint. Personne n'a jamais signalé le moindre problème.
CHR1N ne contenait aucune donnée patient. Aucune donnée médicale. Aucun dossier de soin. Aucune information à caractère sensible ou confidentiel. Zéro. Les seules données présentes étaient des contenus rédactionnels internes et des identifiants de session du personnel. Il n'y avait rien à voler, rien à exploiter, rien à compromettre. Même dans le pire scénario imaginable, une compromission totale du site n'aurait exposé aucune donnée critique - parce qu'il n'y en avait tout simplement pas.
Côté accès, c'était verrouillé de bout en bout : aucun utilisateur ne pouvait créer de compte sans ma validation explicite. Je vérifiais manuellement chaque demande d'inscription pour m'assurer que la personne faisait bien partie du CHRSM. Pas d'inscription automatique, pas d'accès libre, pas de faille d'entrée. Je disposais d'une vue complète sur chaque compte inscrit et je pouvais à tout moment auditer l'ensemble des utilisateurs, consulter leur activité, détecter tout comportement suspect et révoquer un accès immédiatement si nécessaire. Personne ne rentrait sans y être autorisé.
Ce système de contrôle d'accès n'a pas été bricolé. Il a été pensé, conçu et implémenté avec les mêmes standards qu'une application professionnelle. Authentification par PIN avec hachage bcrypt, sessions sécurisées, limitation de tentatives.
CHR1N n'utilisait aucune API du CHRSM. Aucune connexion, aucun appel, aucun échange de données avec les systèmes de l'hôpital. Le site était hébergé sur un serveur externe entièrement indépendant, physiquement et logiquement isolé de l'infrastructure informatique du site Meuse. À aucun moment l'application n'a eu accès aux systèmes internes de l'hôpital, à ses bases de données, à son réseau ou à quelque ressource informatique du CHRSM que ce soit.
Pour être parfaitement clair : CHR1N ne pouvait, par conception, présenter le moindre risque pour l'architecture informatique de l'établissement. Il n'existait aucun chemin technique entre CHR1N et les systèmes du CHRSM. Aucun. Même en cherchant. C'est pas une opinion, c'est pas une interprétation - c'est un fait technique, vérifiable par n'importe quel professionnel compétent en la matière.
Invoquer un risque de sécurité pour un site qui n'a aucune connexion avec l'infrastructure qu'il est censé menacer, c'est soit une incompréhension technique, soit une décision qui n'a jamais été fondée sur la technique.
Le projet a fait l'objet d'un audit de sécurité complet portant sur l'intégralité du code source - pas un survol, pas un scan automatique, mais une revue méthodique, ligne par ligne, de chaque point d'entrée, chaque requête, chaque interaction. L'application respectait les standards de sécurité web en vigueur : politique de sécurité de contenu (CSP) stricte sans aucune exécution inline, requêtes SQL préparées sur la totalité des accès en base de données, protection CSRF active sur l'ensemble des formulaires, limitation de débit sur les points d'entrée sensibles, externalisation complète des scripts et feuilles de style, et suppression totale de tout code inline. Chaque couche de l'application a été pensée, testée et durcie.
Au terme de plusieurs mois d'exploitation quotidienne et intensive, le constat est sans appel : aucune faille n'a été découverte. Aucune vulnérabilité n'a été exploitée. Aucun incident de sécurité n'a été déploré. Aucun préjudice n'a été porté à l'infrastructure du site Meuse ni à quelque système du CHRSM que ce soit. Tous les tests, tous les audits, toutes les vérifications menées tout au long de la vie du projet n'ont révélé aucun problème de sécurité. Pas un seul. Y compris en conditions d'usage intensif, avec du personnel connecté chaque jour, sur différents postes et différents navigateurs. Le site a tenu. Sans faille. Sans incident. Sans le moindre accroc.
Et au-delà de la sécurité, CHR1N a rendu service. Chaque jour, du personnel l'utilisait pour trouver une information, consulter une fiche. Des informations qui, sans cet outil, restaient dispersées, inaccessibles ou tout simplement perdues. Le site n'a jamais été un problème. Il était une solution. Et il fonctionnait.
Malgré ce bilan irréprochable, aucun audit, aucun test et aucune analyse technique n'ont été commandités par la direction avant de prononcer la fermeture. Aucune question n'a été posée. Aucune vérification n'a été faite. Aucune preuve n'a été apportée. La décision a été prise sans fondement technique, sans contradiction et sans la moindre rigueur. À aucun moment la direction n'a été dans le juste sur ce dossier.
CHR1N n'est pas sorti de nulle part. C'est le résultat de plusieurs mois de mon travail - du développement, de l'architecture, du design, de l'optimisation, de la sécurisation, de la documentation, des tests. C'est pas trois pages PHP collées ensemble. C'est une application complète, construite de zéro, conçue avec les standards d'un projet professionnel.
J'ai audité le code, je l'ai refactoré, je l'ai nettoyé. Zéro injection SQL possible. Chaque décision technique a été réfléchie, chaque choix documenté, chaque module testé.
Il est établi que le projet avait fait l'objet d'accords verbaux avec la direction, autorisant explicitement son développement et son déploiement au sein de l'établissement. J'ai conçu, développé et maintenu CHR1N à titre entièrement bénévole pendant plusieurs mois. Sans budget alloué. Sans contrat formalisé. Sans aucune contrepartie. Des heures de travail, le soir, la nuit, le week-end - pour construire quelque chose d'utile, gratuitement, pour les gens qui en avaient besoin.
La réponse à ce travail a été une fermeture sans préavis, sans explication technique et sans la moindre considération pour le temps investi ni pour les utilisateurs qui en dépendaient.
Pour toute question relative à cette décision, veuillez vous adresser au service informatique du CHRSM.
« Notre intelligence se conduisant par la seule voie de la parole, celui qui la fausse, trahit la société publique. »
- Michel de Montaigne, Essais, Livre II, Chapitre 18 - Du démentir
Pira Jérôme
Merci à tous ceux qui ont utilisé et soutenu cet outil au quotidien.