Vulnérabilités dans DNSmasq

Date de publication :

Plusieurs vulnérabilités ont été corrigées dans l’outil DNSmasq. DNSmasq permet de mettre en place un serveur DNS ainsi que des serveurs DHCP, Bootstrap et TFTP pour des réseaux de petites tailles.

CVE-2020-25681[Score CVSS v3 : 8.1] : Une vulnérabilité de type débordement de tas dans la fonction sort_rrset(), lorsque DNSSEC est utilisé, a été corrigée. Son exploitation permettre à un attaquant distant d'écrire des données arbitraires dans la mémoire du périphérique cible, ce qui peut entraîner une corruption de la mémoire et d'autres comportements erratiques.

CVE-2020-25682[Score CVSS v3 : 8.1] : Une vulnérabilité de type débordement de tampon dans la fonction extract_name(), lorsque la DNSSEC est activé, a été corrigée. Son exploitation peut permettre à un attaquant distant de provoquer une corruption de la mémoire sur le périphérique cible.

CVE-2020-25683 [Score CVSS v3 : 7.5] : Une vulnérabilité de type débordement de tas, lorsque DNSSEC est activé, a été corrigée. Un attaquant distant et non-authenfié peut potentiellement exploiter cette faille afin de provoquer un déni de service. Cette faille est due à l'absence de contrôle de longueur dans la fonction rtc1035.c:extract_name(), qui pourrait être abusée pour faire exécuter la fonction memcpy() avec une taille négative dans get_rdata() et provoquer un plantage de Dnsmasq.

CVE-2020-25684[Score CVSS v3 : 3.7] : Un manque de vérification du couple adresse IP et port dans la fonction reply_query peut permettre de faciliter la légitimation de requêtes DNS malveillantes par un attaquant distant et non-authentifié.

CVE-2020-25685, CVE-2020-25686[Score CVSS v3 : 3.7] : Un attaquant distant et non-authentifié peut être en mesure d’usurper le trafic DNS. L’exploitation consiste en l’envoi de plusieurs requêtes DNS pour le même nom de ressource (RRNAME) en utilisant une attaque par anniversaire (RFC 5452), l’attaquant peut ainsi empoisonner le cache DNS sur le serveur vulnérable.

L'un des aspects intéressants de ces vulnérabilités est que chacune d'entre elles, en soi, possède un impact limité. Cependant, elles pourraient être combinées pour construire des attaques à plusieurs niveaux extrêmement efficaces.
En effet, l'exploitation de certaines vulnérabilités permet d'en exploiter d'autres plus facilement. Par exemple, la combinaison des CVE-2020-25682, CVE-2020-25684 et CVE-2020-25686 aurait pour résultat une complexité d'attaque moindre (avec le même impact). 

CVE-2020-25687[Score CVSS v3 : 3.7] : Une vulnérabilité de type débordement de tas, lorsque DNSSEC est activé, a été corrigée. Un attaquant distant et non-authenfié peut potentiellement exploiter cette faille afin de provoquer un déni de service. Cette faille est due à l'absence de contrôle de longueur dans la fonction rtc1035.c:extract_name(), qui pourrait être abusée pour faire exécuter la fonction memcpy() avec une taille négative dans get_rdata() et provoquer un plantage de Dnsmasq.

Informations

La faille est activement exploitée :

Un correctif existe :

Une mesure de contournement existe :

Risques

Risques

  • Déni de service
  • Injection de code arbitraire
  • Expositions d’informations sensibles
  • Atteinte à l’intégrité, la confidentialité et à la disponibilité des données transitant sur le réseau
  • Violation des politiques de sécurité

Criticité

  • Score CVSS v3 : 3.7 ; 7.5 ; 8.1

Existence d’un code d’exploitation

  • Aucun code d’exploitation n’est disponible publiquement à l'heure actuelle.

Composants vulnérables

  • DNSmasq <v2.83

CVE

Solutions ou recommandations

Mise en place de correctifs de sécurité

  • Mettre à jour dnsmasq vers la version 2.83

Solution de contournement

  • Aucune solution de contournement n’est disponible à l’heure actuelle.