SolarWinds et la porte dérobée SUNBURST: ce qu'il y a dans cette campagne APT





Imaginez que tous ceux qui ont un haut-parleur intelligent Amazon Echo à la maison (Yandex Alice, Maroussia - remplacez-le par celui qui convient) sache qu'au cours des 6 derniers mois, elle a déverrouillé leur maison et laissé des voleurs à l'intérieur. Comment pouvez-vous vous sentir en sécurité maintenant si des intrus pouvaient faire des copies de vos clés, documents, supports de stockage ou, par exemple, empoisonner le système d'alimentation en eau?



C'est là que les milliers d'organisations touchées par le malware Sunburst piraté la chaîne d'approvisionnement logicielle de SolarWinds sont désormais dans cette position. Les entreprises concernées recherchent désespérément des signes de compromis, mènent un audit de sécurité de l'infrastructure non programmé, et certaines peuvent même suspendre un certain nombre de services en attendant une enquête.



Le 8 décembre, FireEye a annoncé qu'il avait été piraté et a lancé une enquête impliquant le gouvernement américain et Microsoft.



Le 13 décembre, FireEye a publié un rapport détaillé sur le compromis , qui décrit comment le code malveillant est distribué via le logiciel Orion de SolarWinds.



Le 17 décembre, la Cybersecurity and Infrastructure Security Agency (CISA) a publié une annonce d'urgence, qui a demandé à toutes les entreprises utilisant le logiciel SolarWinds de mettre à jour ou même de déconnecter SolarWinds Orion du réseau (à l'étape 2 de l'article ci-dessus). Depuis lors, le service d'enquête sur les incidents de sécurité de Varonis a constaté une recrudescence des enquêtes médico-légales liées à la campagne et a identifié plusieurs attaques actives.



Alors qu'une grande partie du matériel à ce jour s'est concentrée sur la correction des versions compromises de la solution SolarWinds Orion, selon CISA , il existe des preuves de vecteurs d'intrusion supplémentaires associés à cette campagne.



Les attaques de la chaîne d'approvisionnement sont difficiles à défendre



Lors d'une attaque de la chaîne d'approvisionnement, l'attaquant cible un fournisseur de confiance ou un produit de confiance au lieu d'attaquer directement ses cibles. Dans ce cas, les attaquants ont injecté une porte dérobée préparée ("porte dérobée") dans un logiciel de confiance (SolarWinds Orion), qui a ensuite été automatiquement envoyée à des milliers de clients, déguisée en une mise à jour régulière.



La mauvaise nouvelle ne s'arrête pas là - les attaquants se sont révélés suffisamment sophistiqués pour passer inaperçus pendant des mois. Ils ont eu le temps de laisser des portes dérobées supplémentaires et d'accéder à une variété de systèmes et de données. Actuellement, les organisations qui ont reçu une mise à jour malveillante sont obligées d'enquêter absolument sur tout: en commençant par les systèmes et les comptes directement associés à SolarWinds, et en poursuivant l'enquête plus bas dans la chaîne.



Détection primaire



Que vous soyez un client Varonis ou non, la première étape consiste à rechercher la version concernée du logiciel SolarWinds. SolarWinds a identifié des versions vulnérables et, à partir du 16 décembre 2020, a publié des mises à jour et des correctifs pour remplacer les composants compromis.



Si votre version est vulnérable, voici les étapes à suivre:



  1. avsvmcloud [.] com ,

    DNS avsvmcloud [.] com, , (C2) SolarWinds Sunburst.

    Varonis , , Varonis Edge .

  2. , SolarWinds

    Varonis , SolarWinds, . , Active Directory, SolarWinds , .



    Varonis SolarWinds – :





  3. , ( , SolarWinds)

    () , , (Azure Active Directory).

    , , Varonis DatAlert.



APT- ( )



Cette attaque a été menée sans exploiter une vulnérabilité zero-day (au moins la même vulnérabilité que nous connaissons actuellement). La théorie dominante, non encore confirmée par SolarWinds, est que les attaquants ont utilisé les informations d'identification FTP publiques découvertes sur GitHub en 2018 pour accéder à l'infrastructure de mise à jour logicielle de l'entreprise.







L'attaquant a pu modifier le package de mise à jour logicielle et ajouter une porte dérobée malveillante à l'une des bibliothèques de plug-ins (DLL) de SolarWinds Orion appelée SolarWinds.Orion.Core.BusinessLayer.dll.







Les attaquants ont signé leur version de DLL malveillante avec la clé privée de SolarWinds. Le certificat a été émis par Symantec.



Nous supposons que l'attaquant a pu signer la DLL de deux manières:



  1. L'attaquant s'est coincé dans le processus de développement, a ajouté une porte dérobée et a autorisé SolarWinds à le signer dans le cadre d'un processus légitime de création et de déploiement de logiciels.
  2. L'attaquant a volé la clé privée du certificat, signé les DLL eux-mêmes et remplacé la DLL officielle par leur version malveillante. C'est moins probable.







Toute organisation qui utilise le logiciel SolarWinds et reçoit des mises à jour de ses serveurs a téléchargé et exécuté une DLL malveillante. La DLL étant signée et livrée via les serveurs de mise à jour officiels de SolarWinds, il était extrêmement difficile de détecter le contenu malveillant.



Analyse de la porte dérobée SolarWinds SUNBURST (BusinessLayer.dll)



Lorsque nous regardons à l'intérieur de la DLL malveillante, nous voyons que les attaquants se sont appuyés sur la furtivité. Ils se sont donné beaucoup de mal pour écrire du code qui s'harmoniserait avec le reste du code source d'Orion, en utilisant des arguments bien écrits et des noms de classes et de méthodes génériques et sans méfiance tels que "Initialize" ou "Job".







La porte dérobée SolarWinds Sunburst fonctionne en plusieurs étapes:





  1. 12-14 (C2). .









  2. C2 ( , IP-, , ), , .




  3. (DGA) IP- (C2). C2 — SolarWinds OIP (Orion Improvement Program).





  4. , .









  5. , , (), TEARDROP, .





Lors de la première session de communication, la porte dérobée envoie des informations sur l'appareil et son environnement, cryptées dans des paquets DNS.



De manière inhabituelle, l'adresse IP dans le paquet DNS de réponse détermine le prochain saut de la porte dérobée. Selon la plage de l'adresse IP, le processus SUNBURST met fin ou active des fonctionnalités supplémentaires , par exemple, la désactivation de l'antivirus ou le téléchargement et le lancement de nouveaux logiciels malveillants.



Regardons de plus près le début de la communication backdoor avec C2.



  1. Une fois la DLL chargée, SUNBURST effectue une série de vérifications pour s'assurer qu'elle s'exécute sur le réseau de l'entreprise et non sur une machine isolée.
  2. , « ». . .
  3. FQDN C2, . (domain1 domain2) + , (domain3):







    :



    Domain1 = ‘avsvmcloud[.]com’ 

    Domain2 = ‘appsync-api’ 

    Domain3 = [‘eu-west-1’, ‘us-west-2’, ‘us-east-1’, ‘us-east-2’]

    GetStatus :







  4. (. 2) (. 3) DNS . , DNS , .



    4 :



    «GetCurrentString» «GetPreviousString» GUID / .



    «GetNextString» «GetNextStringEx» GUID.



    DNS-, C2 , .



    , SUNBURST:







    Prevasio , DNS, .

  5. , IP- DNS- SUNBURST. «IPAddressHelper» IP-, IP-, DNS-:







    , IP- , SUNBURST , HTTP .

  6. IP- DNS- C2, CNAME. , :





  7. , SUNBURST DNS- , / , 120 .
  8. SUNBURST HTTP- C2 URL- , HTTP JSON.



    URI:



    hxxps://3mu76044hgf7shjf[.]appsync-api[.]eu-west-[.]avsvmcloud[.]com /swip/upd/Orion[.]Wireless[.]xml 



    , SUNBURST, / , . .:







    DLL



    , SolarWinds (EDR), . , «» .







    SolarWinds Sunburst , TEARDROP, «gracious_truth.jpg» Cobalt Strike Beacon, «» .



    — , , .



    FireEye CISA , (IOC), . , . , , , , — , , (« ») FireEye.



    « » . DLL SolarWinds Orion . , . , , . , , , , .



    CASA , :



    « , , , , . , , ».



All Articles