从这个网页截图中,我们可以获取到以下关于漏洞的关键信息: 1. 漏洞描述: - 标题:gso: fix udp gso fraglist segmentation after pull from frag_list - 描述:修复了在从frag_list拉取后,udp gso fraglist的segmentation问题。具体来说,修复了在skb_segment_list中处理gso fraglist skb时,由于片段的几何结构被破坏而导致的错误。 2. 修复方法: - 代码修改:在net/ipv4/udp_offload.c文件中,对udp_gso_segment_list函数进行了修改,以正确处理gso fraglist skb的segmentation问题。 - 代码片段: 3. 修复原因: - 问题描述:在极端情况下,从frag_list拉取所有数据会导致skb_linear中的NULL ptr deref。 - 影响:这可能导致UDP的udp4_gro_receive函数中的csum计算错误。 4. 修复细节: - 代码修改:在udp_gso_segment_list函数中,增加了对gso fraglist skb的特殊处理,以确保正确的segmentation。 - 数据结构:修复了对gso fraglist skb的处理,确保其片段的几何结构正确。 5. 修复范围: - 文件:net/ipv4/udp_offload.c - 代码行数:22行代码被修改。 6. 修复作者: - 作者:Willem de Bruijn - 贡献者:Jakub Kicinski 7. 修复状态: - 状态:已修复并提交到Linux内核稳定分支。 通过这些信息,我们可以了解到这个漏洞的修复过程和修复细节,以及修复后的代码变化。