smb/server: avoid deadlock when linking with ReplaceIfExists (Linux Linux)

CVE-2025-38711
MEDIUM 5.5

At a glance

Source
NVD
EPSS
EPSS 0.12 % · percentile 2 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: smb/server: avoid deadlock when linking with ReplaceIfExists If smb2_create_link() is called with ReplaceIfExists set and the name does exist then a deadlock will happen. ksmbd_vfs_kern_path_locked() will return with success and the parent directory will be locked. ksmbd_vfs_remove_file() will then remove the file. ksmbd_vfs_link() will then be called while the parent is still locked. It will try to lock the same parent and will deadlock. This patch moves the ksmbd_vfs_kern_path_unlock() call to *before* ksmbd_vfs_link() and then simplifies the code, removing the file_present flag variable.

Weaknesses (CWE)

References

Scores

VersionScoreVectorScored by
CVSS 3.1MEDIUM 5.5CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 0626e6641f6b467447c81dd7678a69c66f7746cf < 9d5012ffe14120f978ee34aef4df3d6cb026b7c4 ; affected 0626e6641f6b467447c81dd7678a69c66f7746cf < ac98d54630d5b52e3f684d872f0d82c06c418ea9 ; affected 0626e6641f6b467447c81dd7678a69c66f7746cf < 1e858a7a51c7b8b009d8f246de7ceb7743b44a71 ; affected 0626e6641f6b467447c81dd7678a69c66f7746cf < 814cfdb6358d9b84fcbec9918c8f938cc096a43a ; affected 0626e6641f6b467447c81dd7678a69c66f7746cf < a7dddd62578c2eb6cb28b8835556a121b5157323 ; affected 0626e6641f6b467447c81dd7678a69c66f7746cf < a726fef6d7d4cfc365d3434e3916dbfe78991a33
Linux · Linuxaffected 5.15 ; unaffected 0 < 5.15 ; unaffected 5.15.190 ≤ 5.15.* ; unaffected 6.1.149 ≤ 6.1.* ; unaffected 6.6.103 ≤ 6.6.* ; unaffected 6.12.43 ≤ 6.12.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD