rsync: Fix of 3 CVEs
- CVE-2026-53784: daemon module-root chdir escape under `use chroot = no` because change_dir() reached the module path with a plain chdir(), which followed a planted parent-component symlink and served files from outside the module; the module-root chdir now resolves through an ownership-checked O_NOFOLLOW path walk - CVE-2026-53802: arbitrary file read via symlinked operator-supplied input paths because --filter merge files (including per-directory merges and -C .cvsignore), --files-from/--include-from/--exclude-from and the --password-file / daemon secrets file were opened by path, letting a planted symlink feed an arbitrary file to the filter parser or the authentication response; these now use the same ownership-checked path walk - CVE-2026-53803: arbitrary file write via symlinked operator-supplied output paths because --log-file, --write-batch/--read-batch and the daemon motd, lock and --config opens resolved by path, letting a planted symlink redirect a privileged write; these now use the same ownership-checked path walk, and --read-batch additionally requires a regular file or a FIFO - Note: the ownership-checked path walk opens each intermediate directory for reading, where plain path resolution needed only search permission, so an operator path under a search-only (e.g. 0711) ancestor that the caller cannot read is now refused: --log-file falls back to syslog with a warning and --exclude-from fails. This matches upstream behaviour.
- Products
- rsync, rsync-daemon
- Affected versions
- Not specified
- Fixed versions
- 3.1.3-12.el8_4.tuxcare.els13
- CVEs
- CVE-2026-53784, CVE-2026-53802, CVE-2026-53803
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 1 Nov 2026, 11:12 UTC · Revision 1
Source evidence
- CVE-2026-53784: daemon module-root chdir escape under `use chroot = no` because change_dir() reached the module path with a plain chdir(), which followed a planted parent-component symlink and served files from outside the module; the module-root chdir now resolves through an ownership-checked O_NOFOLLOW path walk - CVE-2026-53802: arbitrary file read via symlinked operator-supplied input paths because --filter merge files (including per-directory merges and -C .cvsignore), --files-from/--include-from/--exclude-from and the --password-file / daemon secrets file were opened by path, letting a planted symlink feed an arbitrary file to the filter parser or the authentication response; these now use the same ownership-checked path walk - CVE-2026-53803: arbitrary file write via symlinked operator-supplied output paths because --log-file, --write-batch/--read-batch and the daemon motd, lock and --config opens resolved by path, letting a planted symlink redirect a privileged write; these now use the same ownership-checked path walk, and --read-batch additionally requires a regular file or a FIFO - Note: the ownership-checked path walk opens each intermediate directory for reading, where plain path resolution needed only search permission, so an operator path under a search-only (e.g. 0711) ancestor that the caller cannot read is now refused: --log-file falls back to syslog with a warning and --exclude-from fails. This matches upstream behaviour.
osv:CLSA-2026-1788956505
rsync
Fixed versions: 3.1.3-12.el8_4.tuxcare.els13
rsync-daemon
Fixed versions: 3.1.3-12.el8_4.tuxcare.els13
Complete source record
{
"id": "f69be7de9504ef8c60e1488267361938e0832000bed1896ff6836a7737a848ef",
"url": "https://osv.dev/vulnerability/CLSA-2026-1788956505",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "rsync: Fix of 3 CVEs",
"summary": "- CVE-2026-53784: daemon module-root chdir escape under `use chroot = no` because change_dir() reached the module path with a plain chdir(), which followed a planted parent-component symlink and served files from outside the module; the module-root chdir now resolves through an ownership-checked O_NOFOLLOW path walk - CVE-2026-53802: arbitrary file read via symlinked operator-supplied input paths because --filter merge files (including per-directory merges and -C .cvsignore), --files-from/--include-from/--exclude-from and the --password-file / daemon secrets file were opened by path, letting a planted symlink feed an arbitrary file to the filter parser or the authentication response; these now use the same ownership-checked path walk - CVE-2026-53803: arbitrary file write via symlinked operator-supplied output paths because --log-file, --write-batch/--read-batch and the daemon motd, lock and --config opens resolved by path, letting a planted symlink redirect a privileged write; these now use the same ownership-checked path walk, and --read-batch additionally requires a regular file or a FIFO - Note: the ownership-checked path walk opens each intermediate directory for reading, where plain path resolution needed only search permission, so an operator path under a search-only (e.g. 0711) ancestor that the caller cannot read is now refused: --log-file falls back to syslog with a warning and --exclude-from fails. This matches upstream behaviour.",
"evidence": "osv:CLSA-2026-1788956505",
"products": [
{
"name": {
"value": "rsync",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "3.1.3-12.el8_4.tuxcare.els13",
"evidence": "/affected/0/ranges"
}
],
"affected_versions": []
},
{
"name": {
"value": "rsync-daemon",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "3.1.3-12.el8_4.tuxcare.els13",
"evidence": "/affected/1/ranges"
}
],
"affected_versions": []
}
],
"severity": "unknown",
"structured": {
"id": "CLSA-2026-1788956505",
"aliases": [
"CLSA-2026-1788956505"
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "3.1.3-12.el8_4.tuxcare.els13"
}
]
}
],
"package": {
"name": "rsync",
"purl": "pkg:rpm/tuxcare/rsync?distro=centos-8.4",
"ecosystem": "TuxCare:CentOS:8.4"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/centos8.4els/CLSA-2026-1788956505.json"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "3.1.3-12.el8_4.tuxcare.els13"
}
]
}
],
"package": {
"name": "rsync-daemon",
"purl": "pkg:rpm/tuxcare/rsync-daemon?distro=centos-8.4",
"ecosystem": "TuxCare:CentOS:8.4"
},
"database_specific": {
"source": "https://github.com/cloudlinux/tuxcare-osv/tree/main/data/els_os/centos8.4els/CLSA-2026-1788956505.json"
}
}
],
"modified": "2026-10-26T09:31:50.274219720Z",
"provider": "osv",
"upstream": [
"CVE-2026-53784",
"CVE-2026-53802",
"CVE-2026-53803"
],
"references": [
"https://errata.tuxcare.com/els_os/centos8.4els/CLSA-2026-1788956505.html",
"https://nvd.nist.gov/vuln/detail/CVE-2026-53784",
"https://nvd.nist.gov/vuln/detail/CVE-2026-53802",
"https://nvd.nist.gov/vuln/detail/CVE-2026-53803"
]
},
"related_cves": [
{
"value": "CVE-2026-53784",
"evidence": "/upstream"
},
{
"value": "CVE-2026-53802",
"evidence": "/upstream"
},
{
"value": "CVE-2026-53803",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": null
},
"source_id": "core-osv",
"document_id": 448625,
"published_at": "2026-09-09T12:21:57+00:00"
}