CVE-2026-50252 in Unbound
Résumé
par VulDB • 22/07/2026
Chez NLnet Labs, dans les versions d'Unbound 1.4.22 à 1.25.1 incluses, le numéro de port source UDP est randomisé et destiné à servir de valeur secrète augmentant l'entropie des transactions DNS. Lorsque les politiques d'équilibrage de charge du résolveur dépendent du port source tout en révélant leur résultat, cette confidentialité est compromise. La vulnérabilité survient lorsque la politique d'équilibrage de charge est cohérente par rapport au numéro de port UDP source entrant et à l'adresse IP, tout en dépendant fortement du numéro de port UDP source entrant comme source de randomisation. Lorsque l'option de configuration SO_REUSEPORT est activée ('so-reuseport: yes') dans Unbound (par défaut), ces conditions sont remplies, rendant le système vulnérable aux attaques d'empoisonnement de cache DNS. Au démarrage, Unbound partitionne aléatoirement l'espace des numéros de port source UDP disponibles en sous-ensembles disjoints de taille (presque) égale, attribuant chaque sous-ensemble à un thread worker spécifique. Lorsqu'une requête DNS entrante est reçue, le mécanisme d'équilibrage de charge SO_REUSEPORT du noyau assigne de manière déterministe la requête à une socket associée à un thread particulier. Toutes les requêtes DNS sortantes générées lors de la résolution de cette demande utilisent des ports source sélectionnés exclusivement dans le sous-ensemble de ports attribué au thread correspondant. Puisque ces sous-ensembles de ports sont disjoints entre les threads, le port source observé dans une requête sortante du résolveur vers un serveur de noms autoritaire sert d'indicateur fiable du thread worker ayant traité la requête client initiale. Un acteur malveillant peut acquérir la correspondance entre les numéros de ports UDP sources entrants (pour une adresse IP source fixe donnée) et les threads workers d'Unbound, et l'utiliser pour mener des attaques d'empoisonnement de cache DNS en réduisant efficacement le nombre de ports aléatoires disponibles par thread.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.