Identification & causes : tout ce quâil faut savoir đ
La semaine derniĂšre, je rĂ©vĂ©lais sur LinkedIn un piratage Ă priori rĂ©pandu chez les possesseurs de sites WordPress hĂ©bergĂ©s chez o2switch. En qualitĂ© dâexpert sĂ©curitĂ© WordPress et grĂące Ă une investigation auprĂšs de quelques confrĂšres touchĂ©s et non touchĂ©s, nous avons pu en apprendre davantage.
MAJ 31/07/2024 â En rĂ©sumĂ©
Selon une source en interne, lâhĂ©bergeur ne serait vraiment pas en cause. LâhypothĂšse dâun entretien insuffisant des sites piratĂ©s resterait ainsi privilĂ©giĂ©e. Toujours selon cette source interne, les moyens mis en place par lâhĂ©bergeur pour dĂ©terminer lâorigine prĂ©cise de ce souci sont remarquables (quelques exemples mâont Ă©tĂ© donnĂ©s, jâapprouve la stratĂ©gie). Enfin, mĂȘme si le nombre de sites impactĂ©s peut sembler Ă©levĂ©, il faut mettre cela en perspective avec le parc important dâo2switch : lâimpact rĂ©el resterait trĂšs limitĂ© en proportion et la vaste majoritĂ© des clients ne devrait pas ĂȘtre impactĂ©e par ce souci spĂ©cifique.
De plus, le soir du 30/07/2024, o2switch a fait un geste remarquable et trĂšs rare dans le monde des gros hĂ©bergeurs, en nettoyant le hack sur les sites impactĂ©s. Une rĂ©action courageuse qui mâa surpris de la part dâun hĂ©bergeur. En effet, les plus gros hĂ©bergeurs ont plutĂŽt tendance Ă avoir lâhabitude inverse, câest Ă dire de laisser les clients se dĂ©brouiller lorsque le souci vient des sites finaux en eux-mĂȘme. Lâinvestissement de lâhĂ©bergeur est rĂ©el ici et suscite mon plus grand respect.
On rappelle quâen sĂ©curitĂ©, le plus important est la prĂ©vention : faites la maintenance de votre site avec les mises Ă jour automatiques, de bonnes sauvegardes et nâoubliez pas de dâutiliser les derniĂšres versions de PHP compatibles. Si besoin dâaide pour cela, câest ma spĂ©cialitĂ© đ
đ Mode opĂ©ratoire du hack
Le hack redirige les utilisateurs mobile vers des sites frauduleux, notamment en rapport avec la guerre Ukraine/Russie via un URL shortener hébergé aux Emirats Arabes Unis.
Techniquement il consiste en une injection de code JavaScript obfusquĂ© dans tous les posts WordPress du site. Il est donc chargĂ© dans les pages et articles et parfois dans dâautres plugins comme les plugins de cookies, les plugins dâavis utilisateurs, etc.
Voici un aperçu du code pirate aprĂšs dĂ©-obfuscation, qui permet mĂȘme sans parler ce langage de comprendre que lâaction a lieu lors du clic et quâune URL alĂ©atoire est sĂ©lectionnĂ©e en fonction du « UserAgent », câest Ă dire du navigateur utilisĂ© :

Info additionnelle 31/07/2024
La requĂȘte effectuant le hack pourrait ĂȘtre une simple requĂȘte POST sur le fichier index.php du site, comme un log le suggĂšre, qui semble correspondre Ă un hack effectif depuis une IP amĂ©ricaine (IP et site masquĂ©s) :
Jul-2024:213287:199.195.252.[HIDDEN] - - [27/Jul/2024:20:10:59 +0200] "POST /index.php?s=captcha HTTP/1.1" 200 102292 "https://www.[HIDDEN].fr/index.php?s=captcha" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; MS-RTC LM 8; InfoPath.3; .NET4.0C; .NET4.0E) chromeframe/8.0.552.224"
On voit ici une requĂȘte de 102292 bytes faite sur lâindex, ce qui est 100x plus Ă©levĂ© par rapport aux requĂȘtes habituelles de lâordre de 1000 bytes. Dâautant que ce site nâa pas de Captcha⊠Ce qui est troublant est que la requĂȘte rĂ©sulte en un code 200, ce qui signifie que la requĂȘte est acceptĂ©e, traitĂ©e sans erreur, alors que la visite de cette URL devrait plutĂŽt donner une erreur 404 (Not Found).
đ Identification
- Le hack est parfois mal insĂ©rĂ© dans les articles et sâaffiche de maniĂšre textuelle dans le corps des pages au lieu de sâexĂ©cuter
- La plupart du temps il est invisible, vous pouvez vĂ©rifier si votre site est impactĂ© en recherchant « _0x365b », ou « 0x3023 », ou « function _0x », via lâinspecteur de votre console dĂ©veloppeur Ă la visite du site, ou via une recherche dans phpMyAdmin
- Les antivirus Eset et Avast bloquent lâaccĂšs aux sites touchĂ©s
- Update 31/07/2024 â Lâun des sites touchĂ©s ne se voit pas via la console dĂ©veloppeur, il faut Ă la place utiliser lâoutil en lignes de commandes « curl » pour observer le code malveillant. Il est possible que cela soit dĂ» au cache du site.
Voici un exemple du code pirate tel que visible depuis la console développeur :

