{"id":"CVE-2026-49238","summary":"SFTP Server VM Escape in Canonical Multipass","details":"An issue was discovered in Canonical Multipass before version 1.16.3. The host-side SFTP server component (sshfs_server), which executes with root privileges on the host, contains a path containment bypass vulnerability within its validate_path function in src/sshfs_mount/sftp_server.cpp. The function performs a plain string prefix comparison on requested paths without path separator validation or dot-dot (..) normalization. A local attacker with root privileges inside a guest virtual machine can bypass the FUSE layer by injecting raw SFTP frames (such as an SSH_FXP_OPEN request) directly into the sshfs_server process stdin/stdout pipes via procfs. By supplying a path containing directory traversal sequences that match the allowed mount prefix, the attacker can force the host-side root process to resolve the traversal and open files outside the designated mount boundary. This allows a guest-side user to read arbitrary files on the host filesystem, resulting in a virtual machine escape.","aliases":["GHSA-rhp2-23c4-r34w"],"modified":"2026-07-08T08:13:55.194877558Z","published":"2026-05-28T13:22:25.529Z","database_specific":{"cwe_ids":["CWE-22"],"cna_assigner":"canonical","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/49xxx/CVE-2026-49238.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/49xxx/CVE-2026-49238.json"},{"type":"ADVISORY","url":"https://github.com/canonical/multipass/security/advisories/GHSA-rhp2-23c4-r34w"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-49238"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/canonical/multipass","events":[{"introduced":"0"},{"fixed":"c8ab690c06ee555de4f5d8659d606d160d29f91e"}],"database_specific":{"cpe":"cpe:2.3:a:canonical:multipass:*:*:*:*:*:*:*:*","source":["AFFECTED_FIELD","CPE_RANGE"],"extracted_events":[{"introduced":"0"},{"fixed":"1.16.3"}]}}],"versions":["v1.16.3-rc1","v1.16.2-rc3","v1.16.2","v1.16.2-rc2","v1.16.2-rc1","v1.16.1-rc3","v1.16.1","v1.16.1-rc2","v1.16.1-rc1","v1.16.0","v1.16.0-rc5","v1.16.0-rc4","v1.16.0-rc3","v1.16.0-rc2","v1.16.0-rc1","v1.15.0-rc1","v1.16.0-dev","v1.14.0-rc1","v1.14.0-rc","v1.15.0-dev","v1.14.0-dev","v1.13.0-rc","v1.12.0-rc","v1.13.0-dev","v1.11.0-rc","v1.12.0-dev","v1.10.0-rc","v1.11.0-dev","v1.9.0-rc","v1.10.0-dev","v1.8.0-rc","v1.9.0-dev","v1.7.0-rc","v1.8.0-dev","v1.7.0-dev","v1.6.0-rc","v1.5.0-rc","v1.6.0-dev","v1.4.0-rc","v1.5.0-dev","v1.4.0-dev","v1.3.0-rc","v1.3.0-dev","v1.2.1","v1.2.0-rc","v1.2.0","v1.1.0-rc","v1.2.0-dev","v1.1.0-dev","v0.10.1-rc","v0.10.0-rc","v0.11.0-dev","v0.9.0-rc","v0.10.0-dev","v0.8.0","v0.9.0-dev","v0.8.0-rc","v0.7.0-rc","v0.8.0-dev","v0.7.0-dev2","v0.6.0-rc","v0.7.0-dev","v0.6.0-pre1","v0.5","2018.12.1-rc1","2018.11.1-pre3","2018.11.1-pre2","2018.11.1-pre1","2018.10.1","2018.4.2","2018.4.1","2017.2.3","2017.2.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-49238.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N"}]}