ghsa-jpvg-r3q7-3w8j
Vulnerability from github
In the Linux kernel, the following vulnerability has been resolved:
cifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL
When compiled with CONFIG_CIFS_DFS_UPCALL disabled, cifs_dfs_d_automount is NULL. cifs.ko logic for mapping CIFS_FATTR_DFS_REFERRAL attributes to S_AUTOMOUNT and corresponding dentry flags is retained regardless of CONFIG_CIFS_DFS_UPCALL, leading to a NULL pointer dereference in VFS follow_automount() when traversing a DFS referral link: BUG: kernel NULL pointer dereference, address: 0000000000000000 ... Call Trace: __traverse_mounts+0xb5/0x220 ? cifs_revalidate_mapping+0x65/0xc0 [cifs] step_into+0x195/0x610 ? lookup_fast+0xe2/0xf0 path_lookupat+0x64/0x140 filename_lookup+0xc2/0x140 ? __create_object+0x299/0x380 ? kmem_cache_alloc+0x119/0x220 ? user_path_at_empty+0x31/0x50 user_path_at_empty+0x31/0x50 __x64_sys_chdir+0x2a/0xd0 ? exit_to_user_mode_prepare+0xca/0x100 do_syscall_64+0x42/0x90 entry_SYSCALL_64_after_hwframe+0x72/0xdc
This fix adds an inline cifs_dfs_d_automount() {return -EREMOTE} handler when CONFIG_CIFS_DFS_UPCALL is disabled. An alternative would be to avoid flagging S_AUTOMOUNT, etc. without CONFIG_CIFS_DFS_UPCALL. This approach was chosen as it provides more control over the error path.
{
"affected": [],
"aliases": [
"CVE-2023-53246"
],
"database_specific": {
"cwe_ids": [],
"github_reviewed": false,
"github_reviewed_at": null,
"nvd_published_at": "2025-09-15T15:15:51Z",
"severity": null
},
"details": "In the Linux kernel, the following vulnerability has been resolved:\n\ncifs: fix DFS traversal oops without CONFIG_CIFS_DFS_UPCALL\n\nWhen compiled with CONFIG_CIFS_DFS_UPCALL disabled, cifs_dfs_d_automount\nis NULL. cifs.ko logic for mapping CIFS_FATTR_DFS_REFERRAL attributes to\nS_AUTOMOUNT and corresponding dentry flags is retained regardless of\nCONFIG_CIFS_DFS_UPCALL, leading to a NULL pointer dereference in\nVFS follow_automount() when traversing a DFS referral link:\n BUG: kernel NULL pointer dereference, address: 0000000000000000\n ...\n Call Trace:\n \u003cTASK\u003e\n __traverse_mounts+0xb5/0x220\n ? cifs_revalidate_mapping+0x65/0xc0 [cifs]\n step_into+0x195/0x610\n ? lookup_fast+0xe2/0xf0\n path_lookupat+0x64/0x140\n filename_lookup+0xc2/0x140\n ? __create_object+0x299/0x380\n ? kmem_cache_alloc+0x119/0x220\n ? user_path_at_empty+0x31/0x50\n user_path_at_empty+0x31/0x50\n __x64_sys_chdir+0x2a/0xd0\n ? exit_to_user_mode_prepare+0xca/0x100\n do_syscall_64+0x42/0x90\n entry_SYSCALL_64_after_hwframe+0x72/0xdc\n\nThis fix adds an inline cifs_dfs_d_automount() {return -EREMOTE} handler\nwhen CONFIG_CIFS_DFS_UPCALL is disabled. An alternative would be to\navoid flagging S_AUTOMOUNT, etc. without CONFIG_CIFS_DFS_UPCALL. This\napproach was chosen as it provides more control over the error path.",
"id": "GHSA-jpvg-r3q7-3w8j",
"modified": "2025-09-15T15:31:30Z",
"published": "2025-09-15T15:31:29Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2023-53246"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/179a88a8558bbf42991d361595281f3e45d7edfc"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/1e144b68208e98fd4602c842a7149ba5f41d87fb"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/26a32a212bc540f4773cd6af8cf73e967d72569c"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/657d7c215ca974d366ab1808213f716e1e3aa950"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/8afb1fabcec1929db46977e84baeee0cc0e79242"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/8cd7dbc9c46d51e00a0a8372e07cc1cbb8d24a77"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/b64305185b76f1d5145ce594ff48f3f0e70695bd"
},
{
"type": "WEB",
"url": "https://git.kernel.org/stable/c/b7d854c33ab48e55fc233699bbefe39ec9bb5c05"
}
],
"schema_version": "1.4.0",
"severity": []
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.