CVE-2026-80841 in Linuxinformation

Résumé

par VulDB • 04/09/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

net/packet: reporter la libération de TX_RING par vmalloc jusqu'à ce que les skbs soient terminés

Les skbs AF_PACKET TX_RING conservent un pointeur brut vers leur trame du ring. Les références aux pages des skbs préservent les blocs du ring basés sur des pages après la libération de pg_vec, mais ils ne préservent pas une mappage vmalloc.

tpacket_destruct_skb() supprime actuellement la référence en attente avant d'écrire l'horodatage et TP_STATUS_AVAILABLE dans la trame. Déplacer le décrément après ces écritures. Le smp_wmb() dans __packet_set_status() ordonne les écritures de trame avant le décrément.

Vérifier également les frames TX en attente sous pg_vec_lock avant un remplacement du ring non fermant, afin qu'un envoi concurrent ne puisse pas ajouter un skb en attente entre la vérification initiale et l'échange du ring.

L'allocation du ring peut produire un mélange de blocs basés sur des pages et de blocs basés sur vmalloc. Allouer le stockage pour les travaux différés lors de la configuration du TX ring lorsque le premier bloc basé sur vmalloc est rencontré, et conserver son pointeur dans l'en-tête d'allocation pg_vec. Si l'allocation échoue, retourner -ENOMEM depuis la configuration du ring. À la fermeture du socket, un pointeur non NULL identifie un vecteur basé sur vmalloc sans nécessiter de balayage. Si des skbs TX restent, reporter tout le vecteur vers system_long_wq.

Après détachement de pg_vec, un destructeur tardif peut sauter le décrément en attente. Utiliser la comptabilité mémoire d'écriture du socket comme verrou de durée de vie différée : un skb reste facturé jusqu'à son sock_wfree() final, après tous les accès aux frames du ring. Le travail différé conserve une référence au socket et se reschedule tant qu'il n'y a plus de skbs TX en attente.

Déplacer la libération pending_refcnt vers packet_sock_destruct() afin que les destructeurs tardifs de skb et le nettoyage différé puissent l'utiliser en toute sécurité après packet_release(). Le démantèlement basé sur des pages reste synchrone, et aucun verrou n'est ajouté au chemin critique de complétion TX.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsable

Linux

Réserver

26/08/2026

Divulgation

04/09/2026

Modérer

accepté

Entrée

VDB-398949

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Might our Artificial Intelligence support you?

Check our Alexa App!