đ RĂ©partition du hack
GrĂące Ă une recherche du pattern du hack sur Google et Bing, jâai trouvĂ© de nombreux sites infectĂ©s. Jâai contactĂ© lâensemble des propriĂ©taires des sites pour les alerter, leur conseiller de contacter leur prestataire et leur proposer mon aide si besoin.
- Sur 40 domaines impactĂ©s, trouvĂ©s en France et en Belgique, 2 seulement ne sont pas chez o2switch â update 30/07/2024 : Certains sites chez OVH, Hostinger et divers hĂ©bergeurs sont aussi touchĂ©s, mais plus rares pour le moment.
- Dâautres fournisseurs de serveurs Ă©trangers sont touchĂ©s mais jâen ai trouvĂ© moins quâen France.
- Cela laisse penser Ă une attaque ciblĂ©e des sites prĂ©sents sur les IP o2switch, que le hacker aurait trouvĂ© via des listes publiques qui rĂ©fĂ©rencent cela. Ce type dâattaques peut cibler nâimporte quel hĂ©bergeur qui nây peut strictement rien. Câest pour cela quâil faut ĂȘtre pro-actif dans votre sĂ©curitĂ©.
đĄ Des causes toujours incertaines
Voici ce quâon a pu voir et dĂ©duire en recoupant les infos entre confrĂšres :
- Comme le hack est insidieux, beaucoup ne sont pas diagnostiquĂ©s et dĂ©tectĂ©s rapidement, mais la plus ancienne occurrence semble avoir eu lieu en Mai â update 30/07/2024 potentiellement plutĂŽt en Juillet
- Cela ne touche pas un plugin ou un thÚme spécifique
- Le plugin Tiger dâo2switch ne semble donc pas non-plus ĂȘtre la cause du problĂšme, car des sites sans ce plugin sont touchĂ©s
- Les sites touchĂ©s semblent gĂ©nĂ©ralement moins entretenus que les autres, mais câest le cas de la plupart des sites; et des sites assez bien suivis (peut-ĂȘtre pas assez) sont aussi touchĂ©s
- La faille exploitée a pu provenir du core de WordPress lorsque non mis à jour assez rapidement
- Il est possible que cela provienne de lâutilisation dâune version PHP obsolĂšte dĂ©finie par le gestionnaire de lâhĂ©bergement (client final)
- Il est possible que la prĂ©sence dâune seconde instance WordPress (une instance de dev par exemple) dans lâhĂ©bergement, qui elle, ne serait pas Ă jour, puisse dĂ©teindre sur lâinstance principale, par manque dâisolation (câest le mĂȘme hĂ©bergement, le mĂȘme utilisateur systĂšme, les mĂȘmes droits, et il ne semble pas y avoir de rĂšgle open_basedir pour restreindre le rĂ©pertoire au niveau de PHP chez o2switch)
- Cela ne touche pas les clients dâun serveur spĂ©cifique dâo2switch, ils sont rĂ©partis sur de plusieurs serveurs mutualisĂ©s, et certains serveurs ne sont pas du tout touchĂ©s, laissant entendre un souci marginal (donc pas dâintrusion serveur ou hĂ©bergeur global)
- Il y a une minuscule probabilitĂ© pour quâune intrusion ou une faille hĂ©bergeur plus globale aie eu lieu (par exemple une faille dans un paquet systĂšme qui permet le hack), mais nous nâavons aucun Ă©lĂ©ment pour le vĂ©rifier et dans la mesure oĂč o2switch nâa rien signalĂ©, il est plus raisonnable de penser que le souci provient de lâapplicatif final (WordPress) ou de la version de PHP utilisĂ©e par le client final.
- â Update 29/07/2024 Il est enfin possible quâune faille du serveur web Apache aie Ă©tĂ© exploitĂ©e, soit lorsquâelle nâĂ©tait pas encore correctement corrigĂ©e, soit car o2switch a trop tardĂ© Ă mettre Ă jour ses versions logicielles. Les dates semblent concorder pour les hacks les plus rĂ©cents. LĂ encore aucune certitude sans une annonce officielle de lâhĂ©bergeur.
- â Update 31/07/2024 Des failles dans des sous-versions de PHP, notamment dans certaines rĂ©visions de PHP 8.0 pourraient expliquer le piratage. Cela concorde avec les requĂȘtes observĂ©es pouvant causer un buffer overflow et permettre un injection de code. Si les sous-versions de PHP 8.0 de lâhĂ©bergeur ne sont pas Ă jour, cela explique la possibilitĂ© du hack. Quoi quâil en soit, le client est fautif si câest la cause, car on rappelle que PHP 8.0 est dans tous les cas obsolĂšte et ne devrait plus du tout ĂȘtre utilisĂ©. Il nâest dâailleurs plus disponible Ă la sĂ©lection sur les hĂ©bergements LRob.
- Aucun hack à déplorer sur les hébergements LRob.
đš RĂ©paration du hack
La réparation consiste à nettoyer la base de données en effaçant les lignes correspondant au pattern du hack. Avant toute opération, sauvegardez votre base de données. Les fichiers des sites web ne semblent pas impactés sur ce hack, mais une vérification manuelle complÚte est toujours recommandée comme pour tout hack. Pensez aussi à vider les différents caches pour que le code malveillant en soit également retiré.
Besoin dâaide pour rĂ©parer vos sites et rester sĂ©curisĂ© Ă lâavenir ? DĂ©couvrez mes services de rĂ©paration et sĂ©curisation WordPress ainsi que mes hĂ©bergements WordPress sĂ©curisĂ©s.
Si vous avez plus dâinfos, partagez-les en commentaires ou MP !
Laisser un commentaire