CVE-2025-38691: pNFS: Fix uninited ptr deref in block/scsi layout

Published Sep 4, 2025
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

pNFS: Fix uninited ptr deref in block/scsi layout

The error occurs on the third attempt to encode extents. When function exttreepreparecommit() reallocates a larger buffer to retry encoding extents, the "layoutupdatepages" page array is initialized only after the retry loop. But exttreefreecommitdata() is called on every iteration and tries to put pages in the array, thus dereferencing uninitialized pointers.

An additional problem is that there is no limit on the maximum possible buffersize. When there are too many extents, the client may create a layoutcommit that is larger than the maximum possible RPC size accepted by the server.

During testing, we observed two typical scenarios. First, one memory page for extents is enough when we work with small files, append data to the end of the file, or preallocate extents before writing. But when we fill a new large file without preallocating, the number of extents can be huge, and counting the number of written extents in exttreeencodecommit() does not help much. Since this number increases even more between unlocking and locking of exttree, the reallocated buffer may not be large enough again and again.

Affected Software

13 affected componentsFixes available
Linux Linux kernel
Microsoft azl3 kernel 6.6.96.2-1
Microsoft azl3 kernel 6.6.96.2-2
Linux Linux kernel>=3.18<5.4.297
Linux Linux kernel>=5.5<5.10.241
Linux Linux kernel>=5.11<5.15.190
Linux Linux kernel>=5.16<6.1.149
Linux Linux kernel>=6.2<6.6.103
Linux Linux kernel>=6.7<6.12.43
Linux Linux kernel>=6.13<6.15.11
Linux Linux kernel>=6.16<6.16.2
Debian Debian Linux=11.0
Microsoft cbl2 kernel 5.15.186.1-1

Event History

Sep 4, 2025
CVE Published
via MITRE·03:32 PM
Data Sourced
via MITRE·03:32 PM
Description
Data Sourced
via NVD·04:15 PM
RemedyDescriptionSeverityWeaknessAffected Software
Sep 6, 2025
Data Sourced
via Microsoft·01:02 AM
DescriptionSeverityWeaknessAffected Software
Updated
via Microsoft·01:02 AM
SeverityAffected Software
Updated
via Microsoft·08:02 AM
DescriptionSeverity
Updated
via Microsoft·08:02 AM
SeverityAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2025-38691?

CVE-2025-38691 has been classified as a medium severity vulnerability due to potential memory corruption issues.

2

How do I fix CVE-2025-38691?

To mitigate CVE-2025-38691, upgrading to the latest version of the Linux kernel that addresses this vulnerability is recommended.

3

What type of systems are affected by CVE-2025-38691?

CVE-2025-38691 affects various systems running vulnerable versions of the Linux kernel, particularly those utilizing the pNFS feature.

4

What are the risks associated with CVE-2025-38691?

The risks associated with CVE-2025-38691 include potential system crashes or instability caused by uninitialized pointer dereferences.

5

When was CVE-2025-38691 disclosed?

CVE-2025-38691 was disclosed as a resolved vulnerability in the Linux kernel, with associated fixes made public in the respective kernel updates.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203