Vigil@nce : Noyau Linux, corruption de mémoire de sctp_getsockopt_local_addrs_old
juillet 2008 par Vigil@nce
Un attaquant local peut créer une socket SCTP afin de stopper le
système et éventuellement d’y exécuter du code.
– Gravité : 2/4
– Conséquences : déni de service de la machine
– Provenance : compte utilisateur
– Moyen d’attaque : aucun démonstrateur, aucune attaque
– Compétence de l’attaquant : expert (4/4)
– Confiance : confirmé par l’éditeur (5/5)
– Diffusion de la configuration vulnérable : élevée (3/3)
– Date création : 08/07/2008
– Référence : VIGILANCE-VUL-7935
PRODUITS CONCERNÉS
Linux noyau [versions confidentielles]
DESCRIPTION
Le protocole SCTP (Stream Control Transmission Protocol) permet de
créer des associations pour faire transiter plusieurs flux.
La fonction sctp_getsockopt_local_addrs_old() du fichier
net/sctp/socket.c définit les adresses locales et est appelée via
setsockopt(). Cependant, cette fonction ne vérifie pas le nombre
d’adresses reçues (addr_num), ce qui provoque un débordement
d’entier, puis l’allocation d’une zone mémoire trop courte.
Un attaquant local peut donc créer une socket SCTP afin de stopper
le système et éventuellement d’y exécuter du code.
CARACTÉRISTIQUES
– Références : BID-29990, CVE-2008-2826, VIGILANCE-VUL-7935
– Url : https://vigilance.aql.fr/arbre/1/7935