<?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>Tue, 29 Sep 2026 12:48:57 +0000</lastBuildDate>
    <item>
      <title>CVE-2023-54077 — fs/ntfs3: Fix memory leak if ntfs_read_mft failed</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2023-54077</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;fs/ntfs3: Fix memory leak if ntfs_read_mft failed&lt;/p&gt;
&lt;p&gt;Label ATTR_ROOT in ntfs_read_mft() sets is_root = true and
ni-&amp;gt;ni_flags |= NI_FLAG_DIR, then next attr will goto label ATTR_ALLOC
and alloc ni-&amp;gt;dir.alloc_run. However two states are not always
consistent and can make memory leak.&lt;/p&gt;
&lt;p&gt;1) attr_name in ATTR_ROOT does not fit the condition it will set
 is_root = true but NI_FLAG_DIR is not set.
 2) next attr_name in ATTR_ALLOC fits the condition and alloc
 ni-&amp;gt;dir.alloc_run
 3) in cleanup function ni_clear(), when NI_FLAG_DIR is set, it frees
 ni-&amp;gt;dir.alloc_run, otherwise it frees ni-&amp;gt;file.run
 4) because NI_FLAG_DIR is not set in this case, ni-&amp;gt;dir.alloc_run is
 leaked as kmemleak reported:&lt;/p&gt;
&lt;p&gt;unreferenced object 0xffff888003bc5480 (size 64):
  backtrace:
    [&amp;lt;000000003d42e6b0&amp;gt;] __kmalloc_node+0x4e/0x1c0
    [&amp;lt;00000000d8e19b8a&amp;gt;] kvmalloc_node+0x39/0x1f0
    [&amp;lt;00000000fc3eb5b8&amp;gt;] run_add_entry+0x18a/0xa40 [ntfs3]
    [&amp;lt;0000000011c9f978&amp;gt;] run_unpack+0x75d/0x8e0 [ntfs3]
    [&amp;lt;00000000e7cf1819&amp;gt;] run_unpack_ex+0xbc/0x500 [ntfs3]
    [&amp;lt;00000000bbf0a43d&amp;gt;] ntfs_iget5+0xb25/0x2dd0 [ntfs3]
    [&amp;lt;00000000a6e50693&amp;gt;] ntfs_fill_super+0x218d/0x3580 [ntfs3]
    [&amp;lt;00000000b9170608&amp;gt;] get_tree_bdev+0x3fb/0x710
    [&amp;lt;000000004833798a&amp;gt;] vfs_get_tree+0x8e/0x280
    [&amp;lt;000000006e20b8e6&amp;gt;] path_mount+0xf3c/0x1930
    [&amp;lt;000000007bf15a5f&amp;gt;] do_mount+0xf3/0x110
    ...&lt;/p&gt;
&lt;p&gt;Fix this by always setting is_root and NI_FLAG_DIR together.&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;fs/ntfs3: Fix memory leak if ntfs_read_mft failed&lt;/p&gt;
&lt;p&gt;Label ATTR_ROOT in ntfs_read_mft() sets is_root = true and
ni-&amp;gt;ni_flags |= NI_FLAG_DIR, then next attr will goto label ATTR_ALLOC
and alloc ni-&amp;gt;dir.alloc_run. However two states are not always
consistent and can make memory leak.&lt;/p&gt;
&lt;p&gt;1) attr_name in ATTR_ROOT does not fit the condition it will set
 is_root = true but NI_FLAG_DIR is not set.
 2) next attr_name in ATTR_ALLOC fits the condition and alloc
 ni-&amp;gt;dir.alloc_run
 3) in cleanup function ni_clear(), when NI_FLAG_DIR is set, it frees
 ni-&amp;gt;dir.alloc_run, otherwise it frees ni-&amp;gt;file.run
 4) because NI_FLAG_DIR is not set in this case, ni-&amp;gt;dir.alloc_run is
 leaked as kmemleak reported:&lt;/p&gt;
&lt;p&gt;unreferenced object 0xffff888003bc5480 (size 64):
  backtrace:
    [&amp;lt;000000003d42e6b0&amp;gt;] __kmalloc_node+0x4e/0x1c0
    [&amp;lt;00000000d8e19b8a&amp;gt;] kvmalloc_node+0x39/0x1f0
    [&amp;lt;00000000fc3eb5b8&amp;gt;] run_add_entry+0x18a/0xa40 [ntfs3]
    [&amp;lt;0000000011c9f978&amp;gt;] run_unpack+0x75d/0x8e0 [ntfs3]
    [&amp;lt;00000000e7cf1819&amp;gt;] run_unpack_ex+0xbc/0x500 [ntfs3]
    [&amp;lt;00000000bbf0a43d&amp;gt;] ntfs_iget5+0xb25/0x2dd0 [ntfs3]
    [&amp;lt;00000000a6e50693&amp;gt;] ntfs_fill_super+0x218d/0x3580 [ntfs3]
    [&amp;lt;00000000b9170608&amp;gt;] get_tree_bdev+0x3fb/0x710
    [&amp;lt;000000004833798a&amp;gt;] vfs_get_tree+0x8e/0x280
    [&amp;lt;000000006e20b8e6&amp;gt;] path_mount+0xf3c/0x1930
    [&amp;lt;000000007bf15a5f&amp;gt;] do_mount+0xf3/0x110
    ...&lt;/p&gt;
&lt;p&gt;Fix this by always setting is_root and NI_FLAG_DIR together.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2023-54077</guid>
    </item>
  </channel>
</rss>
