La fois où nous avons été piratés
Cet article n’est pas écrit avec fierté. Se faire pirater n’est jamais agréable. On dirait que c’est pire quand on est expert en cybersécurité. Si vous avez déjà été piraté et avez ressenti de la honte, nous comprenons.
L’article a été rédigé dans le but de sensibiliser les entreprises aux risques liés à la cybersécurité dans la cadre du mois de la cybersécurité (octobre).
Cela dit, le présent article vous apprendra peut-être une expression nouvelle : la cyberrésilience. Mais qu’est-ce que c’est? La cyberrésilience est l’acceptation de la menace à venir et la préparation pour y répondre. En d’autres mots :
Votre site est une cible…
Nous sommes tous dans la mire des pirates. Obtenez une analyse gratuite de votre situation en moins de 5 minutes.
La question n’est pas de savoir « si » vous serez piratés un jour, mais plutôt « à quel moment » l’événement se produira.
Maxime Jobin, expert en cybersécurité chez SatelliteWP
En adoptant la cyberrésilience, cela permet de mettre en place un plan précis qui pourra être exécuté le moment venu. Évidemment, nous souhaitons tous ne jamais avoir à s’en servir, mais…
La découverte de l’attaque
Tout a commencé par une demande bien simple d’un membre de l’équipe : « Maxime, je n’ai plus accès à mon serveur. Peux-tu vérifier? ». C’est le genre de requête qui arrive régulièrement. Ça peut être une règle trop stricte dans un pare-feu (firewall) ou un utilisateur qui se trompe de mot de passe trop souvent. Oui, ça arrive même à l’interne!
Nous n’en faisons pas un cas… les ajustements sont faits et la journée continue.
Mais pas cette fois.
En se connectant sur le serveur, tout semblait correct. Seule la base de données du site ne chargeait pas. En s’y connectant… horreur!
La base de données ne contenait qu’une seule table nommée « HACKED ». Son contenu était tout aussi révélateur : « Please go to xxxx.com and donate 0.46 Bitcoin to YYYYYYYY. Then, we will unlock your data ». (Traduction: veuillez visiter le site xxxx.com et faire un don de 0.46 Bitcoin à l’utilisateur YYYYYYYY).
En gros, à ce moment, ça nous aurait coûté environ 20 000 $ CAD pour récupérer nos données.
C’est à ce moment que nous avons réalisé que nous avions été victimes de piratage et d’un rançongiciel. Les bases de données du serveur ont été totalement encryptées. Plus de données. Rien. Nothing. Nada.
P.A.R.D.O.N.
La réaction
Chez SatelliteWP, nous n’allons pas dans la demi-mesure du côté de la sécurité. Nos clients nous confient l’entretien de leur site et nous sommes appelés à manipuler des données sensibles.
Nous avons donc plusieurs processus en place pour ne conserver que le strict minimum, donner des accès aussi restreints que possible, utiliser des mots de passe uniques, segmenter nos activités pour minimiser les risques, etc.
Cela dit, la surprise était grande!
S’il y avait toutefois une chose qui était claire : JAMAIS nous ne payerions la rançon exigée.
Notre infrastructure est solide et nous avons des « plan B » pour tout. Le serveur compromis ne touchait qu’un seul développeur et nos backups (fonctionnels et testés) nous indiquaient que nous pourrions récupérer la situation aisément.
Nous étions prêts à amorcer la récupération de notre entité numérique.
Les étapes à suivre
Nous avons suivi plusieurs étapes afin d’arriver à un retour à la normale dans un délai très petit.
Investigation
Tout d’abord, nous avons les compétences techniques pour mener l’investigation. Cette étape est cruciale afin de déterminer l’étendue des dégâts. Si vous n’avez pas les compétences pour investiguer et corriger, assurez-vous d’avoir une firme qui pourra vous aider si un problème survient.
Dans notre cas, nous avons pu déterminer que l’incident n’était pas lié à des mises à jour non effectuées et qu’il s’agissait d’une erreur d’une personne qui n’avait pas suivi les pratiques internes.
Puis, nous avons fait le choix de se départir du serveur et de le rebâtir à partir de zéro. Les raisons : notre processus pour créer un nouveau serveur nous assurerait que le serveur est propre et les coûts de mise en place seraient beaucoup moins élevés.
Réorientation
Avant de reconstruire, il faut réorienter les ressources affectées. Dans notre cas, un développeur ne pouvait plus faire son travail. Il a donc été redirigé vers le serveur web d’un collègue et ils ont partagé un serveur pendant quelque temps.
Votre situation est probablement différente de la nôtre, mais les impacts sont similaires. Si des gens de votre équipe ne peuvent plus faire leur travail, ils sont inutiles. Comment pouvez-vous leur redonner une partie de leur autonomie afin de ne pas perturber les activités de l’entreprise? C’est à cette question que vous devez répondre!
Réparation
De notre côté, nous avons recréé un nouveau serveur que nous avons entièrement reconfiguré. Comme nos processus sont bien documentés, recréer ce serveur aura pris une demi-journée environ. C’est vraiment ultra rapide dans les circonstances.
Il faut se rappeler qu’on ne garde jamais de temps à l’horaire pour ce genre d’imprévus! Plus vous êtes prêts, plus votre réparation sera rapide.
Au final, nous estimons avoir perdu environ 2 jours de productivité sur l’ensemble de l’équipe. La perte se chiffre donc sous les 5 000 $. Nous n’avons perdu aucune donnée.
Communication
C’est à ce stade qu’arrive l’étape la moins agréable : la communication. Que fait-on? Que dit-on?
Nous avons opté pour la transparence.
Dans notre cas, le serveur piraté était un serveur de développement. Il contenait des sites en travail qui devaient être déployés plus tard. Autrement dit, aucun site de client en production n’a été touché par le piratage.
Par contre, il n’était pas possible de savoir ce que les pirates ont fait avec les données.
Nous avons donc contacté tous les clients qui avaient une copie de leur site sur ledit serveur. Heureusement, comme nous ne gardons pas de copies de site web inutilement sur le serveur, nous n’avons eu que 3 clients à contacter.
Nous avons expliqué la situation, les risques et les étapes à suivre de leur côté. Notre communication a été rédigée comme nous aurions souhaité être informés dans un tel cas.
À la surprise générale : les 3 clients ont été ravis de notre transparence et notre gestion de la situation. Nous n’avons eu aucune question supplémentaire ou plainte liée à l’événement.
Dans les circonstances, c’était une belle victoire!
Mise à jour du plan
Même si nous avions un plan, la résolution de la problématique n’a pas été parfaite! Nous avons ajusté certaines procédures, réduit davantage certains accès et insisté sur les bonnes pratiques, encore une fois.
Tous les membres de notre équipe sont intelligents. Ce n’est pas ça le problème. Le problème consiste à baisser la garde quand on se sent trop en confiance. Il est donc important de répéter, d’insister, de répéter et d’insister sur les bonnes pratiques à suivre. Oh! J’oubliais… il faut également répéter et insister sur les bonnes pratiques suivre!
Les leçons retenues
Évidemment, on peut toujours tirer des leçons de chacun de nos échecs. Voici ce que nous avons retenu de cet épisode peu agréable très désagréable :
1) Tout le monde est à risque. TOUT. LE. MONDE.
2) Même si on est un expert, ça peut arriver.
3) La question n’est pas de savoir « si » ça va arriver, mais plutôt « quand » ça va arriver.
4) Même si on a de bonnes pratiques mises en place, une seule erreur d’une seule personne peut transformer une forteresse en château de cartes.
5) Les backups, ça sauve des vies (et évite de payer des rançons).
6) La segmentation des données sur plusieurs serveurs minimise les risques.
7) Il y a toujours moyen d’améliorer les pratiques en place.
8) Le coaching humain est nécessaire et doit constamment être revu. La mémoire est une faculté qui oublie…
9) La transparence auprès des clients concernés a solidifié notre relation.
10) Quand on est prêt, ça fait beaucoup moins mal.
En conclusion
Rappelez-vous que tous n’ont pas notre chance de pouvoir se relever aussi aisément. Un événement du genre peut facilement coûter 50 000 $ et perturber vos activités, vos clients, vos ressources, votre crédibilité et plus encore.
Avez-vous un plan pour vous relever quand ça se produira?
Si votre site web a été piraté, vous pouvez contacter notre agence d’experts WordPress pour désinfecter votre site WordPress.
Note : Cet épisode de serveur piraté ne date pas d’hier. Il s’est produit en avril 2021 et touchait uniquement un serveur de développement. Aucune donnée sensible n’a été dérobée.