CVE Database
/

CVE-2025-38710

Back to search

CVE-2025-38710

Published: Sep 4, 2025

Modified: Jun 1, 2026

PUBLISHED

Description

In the Linux kernel, the following vulnerability has been resolved: gfs2: Validate i_depth for exhash directories A fuzzer test introduced corruption that ends up with a depth of 0 in dir_e_read(), causing an undefined shift by 32 at: index = hash >> (32 - dip->i_depth); As calculated in an open-coded way in dir_make_exhash(), the minimum depth for an exhash directory is ilog2(sdp->sd_hash_ptrs) and 0 is invalid as sdp->sd_hash_ptrs is fixed as sdp->bsize / 16 at mount time. So we can avoid the undefined behaviour by checking for depth values lower than the minimum in gfs2_dinode_in(). Values greater than the maximum are already being checked for there. Also switch the calculation in dir_make_exhash() to use ilog2() to clarify how the depth is calculated. Tested with the syzkaller repro.c and xfstests '-g quick'.

VendorProductVersions

Linux

Linux

affected
9a0045088d888c9c539c8c626a366cb52c0fbdab - < 076e992752e4b24178918f748d75597c80a408d2
affected
9a0045088d888c9c539c8c626a366cb52c0fbdab - < 366183911b153e9b8cf758e1414e1154d7569337
affected
9a0045088d888c9c539c8c626a366cb52c0fbdab - < 112bb60cd0e254a369e95aa9941a694ffeca089f
affected
9a0045088d888c9c539c8c626a366cb52c0fbdab - < cddea0c721106ea480371412d8de21705eb27376
affected
9a0045088d888c9c539c8c626a366cb52c0fbdab - < 53a0249d68a210c16e961b83adfa82f94ee0a53d

+3 more versions

Linux

Linux

affected
2.6.26
unaffected
0 - < 2.6.26
unaffected
5.10.258 - <= 5.10.*
unaffected
5.15.209 - <= 5.15.*
unaffected
6.1.175 - <= 6.1.*

+5 more versions

Security Training

Train your team to recognize and prevent security threats with our comprehensive security awareness program.

Start Training

Vulnerability Scanning

Discover vulnerabilities in your applications and infrastructure before attackers do.

Scan Now