Skip to main content

SFTPGo EUVDEUVD-2026-63713

| CVE-2026-49244 MEDIUM
Path Traversal (CWE-22)
2026-07-02 https://github.com/drakkan/sftpgo GHSA-h64p-8h4r-6gfh
5.9
CVSS 3.1 · Vendor: https://github.com/drakkan/sftpgo
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify public SFTPGo web-client endpoint
  2. Delivery
    Enumerate or predict browsable share name
  3. Exploit
    Craft ZIP download request with path-traversal entries
  4. Execution
    Bypass raw prefix check via canonical path prefix match
  5. Impact
    Retrieve files from outside share boundary

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires three concurrent conditions: (1) the SFTPGo instance must have at least one public (unauthenticated) browsable share configured and accessible to the requester - private or authenticated-only shares are not affected; (2) the web-client HTTP interface must be reachable by the attacker, which is network-dependent; (3) the canonical path of the target file must begin with the shared directory's name, meaning the attacker must identify or predict a file in a directory whose name shares a prefix with the public share directory. Authentication is not required by design for public shares (PR:N in CVSS). Deployments where no public shares are configured, or where the web-client port is firewalled, are not exploitable.

Impact

The NVD-assigned CVSS 3.1 score of 5.9 (AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N) reflects a meaningful but conditionally exploitable information disclosure. The High attack complexity (AC:H) is grounded in the description's constraint: exploitation succeeds only when the target file's canonical path begins with the shared directory's name, narrowing the attack surface to predictable path structures (e.g., sibling directories sharing a name prefix). No EPSS score was provided in the source data, so exploitation probability cannot be quantified. No KEV listing exists, and no public POC has been identified - the real-world risk is therefore limited to opportunistic discovery or targeted exploitation by an attacker who can enumerate or predict directory layouts. The impact is confined to confidentiality (C:H) with no integrity or availability effect. Instances that expose public shares to the internet carry elevated risk; deployments where public shares are restricted to internal networks have substantially reduced exposure. The fix in v2.7.3 is a targeted code change replacing the prefix check with directory-boundary logic, lending high confidence to its completeness.

Exploit ScenarioDerived

An attacker who discovers a public SFTPGo share (e.g., via web crawling or direct URL enumeration) submits a crafted partial ZIP download request to the web-client endpoint, supplying file entries whose paths are constructed so their canonical form begins with the shared directory name but traverses to a sibling directory - for instance, requesting '/shares/uploads/../uploads-internal/config.json' where 'uploads-internal' canonicalizes to a string starting with 'uploads'. The server's prefix check passes, and the file contents are returned in the ZIP response, exposing data outside the intended share boundary. No public POC has been identified, but the vulnerability class (path traversal via prefix bypass) is well-understood and reproducible from the advisory description alone.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.4% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 02, 2026

Path traversal in SFTPGo's public web-client partial ZIP download endpoint allows unauthenticated remote attackers to read files located outside a browsable share's directory boundary. The flaw exists because the endpoint validated file entries using a raw string prefix check rather than a directory-boundary-aware comparison - a crafted request can escape the share root by supplying paths whose canonical form begins with the shared directory name but resolves to a parent or sibling path. Affected versions prior to v2.7.3 are vulnerable; no public exploit or CISA KEV listing has been identified at time of analysis.

RemediationAI

