CVE-2026-1933
Description
A flaw was found in Samba’s handling of NTFS-style reparse points on shares configured with read only = yes. Due to missing SMB-layer access checks, authenticated users with underlying filesystem write permissions may create or delete reparse point metadata through SMB operations even on read-only exports. This could allow modification of SMB-visible file behavior, including converting files into symbolic links or other reparse point types.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Samba fails to check SMB-layer access on reparse points in read-only shares, letting authenticated users with filesystem write permissions modify file behavior.
Vulnerability
A flaw exists in Samba’s handling of NTFS-style reparse points on shares configured with read only = yes. Due to missing SMB-layer access checks, authenticated users who have underlying filesystem write permissions can create or delete reparse point metadata through SMB operations even on exports marked as read-only. This impacts Samba versions prior to the forthcoming patch. [1][2]
Exploitation
An attacker needs valid SMB credentials and filesystem write access on the server hosting the share. They can then send crafted SMB operations targeting reparse points (such as FSCTL_SET_REPARSE_POINT or FSCTL_DELETE_REPARSE_POINT) to a read-only share, bypassing the intended SMB-level enforcement. [1][2]
Impact
Successful exploitation allows the attacker to modify the behavior of files as seen over SMB, including converting a file into a symbolic link or another reparse point type. This can lead to unauthorized redirection of file access, potential information disclosure, or privilege escalation within the SMB context. [1][2]
Mitigation
As of the latest available references, no patched Samba release has been published. Red Hat has assigned the bug as high priority and is working on a fix. Until a patch is available, administrators should restrict user permissions on the underlying filesystem for read-only shares and monitor for unexpected reparse point operations. [1][2]
AI Insight generated on May 27, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
1Patches
2fb8ef1c97e1cCVE-2026-1933: tests: Fix permissions used for creating reparse points
1 file changed · +2 −2
python/samba/tests/smb3unix.py+2 −2 modified@@ -446,7 +446,7 @@ def test_create_context_reparse(self): wire_mode = libsmb.unix_mode_to_wire(0o600) f,_,cc_out = c.create_ex('\\reparse', - DesiredAccess=security.SEC_STD_ALL, + DesiredAccess=security.SEC_FILE_WRITE_ATTRIBUTE, CreateDisposition=libsmb.FILE_CREATE, CreateContexts=[posix_context(wire_mode)]) @@ -460,7 +460,7 @@ def test_create_context_reparse(self): wire_mode = libsmb.unix_mode_to_wire(0o600) f,_,cc_out = c.create_ex('\\reparse', - DesiredAccess=security.SEC_STD_ALL, + DesiredAccess=security.SEC_FILE_WRITE_ATTRIBUTE, CreateDisposition=libsmb.FILE_OPEN, CreateContexts=[posix_context(wire_mode)]) c.close(f)
6c7f7c40029bCVE-2026-1933: smbd: Add access checks to reparse point operations
1 file changed · +16 −0
source3/modules/util_reparse.c+16 −0 modified@@ -320,6 +320,14 @@ NTSTATUS fsctl_set_reparse_point(struct files_struct *fsp, return NT_STATUS_ACCESS_DENIED; } + if ((fsp->fsp_name->twrp != 0) || + ((fsp->access_mask & + (SEC_FILE_WRITE_DATA | SEC_FILE_WRITE_ATTRIBUTE)) == 0)) + { + DBG_DEBUG("Access denied on a readonly handle\n"); + return NT_STATUS_ACCESS_DENIED; + } + status = reparse_buffer_check(in_data, in_len, &reparse_tag, @@ -390,6 +398,14 @@ NTSTATUS fsctl_del_reparse_point(struct files_struct *fsp, uint32_t dos_mode; int ret; + if ((fsp->fsp_name->twrp != 0) || + ((fsp->access_mask & + (SEC_FILE_WRITE_DATA | SEC_FILE_WRITE_ATTRIBUTE)) == 0)) + { + DBG_DEBUG("Access denied on a readonly handle\n"); + return NT_STATUS_ACCESS_DENIED; + } + status = fsctl_get_reparse_tag(fsp, &existing_tag); if (!NT_STATUS_IS_OK(status)) { return status;
Vulnerability mechanics
No source-code context for this CVE — mechanics is only generated when we can read the actual fix diff. Without that, the four sections (root cause, attack vector, affected code, fix) would be speculation rather than analysis.
References
3News mentions
0No linked articles in our index yet.