<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-30T11:45:09.735568+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/cve-2023-52924</id>
    <title>CVE-2023-52924 — netfilter: nf_tables: don't skip expired elements during walk</title>
    <updated>2026-09-30T11:45:09.752518+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Linux</p>
<p>In the Linux kernel, the following vulnerability has been resolved:</p>
<p>netfilter: nf_tables: don't skip expired elements during walk</p>
<p>There is an asymmetry between commit/abort and preparation phase if the
following conditions are met:</p>
<p>1. set is a verdict map ("1.2.3.4 : jump foo")
2. timeouts are enabled</p>
<p>In this case, following sequence is problematic:</p>
<p>1. element E in set S refers to chain C
2. userspace requests removal of set S
3. kernel does a set walk to decrement chain-&gt;use count for all elements
   from preparation phase
4. kernel does another set walk to remove elements from the commit phase
   (or another walk to do a chain-&gt;use increment for all elements from
    abort phase)</p>
<p>If E has already expired in 1), it will be ignored during list walk, so its use count
won't have been changed.</p>
<p>Then, when set is culled, -&gt;destroy callback will zap the element via
nf_tables_set_elem_destroy(), but this function is only safe for
elements that have been deactivated earlier from the preparation phase:
lack of earlier deactivate removes the element but leaks the chain use
count, which results in a WARN splat when the chain gets removed later,
plus a leak of the nft_chain structure.</p>
<p>Update pipapo_get() not to skip expired elements, otherwise flush
command reports bogus ENOENT errors.</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2023-52924"/>
  </entry>
</feed>
