Que faire en cas de dolibarr piraté ?

Que faire en cas de dolibarr piraté ?

Cette page est en cours de rédaction

Attention, on ne rigole pas, cette page n'est pas la pour vous faire peur mais plutôt pour collecter au fil de l'eau toutes les bonnes idées et remarques sur ce sujet.

Un pirate doué pourrait s'introduire sans trop laisser de traces, modifier le RIB de votre compte bancaire et envoyer vos factures à vos clients avec son RIB … le temps que vous vous rendiez compte du problème (généralement 1 mois ou 2 le temps de relancer les clients leur disant “vous n'avez pas payé” et eux vous répondant “si regardez”) … vous serez alors dans le cas classique de l'arnaque aux faux rib, ça n'arrive pas qu'aux autres (https://www.cybermalveillance.gouv.fr/tous-nos-contenus/fiches-reflexes/que-faire-en-cas-de-fraude-au-virement-ou-au-faux-rib)

S'il est un peu moins “spécialiste dolibarr” vous piquer les identifiants et mots de passes de votre compte mail sera déjà un beau trophée …

La priorité absolue: rendre votre dolibarr "inaccessible"

  • C'est plus facile à dire s'il est installé sur votre serveur dans l'entreprise ou chez vous, coupez la connexion internet.
  • Si c'est sur un hébergement dédié, stoppez le serveur web (apache / nginx) c'est brutal.
  • Si c'est un hébergement mutualisé (ovh, o2switch…) connectez vous en sFTP et renommez le dossier où se trouve votre dolibarr ou allez sur la console de gestion de votre hébergement pour désactiver votre site web

C'est d'autant plus urgent que votre dolibarr est ancien. Ne laissez pas un dolibarr en ligne “à peu près réparé” s'il n'est pas sur une version “actuelle” ou “juste précédente”. (par exemple aujourd'hui la dernière version stable est la 17.0.2, la 16.0.5 est considérée comme fiable mais ne laissez pas une 11.0.0 en ligne par exemple).

Ensuite réfléchir et agir

Vous pourriez vous dire “le coup de feu est passé” … oui mais non, n'allez pas dormir ou attendre “lundi prochain” pour passer à la suite …

Analyser l'étendue des dégâts

Est-ce que ce n'est qu'une tentative de piratage ? Un simple message sur la page d'accueil ? ou bien plus grave avec création d'un compte administrateur et session ouverte ? ou pire encore un compte local système créé avec escalation de privilèges (l'horreur absolue en ce cas c'est une réinstallation totale du serveur qu'il faut prévoir plus un audit sécurité de votre infrastructure pour vérifier s'il n'y a pas eu de contagion).

À cette étape seul un expert sécurité et dolibarr pourra vraiment faire une analyse réelle de la situation.

Dans tous les cas il faudra consulter les journaux systèmes de votre serveur web (qui sont en dehors de dolibarr) : copiez les dès que possible pour éviter qu'ils ne soient effacés par une tâche planifiée de nettoyage des logs (bien que normalement il y ait un délais assez long de conservation).

Avec ces logs vous pourrez isoler les requêtes qui ont été réalisées et ainsi prendre la mesure de la réalité.

Exemple :

Pas super grave il n'a téléchargé que les drapeaux des pays … bon ça serait étrange qu'il se soit arrêté en si bon chemin !

192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/ax.png HTTP/1.1" 200 693 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/ky.png HTTP/1.1" 200 701 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/ck.png HTTP/1.1" 200 695 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/fo.png HTTP/1.1" 200 670 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/fk.png HTTP/1.1" 200 700 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/fj.png HTTP/1.1" 200 700 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/gs.png HTTP/1.1" 200 691 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/hm.png HTTP/1.1" 200 707 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/mh.png HTTP/1.1" 200 699 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/um.png HTTP/1.1" 200 698 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/sb.png HTTP/1.1" 200 697 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/pn.png HTTP/1.1" 200 697 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/sj.png HTTP/1.1" 200 684 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/tc.png HTTP/1.1" 200 695 ...
192.168.99.99 - - [20/Jun/2023:23:08:19 +0200] "GET /theme/common/flags/vi.png HTTP/1.1" 200 704 ...

Autre exemple beaucoup plus critique : il a téléchargé le backup de votre base de données, considérez en ce cas que vous êtes face à une fuite de données totale (voir le paragraphe RGPD a la fin de ce message).

192.168.99.99 - - [13/Apr/2023:12:24:17 +0200] "GET /document.php?modulepart=systemtools&attachment=1&file=backup%2Fmysqldump_dolibarr_13.0.5_202304131224.sql.gz HTTP/1.1" 200 6349611

Mots de passes des utilisateurs dolibarr

Certaines versions anciennes de dolibarr stockaient “en clair” le mot de passe des utilisateurs, il est donc absolument urgent et prioritaire d'informer vos collègues par téléphone ou SMS mais surtout pas par mail (imaginez que leur mot de passe mail est le même que le mot de passe dolibarr, c'est une mauvaise pratique mais c'est courant) … expliquez leur la situation et dites leur de changer leur mot de passe si c'est le même sur leur boite mail et autres services en lignes.

Et quand bien même votre dolibarr récent stocke les mots de passes chiffrés considérez les comme cramés : le pirate a entre les mains le résultat du mot de passe chiffré et à l'aide de techniques récentes (et / ou de grosses capacités de calculs) il peut éventuellement découvrir votre mot de passe. Considérez qu'il était en clair et appliquez la même démarche.

Autres mots de passes stockés dans dolibarr

Cette liste n'est pas exhaustive:

  • le compte mail (dans Accueil > Configuration > Emails) → remplacez de toute urgence le mot de passe de ce compte mail, votre pirate peut utiliser ce compte mail pour envoyer du spam ou pire: par exemple envoyer des factures avec un faux RIB sous votre nom puisque envoyé avec votre vrai serveur mail
  • les comptes mails des utilisateurs s'ils sont configurés pour envoyer/recevoir des mails dans dolibarr avec leur compte si vous avez des modules complémentaires qui permettent ça
  • les services en ligne configurés dans des modules complémentaires (ou dans les modules de base, par exemple le compte stripe) ça peut-être un identifiant / mot de passe ou une clé d'API
  • …/…

Informations bancaires

Pensez à VOS informations bancaires mais aussi à celles de vos clients / fournisseurs si vous stockez ces informations dans votre dolibarr.

Vérifiez que ces informations n'ont pas été altérées sous peine de découvrir dans quelques mois que vous virez de l'argent sur le compte d'un pirate pensant payer votre fournisseur. Inversement vos factures pourraient afficher les coordonnées bancaires de votre pirate à la place de votre RIB et vos client penseront vous payer en leur envoyant de l'argent.

La meilleure solution dans ce cas est de faire un “diff” avec une sauvegarde de votre base de donnée précédent l'attaque…

SPAM

L'objectif de l'attaquant était peut-être uniquement d'utiliser votre hébergement comme relais de spam, l'audit sécurité devra donc s'assurer qu'il n'y a pas d'outils qui ont été installés dans cette optique.

Relais pour pirater un autre site

Il est également possible que l'objectif de l'attaquant était d'utiliser votre hébergement comme plate-forme pivot pour aller pirater un autre site. C'est d'autant plus vrai depuis qu'il y a des organisations qui refusent toute connexion entrante depuis une adresse IP géographiquement localisée dans certains pays. Les pirates de ces pays mettent donc en place des serveurs “rebonds”, le votre est peut-être concerné.

Divers

etc.

RGPD

Si le pirate a réussi à se connecter vous devez sans aucun doute lancer les procédures ad-hoc conformément à la loi (le RGPD en l’occurrence):

Que faire pour prévenir ?

Pour éviter le plus possible qu'une telle situation ne se reproduise:

  • mettez à jour votre dolibarr régulièrement (lorsqu'un correctif de votre version est publiée installez la sans attendre c'est un correctif pour la version en cours, par exemple si vous avez la version 16.0.4 installez la 16.0.5 dès qu'elle est publiée)
  • mettez en place une réelle politique de sauvegardes, ça veut dire entre autre:
    • si vous faites une facture par semaine ce n'est pas la même chose que si vous en réalisez 100 par heure
    • posez vous la question en ce sens : je suis prêt à perdre : 1h de travail, 4h de travail, 8h de travail, 1 semaine de travail ?
  • déportez vos sauvegardes
    • sur un autre serveur via une technique de get et pas de push
    • vérifiez les sauvegardes, y compris restaurez les pour vérifier qu'elles sont bien exploitables
  • installez des modules complémentaires dédiés à la sécurité:

Si vous avez accès à votre serveur dolibarr un certain nombre de mesures simples peuvent être prises pour éviter ou ralentir ce genre de problème:

  • chmod -w ou utiliser tout dispositif de mise en “lecture seule” de toute l'arborescence du code de votre dolibarr (htdocs), vous ne pourrez plus mettre à jour ou installer des modules via l'interface web mais au moins un pirate ne pourra pas non plus modifier / écrire des fichiers
  • chown des fichiers de l'arborescence web pour qu'ils soient lisibles par votre “utilisateur serveur web” mais pas modifiables, ça revient quasiment au même que le point précédent sauf que si jamais le compte utilisateur en question est piraté il ne sera quand même pas possible de modifier les fichiers
projet_dolibarr/hacked.txt · Dernière modification : 2023/06/21 18:47 de supadmin
CC Attribution-Share Alike 4.0 International Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC Attribution-Share Alike 4.0 International