i40e:通过添加过滤器的中间同步状态修复竞争条件(CVE-2024-53088)
CVE编号
CVE-2024-53088利用情况
暂无补丁情况
N/A披露时间
2024-11-20漏洞描述
在Linux内核中,已经解决了以下漏洞:i40e:通过添加过滤器的中间同步状态解决竞态条件修复i40e驱动中的竞态条件,该竞态条件导致MAC/VLAN过滤器被破坏和泄露。解决在负载较重时多个线程同时修改MAC/VLAN过滤器时出现的问题,通过设定mac和端口VLAN来修复。1. 线程T0在i40e_ndo_set_vf_port_vlan()中的i40e_add_filter()分配一个过滤器。2. 线程T1同时在i40e_ndo_set_vf_mac()中的__i40e_del_filter()释放该过滤器。3. 随后,i40e_service_task()调用i40e_sync_vsi_filters(),该函数引用已经被释放的过滤器内存,导致破坏。复现步骤:1. 创建多个虚拟功能(VFs)。2. 通过并行操作对VFs更改MAC地址和对主机更改端口VLAN来施加并发重载。3. 观察dmesg中的错误:“在VF XX上添加RX过滤器时出错I40E_AQ_RC_ENOSPC,请手动为VF XX设置混杂模式”。确切的稳定复现代码,Intel目前无法开源。该修复涉及实现一个新的过滤器状态,即I40E_FILTER_NEW_SYNC,用于过滤器位于tmp_add_list中的时候。这些过滤器不能直接从哈希列表中删除,而必须使用完整的过程来移除。解决建议
"将组件 Linux 升级至 4.10 及以上版本"- 攻击路径 N/A
- 攻击复杂度 N/A
- 权限要求 N/A
- 影响范围 N/A
- 用户交互 N/A
- 可用性 N/A
- 保密性 N/A
- 完整性 N/A
CWE-ID | 漏洞类型 |
Exp相关链接

版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论