Upgrade SFTPGo to version 2.7.3 or later, which replaces the raw string prefix check with a directory-boundary-aware path confinement check. The fix is documented in the GitHub Security Advisory GHSA-h64p-8h4r-6gfh (https://github.com/drakkan/sftpgo/security/advisories/GHSA-h64p-8h4r-6gfh). If an immediate upgrade is not possible, the most effective compensating control is to disable public (unauthenticated) browsable shares entirely - this removes the vulnerable endpoint from the attack surface with no impact on authenticated user sessions. Alternatively, restrict network access to the SFTPGo web-client port to trusted IP ranges via firewall rules, limiting exposure to internal networks where path enumeration is harder. Note that restricting network access does not eliminate the vulnerability if internal threat actors or compromised hosts are a concern; patching remains the definitive fix.

Affected VersionsENISA

sftpgo 2.2.0 < 2.7.2

Affected Packages

go github.com/drakkan/sftpgo no fix
go github.com/drakkan/sftpgo/v2 fix: 2.7.3
euvd sftpgo fix: 2.7.2

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 3 packages in go, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

SFTPGo (pkg:go/github.com_drakkan_sftpgo_v2) is an open-source, feature-rich file transfer server written in Go supporting SFTP, FTP/S, WebDAV, and an HTTP web-client interface. The vulnerability resides in the web-client endpoint that generates partial ZIP archives for browsable public shares. CWE-22 (Improper Limitation of a Pathname to a Restricted Directory - Path Traversal) applies: the server evaluated whether a client-supplied file entry belonged to the share by checking whether the entry's canonical path string started with the shared directory name, rather than verifying directory containment via a proper separator-aware boundary check. This classic 'prefix bypass' pattern allows an attacker to name a path such that its canonical form starts with e.g. '/shares/data' but actually resolves to '/shares/data-secret/file.txt', satisfying the prefix check while escaping the intended directory boundary.

Know when Canonical gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (https://github.com/drakkan/sftpgo) PRIMARY 5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 5.9 MEDIUM

Public shares require no authentication (PR:N); canonical path prefix constraint limits viable targets (AC:H); impact is read-only file disclosure outside share boundary (C:H, I:N, A:N).

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
SUSE MEDIUM

Primary rating from Vendor (https://github.com/drakkan/sftpgo).

CVSS VectorVendor: https://github.com/drakkan/sftpgo

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
None
Availability
None

DescriptionCVE.org

Summary

The public web-client endpoint for partial ZIP downloads of a browsable share did not correctly confine the client-supplied files entries to the shared directory. A requester able to reach a public share could read files located outside the shared directory, as long as the target's canonical path begins with the shared directory's name.

Patches

Fixed in v2.7.3. The fix replaces the raw prefix check with a directory-boundary-aware check.

Threat Intelligence Overview

EPSS Score
0.4%
Top 70% exploitable
Prevalence
Medium
popular open-source Go SFTP/file-transfer server, moderate enterprise adoption
Threat Intel
2
1 sources
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS NEWS GHSA Vendor GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.4%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

30
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +30
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

CVE-2011-3544 CRITICAL POC
9.8 Oct 19

Oracle Java SE JDK/JRE 7 and 6 Update 27 and earlier allows remote code execution with complete system compromise throug

CVE-2019-11043 CRITICAL POC
9.8 Oct 28

In PHP versions 7.1.x below 7.1.33, 7.2.x below 7.2.24 and 7.3.x below 7.3.11 in certain configurations of FPM setup it

CVE-2014-6271 CRITICAL POC
9.8 Sep 24

GNU Bash through 4.3 processes trailing strings after function definitions in the values of environment variables, which

CVE-2013-0422 CRITICAL POC
9.8 Jan 10

Multiple vulnerabilities in Oracle Java 7 before Update 11 allow remote attackers to execute arbitrary code by (1) using

CVE-2016-3714 HIGH POC
8.4 May 05

The (1) EPHEMERAL, (2) HTTPS, (3) MVG, (4) MSL, (5) TEXT, (6) SHOW, (7) WIN, and (8) PLT coders in ImageMagick before 6.

CVE-2017-12617 HIGH POC
8.1 Oct 04

When running Apache Tomcat versions 9.0.0.M1 to 9.0.0, 8.5.0 to 8.5.22, 8.0.0.RC1 to 8.0.46 and 7.0.0 to 7.0.81 with HTT

CVE-2016-8735 CRITICAL POC
9.8 Apr 06

Remote code execution is possible with Apache Tomcat before 6.0.48, 7.x before 7.0.73, 8.x before 8.0.39, 8.5.x before 8

CVE-2014-7169 CRITICAL POC
9.8 Sep 25

GNU Bash through 4.3 bash43-025 processes trailing strings after certain malformed function definitions in the values of

CVE-2014-0160 HIGH POC
7.5 Apr 07

The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe

CVE-2016-5195 HIGH POC
7.0 Nov 10

Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by lev

CVE-2013-2423 LOW POC
3.7 Apr 17

Unspecified vulnerability in the Java Runtime Environment (JRE) component in Oracle Java SE 7 Update 17 and earlier, and

CVE-2023-4911 HIGH POC
7.8 Oct 03

Local privilege escalation in the GNU C Library (glibc) dynamic loader ld.so allows unprivileged local users on affected

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Server 16.1 Affected
SUSE Linux Enterprise Server for SAP applications 16.1 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP5 Affected
SUSE Linux Enterprise Module for Package Hub 15 SP6 Affected
openSUSE Leap 15.5 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy