Skip to main content
BlogSécuritéDigest de sécurité Linode 30 octobre - 6 novembre 2022

Linode Security Digest 30 octobre - 6 novembre 2022

Digest de sécurité Linode

Dans le résumé de cette semaine, nous discuterons :

  • un avis de sécurité d'OpenSSL version 3.0.0 ;
  • une vulnérabilité de dépassement des limites d'un tableau Sqlite ; et
  • une attaque de repojacking de GitHub.

Avis de sécurité d'Openssl

OpenSSL 3.0.0 a récemment corrigé deux vulnérabilités : CVE-2022-3602 et CVE-2022-3786. 

CVE-2022-3602, classé critique (9.8/10), implique un débordement de la mémoire tampon de la pile de 4 octets qui peut conduire à un déni de service ou à une exécution de code. Pour une exploitation réussie, la cible doit effectuer une validation de certificat X509 d'un certificat malveillant, en particulier la vérification de la contrainte de nom. Un attaquant peut créer une adresse électronique malveillante pour faire déborder quatre octets contrôlés par l'attaquant sur la pile. Cela dit, l'attaque pourrait être contrariée par les protections contre les débordements de pile généralement activées dans les systèmes d'exploitation modernes. La vulnérabilité a d'abord été qualifiée de critique par OpenSSL, puis une analyse plus poussée a permis d'abaisser le niveau de gravité à élevé. À l'heure où nous écrivons ces lignes, le score de base est de 9,8 (critique).  

CVE-2022-3786, classée élevée (7.5/10), est un autre débordement de mémoire tampon déclenché par un certificat tls malveillant. Comme pour la vulnérabilité susmentionnée, l'attaque implique qu'un attaquant crée un certificat avec une adresse électronique malveillante. La différence réside dans les caractères qui peuvent être utilisés pour provoquer un débordement, qui est limité au caractère `.' (décimal 46), ce qui entraîne un blocage du service ou un déni de service. 

Les utilisateurs qui utilisent OpenSSL 3.0 sont encouragés à passer à la dernière version dès que possible. Ce billet de blog pourrait aider les utilisateurs à déterminer s'ils utilisent la version vulnérable de la bibliothèque dans leur environnement.  

Vulnérabilité de dépassement de capacité des tableaux Sqlite

TrailofBits a révélé une vulnérabilité de haute sévérité dans une bibliothèque de SGBD populaire Sqlite récemment patchée Le CVE assigné à cette vulnérabilité est CVE-2022-35737 et est noté 7.5/10.  

La vulnérabilité est un débordement de tableau dans SQLite 1.0.12 jusqu'à 3.39.x avant 3.39.2 et affecte les applications qui utilisent la bibliothèque SQLite API. L'exploitabilité dépend de la manière dont SQLite est compilé ; si le programme est compilé sans que les canaris de pile soient activés, une exécution de code est possible. La vulnérabilité a été introduite dans la version 1.0.12, publiée le 17 octobre 2000. 

Selon la source, "Sur les systèmes vulnérables, CVE-2022-35737 est exploitable lorsque de grandes chaînes de caractères sont transmises aux implémentations SQLite des fonctions printf et lorsque la chaîne de format contient les types de substitution de format %Q, %q, ou %w." Cela réduit la surface d'attaque et la probabilité qu'une application soit effectivement exploitable par le biais de cette vulnérabilité, bien qu'il soit toujours fortement recommandé aux utilisateurs d'évaluer le risque dans le contexte de leur utilisation du composant.   

La version 3.39.2 de SQLite, qui a été corrigée, est disponible pour que les utilisateurs puissent la mettre à jour dans leurs applications. Les utilisateurs qui dépendent d'outils utilisant la bibliothèque SQLite vulnérable doivent attendre que les mainteneurs du code publient le correctif. Trailofbits a également publié le POC de l'exploit qui peut être trouvé sur GitHub.  

Github Repojacking

Checkmarx a dévoilé une nouvelle méthode d'attaque de la chaîne d'approvisionnement en ciblant les dépôts de code hébergés sur github.com. L'attaque est appelée repojacking et implique la prise de contrôle d'un dépôt en contournant un contrôle de sécurité préexistant mis en place par Microsoft pour ce type d'attaque. Ce contrôle est appelé "popular-repository-namespace-retirement" et interdit aux utilisateurs de GitHub de créer des dépôts dont le nom correspond à celui utilisé précédemment par un utilisateur désactivé ayant le même nom d'utilisateur si le dépôt a eu plus de 100 clones au cours de la semaine précédant le changement de nom d'utilisateur. Cette mesure a été mise en œuvre par GitHub après que checkmarx a révélé une vulnérabilité similaire en 2021. 

La nouvelle attaque contourne les mesures d'atténuation en tirant parti d'une fonctionnalité de github appelée transfert de référentiel. Voici comment l'attaque est menée :

  1. "victim/repo" est un dépôt GitHub populaire retiré dans le cadre de la protection "popular repository namespace retirement" (retrait de l'espace de noms des dépôts populaires).
  2. "helper_account" crée le dépôt "repo".
  3. Le compte "helper_account" transfère la propriété du dépôt "repo" au compte "attacker_account".
  4. "compte_attaquant" renomme son nom d'utilisateur en "victime"
  5. Le nouveau compte "victime" (anciennement "compte_attaquant") accepte le transfert de propriété et prend essentiellement le contrôle du référentiel cible.

Le correctif pour cette vulnérabilité a été appliqué. Checkmarx a également publié un outil pour vérifier quelles dépendances directes de golang pourraient être vulnérables à ce type d'attaque. 


Commentaires

Laissez un commentaire

Votre adresse électronique ne sera pas publiée. Les champs obligatoires sont marqués d'un *.