<?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>Fri, 02 Oct 2026 15:45:13 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-23077 — mm/vma: fix anon_vma UAF on mremap() faulted, unfaulted merge</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-23077</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;mm/vma: fix anon_vma UAF on mremap() faulted, unfaulted merge&lt;/p&gt;
&lt;p&gt;Patch series &amp;#34;mm/vma: fix anon_vma UAF on mremap() faulted, unfaulted
merge&amp;#34;, v2.&lt;/p&gt;
&lt;p&gt;Commit 879bca0a2c4f (&amp;#34;mm/vma: fix incorrectly disallowed anonymous VMA
merges&amp;#34;) introduced the ability to merge previously unavailable VMA merge
scenarios.&lt;/p&gt;
&lt;p&gt;However, it is handling merges incorrectly when it comes to mremap() of a
faulted VMA adjacent to an unfaulted VMA.  The issues arise in three
cases:&lt;/p&gt;
&lt;p&gt;1. Previous VMA unfaulted:&lt;/p&gt;
&lt;p&gt;copied -----|
                          v
	|-----------|.............|
	| unfaulted |(faulted VMA)|
	|-----------|.............|
	     prev&lt;/p&gt;
&lt;p&gt;2. Next VMA unfaulted:&lt;/p&gt;
&lt;p&gt;copied -----|
                          v
	            |.............|-----------|
	            |(faulted VMA)| unfaulted |
                    |.............|-----------|
		                      next&lt;/p&gt;
&lt;p&gt;3. Both adjacent VMAs unfaulted:&lt;/p&gt;
&lt;p&gt;copied -----|
                          v
	|-----------|.............|-----------|
	| unfaulted |(faulted VMA)| unfaulted |
	|-----------|.............|-----------|
	     prev                      next&lt;/p&gt;
&lt;p&gt;This series fixes each of these cases, and introduces self tests to assert
that the issues are corrected.&lt;/p&gt;
&lt;p&gt;I also test a further case which was already handled, to assert that my
changes continues to correctly handle it:&lt;/p&gt;
&lt;p&gt;4. prev unfaulted, next faulted:&lt;/p&gt;
&lt;p&gt;copied -----|…&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;mm/vma: fix anon_vma UAF on mremap() faulted, unfaulted merge&lt;/p&gt;
&lt;p&gt;Patch series &amp;#34;mm/vma: fix anon_vma UAF on mremap() faulted, unfaulted
merge&amp;#34;, v2.&lt;/p&gt;
&lt;p&gt;Commit 879bca0a2c4f (&amp;#34;mm/vma: fix incorrectly disallowed anonymous VMA
merges&amp;#34;) introduced the ability to merge previously unavailable VMA merge
scenarios.&lt;/p&gt;
&lt;p&gt;However, it is handling merges incorrectly when it comes to mremap() of a
faulted VMA adjacent to an unfaulted VMA.  The issues arise in three
cases:&lt;/p&gt;
&lt;p&gt;1. Previous VMA unfaulted:&lt;/p&gt;
&lt;p&gt;copied -----|
                          v
	|-----------|.............|
	| unfaulted |(faulted VMA)|
	|-----------|.............|
	     prev&lt;/p&gt;
&lt;p&gt;2. Next VMA unfaulted:&lt;/p&gt;
&lt;p&gt;copied -----|
                          v
	            |.............|-----------|
	            |(faulted VMA)| unfaulted |
                    |.............|-----------|
		                      next&lt;/p&gt;
&lt;p&gt;3. Both adjacent VMAs unfaulted:&lt;/p&gt;
&lt;p&gt;copied -----|
                          v
	|-----------|.............|-----------|
	| unfaulted |(faulted VMA)| unfaulted |
	|-----------|.............|-----------|
	     prev                      next&lt;/p&gt;
&lt;p&gt;This series fixes each of these cases, and introduces self tests to assert
that the issues are corrected.&lt;/p&gt;
&lt;p&gt;I also test a further case which was already handled, to assert that my
changes continues to correctly handle it:&lt;/p&gt;
&lt;p&gt;4. prev unfaulted, next faulted:&lt;/p&gt;
&lt;p&gt;copied -----|…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-23077</guid>
    </item>
  </channel>
</rss>
