从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 问题:在处理GSO (Generic Segmentation Offload) 包时,qdisc_pkt_len_init函数没有正确检查skb->len与hdr_len的大小关系。 - 影响:当skb->len大于hdr_len时,virtio_net_hdr_to_skb函数可能无法正确处理TCP头部,导致潜在的安全风险。 2. 修复措施: - 检查:在qdisc_pkt_len_init函数中添加了更多的安全检查,确保skb->len与hdr_len的大小关系正确。 - 条件:如果skb->len大于hdr_len,函数会检查是否为恶意包,并返回错误。 3. 修复代码: - 修改:在代码中添加了条件判断,确保在处理GSO包时,payload的大小不超过shinfo->gso_size。 - 示例代码: 4. 修复范围: - 文件:net/core/dev.c - 行号:3766-3770 5. 修复者: - 作者:Eric Dumazet - 提交者:Paolo Abeni 6. 修复背景: - 问题编号:1def9238d4aa - 修复原因:修复了net_sched中更精确的pkt_len计算问题。 这些信息表明,修复了在处理GSO包时的安全漏洞,确保了在处理TCP头部时的正确性和安全性。