i40e:通过添加过滤器的中间同步状态修复竞争条件(CVE-2024-53088)

admin 2024-11-20 15:43:04 Ali_nvd 来源:ZONE.CI 全球网 0 阅读模式
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 及以上版本"
参考链接
https://git.kernel.org/stable/c/262dc6ea5f1eb18c4d08ad83d51222d0dd0dd42a
https://git.kernel.org/stable/c/6e046f4937474bc1b9fa980c1ad8f3253fc638f6
https://git.kernel.org/stable/c/7ad3fb3bfd43feb4e15c81dffd23ac4e55742791
https://git.kernel.org/stable/c/bf5f837d9fd27d32fb76df0a108babcaf4446ff1
https://git.kernel.org/stable/c/f30490e9695ef7da3d0899c6a0293cc7cd373567
CVSS3评分 N/A
  • 攻击路径 N/A
  • 攻击复杂度 N/A
  • 权限要求 N/A
  • 影响范围 N/A
  • 用户交互 N/A
  • 可用性 N/A
  • 保密性 N/A
  • 完整性 N/A
N/A
CWE-ID 漏洞类型
- avd.aliyun.com
weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论:0   参与:  0