从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 问题:在处理GSO(大段)包时,qdisc_pkt_len_init函数可能没有正确计算包的长度。 - 原因:当skb->len大于hdr_len时,virtio_net_hdr_to_skb函数可能错误地将包视为正常GSO包。 - 影响:这可能导致包的计算长度不准确,从而引发安全问题。 2. 修复措施: - 检查条件:在计算qdisc_skb_cb(skb)->pkt_len时,添加了对payload的检查。 - 条件判断:如果payload小于等于0,返回;否则,计算gso_segs并更新pkt_len。 3. 修复代码: 4. 修复补丁: - 补丁应用:补丁应用在net/core/dev.c文件中,具体位置在第3795行。 - 补丁内容:添加了对payload的检查和gso_segs的计算。 5. 修复状态: - 状态:该补丁已经应用到内核源代码中。 - 作者:Eric Dumazet。 - 审核:由Willem de Bruijn、David Ahern、Paolo Abeni和Sasha Levin审核。 这些信息表明,修复了在处理GSO包时的长度计算错误,从而提高了系统的安全性。