CVE-2026-35025
ProFTPD ACL Bypass via /proc/self/root Path Prefix in RNFR
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Exploit likelihood
What each source reports
CVE List Score used 8.6
ProFTPD ACL Bypass via /proc/self/root Path Prefix in RNFR
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
CVE-2026-35025- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-59
- Updated
- 2026-11-08
EUVDEUVD-2026-38789 8.6
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
EUVD-2026-38789- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Updated
- 2026-11-08
GitHub AdvisoriesGHSA-9vr4-2f43-pc8v 8.6
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows...
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
GHSA-9vr4-2f43-pc8v- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-59
- Updated
- 2026-11-02
NVD 8.6
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
CVE-2026-35025- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Weakness
- CWE-59
- Updated
- 2026-11-02
OSV 8.6
ProFTPD ACL Bypass via /proc/self/root Path Prefix in RNFR
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
CVE-2026-35025- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - Weakness
- CWE-59
- Updated
- 2026-11-09
OSVDEBIAN-CVE-2026-35025 8.6
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
DEBIAN-CVE-2026-35025- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-35025 8.6
ProFTPD through 1.3.9b and 1.3.10rc2 contains an access control bypass vulnerability that allows authenticated FTP users to circumvent Directory ACL restrictions by prefixing paths with /proc/self/root in the RNFR command handler. Attackers can exploit the unresolved symlink components in dir_canonical_path() to cause dir_check() to perform lexical path comparisons that match no configured Directory block, enabling rename operations on files in DenyAll-protected directories and subsequent retrieval of those files. Mitigation: Sessions configured with DefaultRoot (chroot) are not affected, as chroot changes the directory to which /proc/self/root resolves.
- Record
UBUNTU-CVE-2026-35025- CVSS 4.0
- 8.6 High
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N - CVSS 3.1
- 8.1 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N - Updated
- 2026-11-02
OSVopenSUSE-SU-2026:12517-1No score
proftpd-1.3.9e-2.1 on GA media
These are all security issues fixed in the proftpd-1.3.9e-2.1 package on the GA media of openSUSE Tumbleweed.
- Record
openSUSE-SU-2026:12517-1- Updated
- 2026-11-11
OSVSUSE-SU-2026:5181-1No score
Security update for proftpd
This update for proftpd fixes the following issues:
- Authenticated SFTP sessions can overflow the SFTP packet buffer (bsc#1271096).
- CVE-2026-35025: access control bypass allows authenticated FTP users to circumvent Directory ACL restrictions by
prefixing paths with
/proc/self/rootin the RNFR command handler (bsc#1269065). - CVE-2026-42167:
mod_sqlallows remote attackers to execute arbitrary code via a username when there is logging ofUSERrequests with an expansion such as%Uand the SQL backend allowscomman(bsc#1263183). - CVE-2026-44331: SQL injection in
sqltab_fetch_clients_cb()incontrib/mod_wrap2_sql.ctriggered via crafted domain name from reverse DNS lookup (bsc#1264262). - CVE-2026-53994: heap-based buffer overflow reachable by an authenticated SFTP user can lead to denial of service and memory corruption (bsc#1271946).
- CVE-2026-63090: heap-based buffer overflow in the
mod_sftpmodule can lead to arbitrary code execution via crafted SFTP packet fragments (bsc#1271944). - CVE-2026-63091: signed integer overflow in the
mod_sftpmodule's SCP size-record parser can lead to ASLR bypass via a crafted file size value ofUINT64_MAX(bsc#1271945). - CVE-2026-119147: authorization bypass in the
mod_sftpcopy-file extension handler allows SFTP users to copy any readable file to a new path in write-denied directories (bsc#1289272). - Integer overflow via client-provided file size for SCP uploads (bsc#1271097).
- Record
SUSE-SU-2026:5181-1- Updated
- 2026-11-11
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
proftpd-dfsgDebian:12 | All versions, plus listed versions 1.3.8+dfsg-41.3.8+dfsg-4+deb12u11.3.8+dfsg-4+deb12u21.3.8+dfsg-4+deb12u31.3.8+dfsg-4+deb12u4 Show 23 moreShow less1.3.8+dfsg-4+deb12u51.3.8+dfsg-51.3.8+dfsg-61.3.8+dfsg-71.3.8+dfsg-81.3.8.a+dfsg-11.3.8.b+dfsg-11.3.8.b+dfsg-21.3.8.b+dfsg-31.3.8.b+dfsg-41.3.8.c+dfsg-11.3.8.c+dfsg-21.3.8.c+dfsg-31.3.8.c+dfsg-41.3.9a~dfsg-11.3.9b~dfsg-11.3.9c~dfsg-11.3.9d~dfsg-11.3.9~dfsg-11.3.9~dfsg-21.3.9~dfsg-31.3.9~dfsg-41.3.9~dfsg-5 | None known |
proftpd-dfsgDebian:13 | All versions, plus listed versions 1.3.8.c+dfsg-41.3.8.c+dfsg-4+deb13u11.3.8.c+dfsg-4+deb13u21.3.8.c+dfsg-4+deb13u31.3.9a~dfsg-1 Show 8 moreShow less1.3.9b~dfsg-11.3.9c~dfsg-11.3.9d~dfsg-11.3.9~dfsg-11.3.9~dfsg-21.3.9~dfsg-31.3.9~dfsg-41.3.9~dfsg-5 | None known |
proftpd-dfsgDebian:14 | All versions, plus listed versions 1.3.8.c+dfsg-41.3.9a~dfsg-11.3.9b~dfsg-11.3.9c~dfsg-11.3.9d~dfsg-1 Show 5 moreShow less1.3.9~dfsg-11.3.9~dfsg-21.3.9~dfsg-31.3.9~dfsg-41.3.9~dfsg-5 | None known |
proftpdSUSE:Linux Enterprise Module for Server Applications 15 SP7 From an advisory covering 7 CVEs | before 1.3.8b-150600.13.18.1 | 1.3.8b-150600.13.18.1 |
proftpdSUSE:Linux Enterprise Server 15 SP6-LTSS From an advisory covering 7 CVEs | before 1.3.8b-150600.13.18.1 | 1.3.8b-150600.13.18.1 |
proftpdSUSE:Linux Enterprise Server for SAP Applications 15 SP6 From an advisory covering 7 CVEs | before 1.3.8b-150600.13.18.1 | 1.3.8b-150600.13.18.1 |
proftpd-dfsgUbuntu:16.04:LTS | All versions, plus listed versions 1.3.5-21.3.5a-11.3.5a-1build11.3.5a-1ubuntu0.1 | None known |
proftpd-dfsgUbuntu:18.04:LTS | All versions, plus listed versions 1.3.5d-11.3.5e-1build1 | None known |
proftpd-dfsgUbuntu:20.04:LTS | All versions, plus listed versions 1.3.6-6build21.3.6c-11.3.6c-21.3.6c-2ubuntu0.1 | None known |
proftpd-dfsgUbuntu:22.04:LTS | All versions, plus listed versions 1.3.7b+dfsg-11.3.7c+dfsg-1build11.3.7c+dfsg-1ubuntu0.1 | None known |
Show 5 moreShow less
| Package | Affected | Fixed |
|---|---|---|
proftpd-dfsgUbuntu:24.04:LTS | All versions, plus listed versions 1.3.8+dfsg-81.3.8.a+dfsg-11.3.8.b+dfsg-11.3.8.b+dfsg-1build11.3.8.b+dfsg-1build21.3.8.b+dfsg-1build31.3.8.b+dfsg-1ubuntu0.1 | None known |
proftpd-dfsgUbuntu:25.10 | All versions, plus listed versions 1.3.8.c+dfsg-21.3.8.c+dfsg-41.3.9~dfsg-3 | None known |
proftpd-dfsgUbuntu:26.10 | All versions, plus listed versions 1.3.9~dfsg-41.3.9b~dfsg-11.3.9d~dfsg-1 | None known |
proftpd-dfsgUbuntu:26.04:LTS | All versions, plus listed versions 1.3.9~dfsg-31.3.9~dfsg-4 | None known |
proftpdopenSUSE:Tumbleweed From an advisory covering 5 CVEs | before 1.3.9e-2.1 | 1.3.9e-2.1 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, aliases, references | OSV | |
| affected, aliases, references | OSV | |
| references | OSV | |
| references | CVE List | |
| facts | EUVD | |
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-35025 is a high vulnerability (CVSS 8.6) in Proftpd, published June 24, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.51%, the 43rd percentile. No source names a fixed version.
References
github.com/proftpd/proftpd/issues/2170
proftpd.org
vulncheck.com/advisories/proftpd-acl-bypass-via-proc-self-root-path-prefix-in-rnfr
nvd.nist.gov/vuln/detail/CVE-2026-35025
github.com/advisories/GHSA-9vr4-2f43-pc8v
github.com/CVEProject/cvelistV5/tree/main/cves/2026/35xxx/CVE-2026-35025.json
Show 21 moreShow less
github.com/proftpd/proftpd
security-tracker.debian.org/tracker/CVE-2026-35025
suse.com/support/update/announcement/2026/suse-su-20265181-1
bugzilla.suse.com/1263183
bugzilla.suse.com/1264262
bugzilla.suse.com/1269065
bugzilla.suse.com/1271096
bugzilla.suse.com/1271097
bugzilla.suse.com/1271944
bugzilla.suse.com/1271945
bugzilla.suse.com/1271946
bugzilla.suse.com/1289272
suse.com/security/cve/CVE-2026-119147
suse.com/security/cve/CVE-2026-35025
suse.com/security/cve/CVE-2026-42167
suse.com/security/cve/CVE-2026-44331
suse.com/security/cve/CVE-2026-53994
suse.com/security/cve/CVE-2026-63090
suse.com/security/cve/CVE-2026-63091
ubuntu.com/security/CVE-2026-35025
cve.org/CVERecord?id=CVE-2026-35025