<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Sun, 04 Oct 2026 15:59:07 +0000</lastBuildDate>
    <item>
      <title>CVE-2024-58100 — bpf: check changes_pkt_data property for extension programs</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2024-58100</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;bpf: check changes_pkt_data property for extension programs&lt;/p&gt;
&lt;p&gt;When processing calls to global sub-programs, verifier decides whether
to invalidate all packet pointers in current state depending on the
changes_pkt_data property of the global sub-program.&lt;/p&gt;
&lt;p&gt;Because of this, an extension program replacing a global sub-program
must be compatible with changes_pkt_data property of the sub-program
being replaced.&lt;/p&gt;
&lt;p&gt;This commit:
- adds changes_pkt_data flag to struct bpf_prog_aux:
  - this flag is set in check_cfg() for main sub-program;
  - in jit_subprogs() for other sub-programs;
- modifies bpf_check_attach_btf_id() to check changes_pkt_data flag;
- moves call to check_attach_btf_id() after the call to check_cfg(),
  because it needs changes_pkt_data flag to be set:&lt;/p&gt;
&lt;p&gt;bpf_check:
      ...                             ...
    - check_attach_btf_id             resolve_pseudo_ldimm64
      resolve_pseudo_ldimm64   --&amp;gt;    bpf_prog_is_offloaded
      bpf_prog_is_offloaded           check_cfg
      check_cfg                     + check_attach_btf_id
      ...                             ...&lt;/p&gt;
&lt;p&gt;The following fields are set by check_attach_btf_id():
- env-&amp;gt;ops
- prog-&amp;gt;aux-&amp;gt;attach_btf_trace
- prog-&amp;gt;aux-&amp;gt;attach_func_name
- prog-&amp;gt;aux-&amp;gt;attach_func_proto
- prog-&amp;gt;aux-&amp;gt;dst_trampoline
- prog-&amp;gt;aux-&amp;gt;mod
- prog-&amp;gt;aux-&amp;gt;saved_dst_attach_type
- prog-&amp;gt;aux-&amp;gt;saved_dst_prog_type
- prog-&amp;gt;expected_attach_type&lt;/p&gt;
&lt;p&gt;Neither of these fields are used…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;bpf: check changes_pkt_data property for extension programs&lt;/p&gt;
&lt;p&gt;When processing calls to global sub-programs, verifier decides whether
to invalidate all packet pointers in current state depending on the
changes_pkt_data property of the global sub-program.&lt;/p&gt;
&lt;p&gt;Because of this, an extension program replacing a global sub-program
must be compatible with changes_pkt_data property of the sub-program
being replaced.&lt;/p&gt;
&lt;p&gt;This commit:
- adds changes_pkt_data flag to struct bpf_prog_aux:
  - this flag is set in check_cfg() for main sub-program;
  - in jit_subprogs() for other sub-programs;
- modifies bpf_check_attach_btf_id() to check changes_pkt_data flag;
- moves call to check_attach_btf_id() after the call to check_cfg(),
  because it needs changes_pkt_data flag to be set:&lt;/p&gt;
&lt;p&gt;bpf_check:
      ...                             ...
    - check_attach_btf_id             resolve_pseudo_ldimm64
      resolve_pseudo_ldimm64   --&amp;gt;    bpf_prog_is_offloaded
      bpf_prog_is_offloaded           check_cfg
      check_cfg                     + check_attach_btf_id
      ...                             ...&lt;/p&gt;
&lt;p&gt;The following fields are set by check_attach_btf_id():
- env-&amp;gt;ops
- prog-&amp;gt;aux-&amp;gt;attach_btf_trace
- prog-&amp;gt;aux-&amp;gt;attach_func_name
- prog-&amp;gt;aux-&amp;gt;attach_func_proto
- prog-&amp;gt;aux-&amp;gt;dst_trampoline
- prog-&amp;gt;aux-&amp;gt;mod
- prog-&amp;gt;aux-&amp;gt;saved_dst_attach_type
- prog-&amp;gt;aux-&amp;gt;saved_dst_prog_type
- prog-&amp;gt;expected_attach_type&lt;/p&gt;
&lt;p&gt;Neither of these fields are used…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2024-58100</guid>
    </item>
  </channel>
</rss>
