<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Io_uring on KnightLi Blog</title>
        <link>https://knightli.com/en/tags/io_uring/</link>
        <description>Recent content in Io_uring on KnightLi Blog</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Fri, 22 May 2026 15:16:59 +0800</lastBuildDate><atom:link href="https://knightli.com/en/tags/io_uring/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>CVE-2026-43494 / PinTheft: Local Privilege Escalation Risk from Linux RDS and io_uring</title>
        <link>https://knightli.com/en/2026/05/22/linux-kernel-cve-2026-43494-pintheft/</link>
        <pubDate>Fri, 22 May 2026 15:16:59 +0800</pubDate>
        
        <guid>https://knightli.com/en/2026/05/22/linux-kernel-cve-2026-43494-pintheft/</guid>
        <description>&lt;p&gt;&lt;code&gt;CVE-2026-43494&lt;/code&gt; is a Linux kernel local privilege escalation risk. The related exploitation chain is also known publicly as &lt;code&gt;PinTheft&lt;/code&gt;. The key point is not a remote entry point, but whether a low-privilege local user can line up RDS zerocopy, &lt;code&gt;io_uring&lt;/code&gt; fixed buffers, a readable SUID-root program, and a suitable kernel version.&lt;/p&gt;
&lt;p&gt;One naming detail is worth clarifying first: the &lt;code&gt;Unclecheng-li/poc-lab&lt;/code&gt; repository directory is named &lt;code&gt;CVE-2026-43494 PinTheft&lt;/code&gt;, while the README title also mentions &lt;code&gt;QVD-2026-27616 - PinTheft&lt;/code&gt;. Based on public CVE entries and third-party advisories, &lt;code&gt;CVE-2026-43494&lt;/code&gt; points to a Linux kernel RDS zerocopy issue where &lt;code&gt;op_nents&lt;/code&gt; is not reset correctly, leading to a double-free / reference-counting anomaly. &lt;code&gt;QVD-2026-27616&lt;/code&gt; appears more like a Qianxin risk advisory identifier. In real triage, record both identifiers, but treat distribution security advisories and kernel patch status as the source of truth.&lt;/p&gt;
&lt;h2 id=&#34;what-is-the-core-bug&#34;&gt;What Is the Core Bug?
&lt;/h2&gt;&lt;p&gt;The issue appears in the zerocopy send path of Linux RDS, Reliable Datagram Sockets. Public descriptions point to these key functions:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rds_message_zcopy_from_user()
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rds_message_purge()
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;When &lt;code&gt;iov_iter_get_pages2()&lt;/code&gt; fails inside &lt;code&gt;rds_message_zcopy_from_user()&lt;/code&gt;, pages that have already been pinned can be released by the error path, but the related &lt;code&gt;op_nents&lt;/code&gt; state is not cleared correctly. Later, &lt;code&gt;rds_message_purge()&lt;/code&gt; may still release the residual entries again. The result is that the same batch of page references can be decremented too many times, creating an exploitable reference-counting error.&lt;/p&gt;
&lt;p&gt;Viewed alone, the RDS bug is an error-path memory-management issue inside the kernel. PinTheft becomes dangerous because the exploitation chain connects it with the &lt;code&gt;io_uring&lt;/code&gt; fixed-buffer mechanism: &lt;code&gt;io_uring&lt;/code&gt; still keeps an old &lt;code&gt;struct page *&lt;/code&gt;, while the page itself has already been freed and reallocated for another purpose. The public PoC then steers this state toward overwriting the page cache of a SUID-root program, eventually reaching local privilege escalation.&lt;/p&gt;
&lt;h2 id=&#34;why-it-is-called-pintheft&#34;&gt;Why It Is Called PinTheft
&lt;/h2&gt;&lt;p&gt;&lt;code&gt;io_uring REGISTER_BUFFERS&lt;/code&gt; pins user pages. For normal pages, &lt;code&gt;FOLL_PIN&lt;/code&gt; is not just a simple reference increment; it raises the page refcount through a larger bias. The public PoC uses the concept of &lt;code&gt;GUP_PIN_COUNTING_BIAS = 1024&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The name PinTheft means the attack chain repeatedly &amp;ldquo;steals&amp;rdquo; those pin references through the RDS zerocopy failure path. After the references are drained, &lt;code&gt;io_uring&lt;/code&gt; still believes it holds a valid page, but that physical page can now be freed and reused by the page cache.&lt;/p&gt;
&lt;p&gt;This class of vulnerability is easy to misread as &amp;ldquo;directly modifying &lt;code&gt;/usr/bin/su&lt;/code&gt; on disk.&amp;rdquo; A more accurate description is that the exploitation chain tries to overwrite the in-memory page cache. The file itself may not be written back to disk, but when the kernel executes the SUID program, it may fetch instructions from the contaminated page cache and run the attack payload.&lt;/p&gt;
&lt;h2 id=&#34;the-trigger-conditions-are-not-broad&#34;&gt;The Trigger Conditions Are Not Broad
&lt;/h2&gt;&lt;p&gt;This is not a vulnerability where &amp;ldquo;any Linux server can be remotely hit.&amp;rdquo; Public information indicates that the exploitation chain depends on at least these conditions:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The kernel has &lt;code&gt;CONFIG_RDS&lt;/code&gt; and &lt;code&gt;CONFIG_RDS_TCP&lt;/code&gt; enabled.&lt;/li&gt;
&lt;li&gt;The system has &lt;code&gt;CONFIG_IO_URING&lt;/code&gt; enabled, and &lt;code&gt;kernel.io_uring_disabled=0&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;rds&lt;/code&gt; / &lt;code&gt;rds_tcp&lt;/code&gt; modules are already loaded, or a low-privilege user can trigger autoloading.&lt;/li&gt;
&lt;li&gt;A readable SUID-root binary exists locally, such as &lt;code&gt;/usr/bin/su&lt;/code&gt;, &lt;code&gt;/usr/bin/passwd&lt;/code&gt;, or &lt;code&gt;/usr/bin/pkexec&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The public PoC also depends on the newer &lt;code&gt;IORING_REGISTER_CLONE_BUFFERS&lt;/code&gt; API. CloudLinux analysis notes that the public PoC is more aligned with kernel 6.13 and later.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If any one of these links is missing, the public exploitation path breaks. For example, many RHEL-family distributions do not compile RDS by default, older Ubuntu kernels may lack the &lt;code&gt;io_uring&lt;/code&gt; clone-buffer API needed by the PoC, and some environments restrict automatic RDS module loading by unprivileged users.&lt;/p&gt;
&lt;h2 id=&#34;one-minute-self-check&#34;&gt;One-Minute Self-Check
&lt;/h2&gt;&lt;p&gt;First, check the kernel configuration:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zgrep -E &lt;span class=&#34;s2&#34;&gt;&amp;#34;CONFIG_(RDS|RDS_TCP|IO_URING)&amp;#34;&lt;/span&gt; /proc/config.gz 2&amp;gt;/dev/null &lt;span class=&#34;se&#34;&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;  &lt;span class=&#34;o&#34;&gt;||&lt;/span&gt; grep -E &lt;span class=&#34;s2&#34;&gt;&amp;#34;CONFIG_(RDS|RDS_TCP|IO_URING)&amp;#34;&lt;/span&gt; /boot/config-&lt;span class=&#34;k&#34;&gt;$(&lt;/span&gt;uname -r&lt;span class=&#34;k&#34;&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Then check whether &lt;code&gt;io_uring&lt;/code&gt; is disabled:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat /proc/sys/kernel/io_uring_disabled 2&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Interpret the common values like this:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;0&lt;/code&gt;: allowed, giving the largest exposure.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;1&lt;/code&gt;: restricted for unprivileged users; exact behavior depends on kernel version and distribution policy.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;2&lt;/code&gt;: &lt;code&gt;io_uring&lt;/code&gt; disabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Check whether the RDS modules exist and can be loaded:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;lsmod &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; grep -E &lt;span class=&#34;s2&#34;&gt;&amp;#34;^rds|^rds_tcp&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;modprobe -n -v rds_tcp 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; head -3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If &lt;code&gt;CONFIG_RDS&lt;/code&gt; is &lt;code&gt;not set&lt;/code&gt;, or the system has no &lt;code&gt;rds_tcp&lt;/code&gt; module at all, this bug usually cannot be reached. Conversely, if RDS is available, &lt;code&gt;io_uring&lt;/code&gt; is not disabled, and the system uses a relatively new general-purpose kernel, continue checking distribution fix status with higher priority.&lt;/p&gt;
&lt;h2 id=&#34;which-machines-deserve-priority&#34;&gt;Which Machines Deserve Priority
&lt;/h2&gt;&lt;p&gt;Prioritize these environments:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Multi-user Linux hosts, teaching machines, jump hosts, and shared development machines.&lt;/li&gt;
&lt;li&gt;Container hosts, especially environments that allow untrusted local users or have a loose container escape surface.&lt;/li&gt;
&lt;li&gt;Desktops or servers running newer mainline / rolling kernels, such as Arch-like rolling distributions.&lt;/li&gt;
&lt;li&gt;HPC, Oracle RAC, or other scenarios that may genuinely use RDS.&lt;/li&gt;
&lt;li&gt;CI workers, build machines, and lab environments that allow unprivileged users to run large amounts of local code.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;For an ordinary web server where only controlled service accounts run applications and RDS is not enabled, the practical risk is much lower. But &amp;ldquo;much lower&amp;rdquo; does not mean &amp;ldquo;ignore it&amp;rdquo;: the typical impact of a kernel local privilege escalation is that an attacker first gains low-privilege access through Web, SSH, CI, containers, or an application bug, then uses the local bug to expand control.&lt;/p&gt;
&lt;h2 id=&#34;temporary-mitigation-ideas&#34;&gt;Temporary Mitigation Ideas
&lt;/h2&gt;&lt;p&gt;The proper fix should still come from the distribution kernel update. Patch status, backported versions, and affected ranges must be checked against advisories from Debian, Ubuntu, RHEL, AlmaLinux, Rocky Linux, SUSE, Arch, cloud vendors, or container base-image providers. Do not judge only by the upstream version number.&lt;/p&gt;
&lt;p&gt;While waiting for patches, or when an immediate kernel reboot is not possible, choose temporary measures according to the environment:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;# If the business does not depend on RDS, block related module loading&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo sh -c &lt;span class=&#34;s2&#34;&gt;&amp;#34;printf &amp;#39;install rds /bin/false\ninstall rds_tcp /bin/false\ninstall rds_rdma /bin/false\n&amp;#39; &amp;gt; /etc/modprobe.d/pintheft.conf&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rmmod rds_tcp 2&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rmmod rds_rdma 2&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo rmmod rds 2&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If the business does not depend on &lt;code&gt;io_uring&lt;/code&gt;, consider disabling or restricting it:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;sudo sysctl -w kernel.io_uring_disabled&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Persistent configuration needs to be written into the appropriate &lt;code&gt;/etc/sysctl.d/*.conf&lt;/code&gt; file. Be careful with this step: modern databases, proxies, runtimes, or high-performance I/O programs may use &lt;code&gt;io_uring&lt;/code&gt;. Confirm business dependencies before changing production systems.&lt;/p&gt;
&lt;h2 id=&#34;how-to-verify-after-fixing&#34;&gt;How to Verify After Fixing
&lt;/h2&gt;&lt;p&gt;After upgrading the kernel, do not rely only on package-manager success output. Confirm three things:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uname -a
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cat /proc/sys/kernel/io_uring_disabled 2&amp;gt;/dev/null
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;modprobe -n -v rds_tcp 2&amp;gt;&lt;span class=&#34;p&#34;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; &lt;span class=&#34;p&#34;&gt;|&lt;/span&gt; head -3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;If a distribution advisory explicitly says &lt;code&gt;CVE-2026-43494&lt;/code&gt; is fixed, the kernel may still be protected even when &lt;code&gt;uname -r&lt;/code&gt; does not look like the newest upstream release, because the stable distribution kernel may have received a backported patch. Conversely, if the kernel comes from a self-built tree, third-party repository, cloud marketplace image, or container host template, continue checking the patch commit and build time.&lt;/p&gt;
&lt;h2 id=&#34;references&#34;&gt;References
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Unclecheng-li/poc-lab/tree/main/CVE-2026-43494%20PinTheft&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Unclecheng-li/poc-lab: CVE-2026-43494 PinTheft&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://dbugs.ptsecurity.com/vulnerability/PT-2026-42451&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;dbugs: CVE-2026-43494&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://blog.cloudlinux.com/pintheft-cloudlinux-platforms-not-affected&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;CloudLinux: PinTheft (CVE-2026-43494) kernel LPE&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://git.kernel.org/stable/c/e174929793195e0cd6a4adb0cad731b39f9019b4&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Linux stable commit: net/rds reset op_nents when zerocopy page pin fails&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
