8.1 HIGH
- CVSS version (CVSS): 3.1
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Privileges Required (PR): None (N)
- User Interaction (UI): Required (R)
- Scope (S): Unchanged (U)
- Confidentiality (C): None (N)
- Integrity (I): High (H)
- Availability (A): High (H)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): Required (R)
- Modified Confidentiality (MC): None (N)
- Modified Scope (MS): Unchanged (U)
- Modified Integrity (MI): High (H)
- Modified Availability (MA): High (H)
Activity log
- Created suggestion
Tabby: Windows SFTP path traversal allows a malicious server to write files outside the selected download directory
Tabby (formerly Terminus) is a highly configurable terminal emulator. Prior to 1.0.235, a malicious SFTP server can return a backslash traversal filename through entry.name. In tabby-ssh/src/session/sftp.ts, SFTPSession.readdir() and _makeFile() use POSIX path processing that preserves the backslashes as ordinary filename characters. In tabby-ssh/src/components/sftpPanel.component.ts, downloadFolderRecursive() propagates item.name into the local relative path. In tabby-electron/src/services/platform.service.ts, ElectronDirectoryDownload.createFile() passes that path to Windows-native path.join(), and in tabby-electron/src/sftpContextMenu.ts, EditSFTPContextMenu.edit() passes item.name to path.join() for the temporary edit path. Windows interprets the preserved backslashes and parent-directory components as traversal, allowing attacker-controlled content to be created or overwritten outside the selected download directory or temporary edit directory. This issue is fixed in version 1.0.235.
References
-
https://github.com/Eugeny/tabby/security/advisories/GHSA-59p9-8gwf-v9v7 x_refsource_CONFIRM
-
https://github.com/Eugeny/tabby/releases/tag/v1.0.235 x_refsource_MISC
Affected products
- ==< 1.0.235
Matching in nixpkgs
pkgs.tabby
Self-hosted AI coding assistant
pkgs.tabby-agent
Language server used to communicate with Tabby server
pkgs.pkgsRocm.tabby
Self-hosted AI coding assistant
pkgs.typstPackages.tabbyterms
None
pkgs.typstPackages.tabbyterms_0_1_0
None
Package maintainers
-
@ghthor Will Owens <ghthor@gmail.com>
-
@skohtv Skoh <contact@skoh.dev>