<?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>Thu, 01 Oct 2026 12:19:52 +0000</lastBuildDate>
    <item>
      <title>CVE-2025-39913 — tcp_bpf: Call sk_msg_free() when tcp_bpf_send_verdict() fails to allocate psock-&gt;cork.</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2025-39913</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux, Siemens RUGGEDCOM RST2428P&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;tcp_bpf: Call sk_msg_free() when tcp_bpf_send_verdict() fails to allocate psock-&amp;gt;cork.&lt;/p&gt;
&lt;p&gt;syzbot reported the splat below. [0]&lt;/p&gt;
&lt;p&gt;The repro does the following:&lt;/p&gt;
&lt;p&gt;1. Load a sk_msg prog that calls bpf_msg_cork_bytes(msg, cork_bytes)
  2. Attach the prog to a SOCKMAP
  3. Add a socket to the SOCKMAP
  4. Activate fault injection
  5. Send data less than cork_bytes&lt;/p&gt;
&lt;p&gt;At 5., the data is carried over to the next sendmsg() as it is
smaller than the cork_bytes specified by bpf_msg_cork_bytes().&lt;/p&gt;
&lt;p&gt;Then, tcp_bpf_send_verdict() tries to allocate psock-&amp;gt;cork to hold
the data, but this fails silently due to fault injection + __GFP_NOWARN.&lt;/p&gt;
&lt;p&gt;If the allocation fails, we need to revert the sk-&amp;gt;sk_forward_alloc
change done by sk_msg_alloc().&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s call sk_msg_free() when tcp_bpf_send_verdict fails to allocate
psock-&amp;gt;cork.&lt;/p&gt;
&lt;p&gt;The &amp;#34;*copied&amp;#34; also needs to be updated such that a proper error can
be returned to the caller, sendmsg. It fails to allocate psock-&amp;gt;cork.
Nothing has been corked so far, so this patch simply sets &amp;#34;*copied&amp;#34;
to 0.&lt;/p&gt;
&lt;p&gt;[0]:
WARNING: net/ipv4/af_inet.c:156 at inet_sock_destruct+0x623/0x730 net/ipv4/af_inet.c:156, CPU#1: syz-executor/5983
Modules linked in:
CPU: 1 UID: 0 PID: 5983 Comm: syz-executor Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:inet_sock_destruct+0x623/0x730 net/ipv4/af_inet.c:156
Code: 0f 0b 90 e9 62 fe ff ff…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Linux, Siemens RUGGEDCOM RST2428P&lt;/p&gt;
&lt;p&gt;In the Linux kernel, the following vulnerability has been resolved:&lt;/p&gt;
&lt;p&gt;tcp_bpf: Call sk_msg_free() when tcp_bpf_send_verdict() fails to allocate psock-&amp;gt;cork.&lt;/p&gt;
&lt;p&gt;syzbot reported the splat below. [0]&lt;/p&gt;
&lt;p&gt;The repro does the following:&lt;/p&gt;
&lt;p&gt;1. Load a sk_msg prog that calls bpf_msg_cork_bytes(msg, cork_bytes)
  2. Attach the prog to a SOCKMAP
  3. Add a socket to the SOCKMAP
  4. Activate fault injection
  5. Send data less than cork_bytes&lt;/p&gt;
&lt;p&gt;At 5., the data is carried over to the next sendmsg() as it is
smaller than the cork_bytes specified by bpf_msg_cork_bytes().&lt;/p&gt;
&lt;p&gt;Then, tcp_bpf_send_verdict() tries to allocate psock-&amp;gt;cork to hold
the data, but this fails silently due to fault injection + __GFP_NOWARN.&lt;/p&gt;
&lt;p&gt;If the allocation fails, we need to revert the sk-&amp;gt;sk_forward_alloc
change done by sk_msg_alloc().&lt;/p&gt;
&lt;p&gt;Let&amp;#39;s call sk_msg_free() when tcp_bpf_send_verdict fails to allocate
psock-&amp;gt;cork.&lt;/p&gt;
&lt;p&gt;The &amp;#34;*copied&amp;#34; also needs to be updated such that a proper error can
be returned to the caller, sendmsg. It fails to allocate psock-&amp;gt;cork.
Nothing has been corked so far, so this patch simply sets &amp;#34;*copied&amp;#34;
to 0.&lt;/p&gt;
&lt;p&gt;[0]:
WARNING: net/ipv4/af_inet.c:156 at inet_sock_destruct+0x623/0x730 net/ipv4/af_inet.c:156, CPU#1: syz-executor/5983
Modules linked in:
CPU: 1 UID: 0 PID: 5983 Comm: syz-executor Not tainted syzkaller #0 PREEMPT(full)
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:inet_sock_destruct+0x623/0x730 net/ipv4/af_inet.c:156
Code: 0f 0b 90 e9 62 fe ff ff…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2025-39913</guid>
    </item>
  </channel>
</rss>
