CVE-2024-27397: netfilter: nf_tables: use timestamp to check for set element timeout

Description

In the Linux kernel, the following vulnerability has been resolved:

netfilter: nf_tables: use timestamp to check for set element timeout

Add a timestamp field at the beginning of the transaction, store it
in the nftables per-netns area.

Update set backend .insert, .deactivate and sync gc path to use the
timestamp, this avoids that an element expires while control plane
transaction is still unfinished.

.lookup and .update, which are used from packet path, still use the
current time to check if the element has expired. And .get path and dump
also since this runs lockless under rcu read size lock. Then, there is
async gc which also needs to check the current time since it runs
asynchronously from a workqueue.

Classification

CVE ID: CVE-2024-27397

Affected Products

Vendor: Linux

Product: Linux

Exploit Prediction Scoring System (EPSS)

EPSS Score: 0.04% (probability of being exploited)

EPSS Percentile: 12.38% (scored less or equal to compared to others)

EPSS Date: 2025-02-03 (when was this score calculated)

References

https://git.kernel.org/stable/c/f8dfda798650241c1692058713ca4fef8e429061
https://git.kernel.org/stable/c/eaf1a29ea5d7dba8e84e9e9f3b3f47d0cd540bfe
https://git.kernel.org/stable/c/7b17de2a71e56c10335b565cc7ad238e6d984379
https://git.kernel.org/stable/c/0d40e8cb1d1f56a994cdd2e015af622fdca9ed4d
https://git.kernel.org/stable/c/b45176b869673417ace338b87cf9cdb66e2eeb01
https://git.kernel.org/stable/c/383182db8d58c4237772ba0764cded4938a235c3
https://git.kernel.org/stable/c/7395dfacfff65e9938ac0889dafa1ab01e987d15

Timeline