CVE-2026-72251 in Linux
الملخص
بحسب VulDB • 16/08/2026
في نواة لينكس، تم حل الثغرة التالية:
netfilter: nf_nat_sip: إعادة تحميل مؤشر بيانات قديم محتمل (stale data pointer)
نقلاً عن sashiko: ------------------------------------------------------------------------ [..] لاحظت وجود خطأ ذاكرة محتمل وتلف في الرأس متعلق بمساعد NAT الخاص بـ SIP.
في net/netfilter/nf_nat_sip.c:nf_nat_sip(): if (skb_ensure_writable(skb, skb->len)) {
nf_ct_helper_log(skb, ct, "cannot mangle packet"); return NF_DROP; } uh = (void *)skb->data + protoff; uh->dest = ct_sip_info->forced_dport; if (!nf_nat_mangle_udp_packet(skb, ct, ctinfo, protoff, 0, 0, NULL, 0)) {
إذا تم إعادة تخصيص SKB منسوخ أو مجزأ بواسطة skb_ensure_writable()، فإن مخزن البيانات القديم يتم تحريره. ومع ذلك، يفشل nf_nat_sip() في تحديث *dptr للإشارة إلى المخزن الجديد.
يبدو أيضاً أنه يستخدم nf_nat_mangle_udp_packet() على ما قد يكون حزمة TCP، مما يؤدي إلى الكتابة فوق رقم التسلسل من خلال تحديث التحقق من الصحة (checksum). ------------------------------------------------------------------------
يقوم nf_conntrack_sip بتسطيح skbs (linearizes skbs)، وبالتالي لا يمكن رؤية SKB مجزأ. لكن النسخ المتماثلة (clones) ممكنة، لذا يجب إعادة بناء dptr.
تعطيل فرع nf_nat_mangle_udp_packet() لتدفقات TCP. لا يبدو أن هذا قد يحدث أبداً، وإلا لكنا تلقينا تقارير عن أخطاء حول هذه المسألة، لذلك نقوم فقط بالتحقق مما إذا كان conntrack هو UDP ونسقط الحزم الأخرى (غير UDP).
يحدد conntrack_sip المتصل ->forced_dport لرسائل SIP_HDR_VIA_UDP، لذا لا أعتقد أن هذا متوقعاً أبداً لتدفق TCP.
If you want to get best quality of vulnerability data, you may have to visit VulDB.