# netfilter: nf_tables: 使用时间戳检查集合元素是否超时
## 概述
Linux 内核中的 netfilter 模块存在一个漏洞,该漏洞涉及 nftables set 元素超时检查机制。通过引入时间戳字段来解决此问题,确保元素不会在控制平面事务未完成时过期。
## 影响版本
无具体版本号提供,影响 Linux 内核中的 netfilter 模块。
## 细节
- 在事务的开始处添加时间戳字段,并将其存储在 nftables 每个网络命名空间区域中。
- 更新集后端的 `.insert` 和 `.deactivate` 方法,以及同步 gc 路径,以使用时间戳。
- `.lookup` 和 `.update` 方法将持续使用当前时间来检查元素是否已过期,因为这些方法是通过数据包路径调用的。
- `.get` 路径和导出也使用当前时间,因为它们在 rcu 读取段锁下无锁运行。
- 异步 gc 也需要检查当前时间,因为它是从工作队列异步运行的。
## 影响
该漏洞可能导致 nftables 集合元素在事务未完成时错误地过期,从而可能影响网络流量的过滤和策略执行。修正方案引入的时间戳机制可以避免该问题,提升系统稳定性和安全性。
# | POC 描述 | 源链接 | 神龙链接 |
---|
标题: netfilter: nf_tables: use timestamp to check for set element timeout - kernel/git/stable/linux.git - Linux kernel stable tree -- 🔗来源链接
标签: