CVE-2025-53905
NoneCVSS
—
EPSS
0.3%
Published
Jul 15, 2025
CISA due date
—
Cloudanix analysis
A text editor can be tricked into replacing important files on your computer when you open a specially made archive, which might let attackers take control if you're not careful.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Path Traversal
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Path traversal in the tar.vim plugin permits writing files to arbitrary locations outside the archive's intended directory when a malicious tar archive is opened.
Why it matters to the business
Users risk system compromise or data loss if crafted archives overwrite critical files or plant executables in privileged locations, though direct user interaction is required.
How an attack unfolds
An attacker creates a tar archive containing filenames with traversal sequences such as ../. When the victim opens the archive in Vim, the tar.vim plugin extracts and overwrites target files; if permissions allow, planted code in startup locations or PATH directories can enable arbitrary command execution.
How to fix it
Upgrade to Vim 9.1.1552 or apply the patch at commit 87757c6b0a4b2c1f71c72ea8e1438b8fb116b239. Do not open untrusted tar archives with Vim until the update is applied.
How to confirm the fix worked
Verify the installed Vim version is 9.1.1552 or newer and confirm the tar.vim plugin rejects traversal paths during extraction of test archives.
Typical attack path
- Create tar archive with path traversal filenames targeting sensitive or executable locations
- Distribute the archive to the victim
- Victim opens the archive using Vim
- tar.vim plugin performs unintended file writes
- Attacker achieves persistence or code execution via overwritten files
How to detect it
Review file access and modification logs around Vim sessions that handle tar archives for writes outside expected directories; inspect recently created or altered files in system or user home paths after tar editing activity.
What your security team should do
- Apply the fixed Vim version or commit immediately across all installations
- Restrict opening of untrusted archives in Vim via policy or sandboxing
- Educate users to inspect archive contents before editing with Vim
The record
Vim is an open source, command line text editor. Prior to version 9.1.1552, a path traversal issue in Vim’s tar.vim plugin can allow overwriting of arbitrary files when opening specially crafted tar archives. Impact is low because this exploit requires direct user interaction. However, successfully exploitation can lead to overwriting sensitive files or placing executable code in privileged locations, depending on the permissions of the process editing the archive. The victim must edit such a file using Vim which will reveal the filename and the file content, a careful user may suspect some strange things going on. Successful exploitation could results in the ability to execute arbitrary commands on the underlying operating system. Version 9.1.1552 contains a patch for the vulnerability.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:10 | vim-X11 | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | vim-X11 | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:10 | vim-common | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | vim-common | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:10 | vim-data | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | vim-data | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:10 | vim-enhanced | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | vim-enhanced | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:10 | vim-filesystem | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | vim-filesystem | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:10 | vim-minimal | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | vim-minimal | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:10 | xxd | 0 | 2:9.1.083-5.el10_0.1 |
| AlmaLinux:10 | xxd | 0 | 2:9.1.083-6.el10_1 |
| AlmaLinux:8 | vim-X11 | 0 | 2:8.0.1763-21.el8_10 |
| AlmaLinux:8 | vim-common | 0 | 2:8.0.1763-21.el8_10 |
| AlmaLinux:8 | vim-enhanced | 0 | 2:8.0.1763-21.el8_10 |
| AlmaLinux:8 | vim-filesystem | 0 | 2:8.0.1763-21.el8_10 |
| AlmaLinux:8 | vim-minimal | 0 | 2:8.0.1763-21.el8_10 |
| AlmaLinux:9 | vim-X11 | 0 | 2:8.2.2637-22.el9_6.1 |
| AlmaLinux:9 | vim-X11 | 0 | 2:8.2.2637-23.el9_7 |
| AlmaLinux:9 | vim-common | 0 | 2:8.2.2637-22.el9_6.1 |
| AlmaLinux:9 | vim-common | 0 | 2:8.2.2637-23.el9_7 |
| AlmaLinux:9 | vim-enhanced | 0 | 2:8.2.2637-22.el9_6.1 |
| AlmaLinux:9 | vim-enhanced | 0 | 2:8.2.2637-23.el9_7 |
| AlmaLinux:9 | vim-filesystem | 0 | 2:8.2.2637-22.el9_6.1 |
| AlmaLinux:9 | vim-filesystem | 0 | 2:8.2.2637-23.el9_7 |
| AlmaLinux:9 | vim-minimal | 0 | 2:8.2.2637-22.el9_6.1 |
| AlmaLinux:9 | vim-minimal | 0 | 2:8.2.2637-23.el9_7 |
| Debian:11 | vim | 0 | No fix |
| Debian:12 | vim | 0 | No fix |
| Debian:13 | vim | 0 | No fix |
| Debian:14 | vim | 0 | No fix |
| Mageia:9 | vim | 0 | 9.1.1552-1.mga9 |
| SUSE:Linux Enterprise Micro 5.1 | vim | 0 | 9.1.1629-150000.5.78.1 |
| SUSE:Linux Enterprise Micro 5.2 | vim | 0 | 9.1.1629-150000.5.78.1 |
| SUSE:Linux Enterprise Micro 5.3 | vim | 0 | 9.1.1629-150000.5.78.1 |
| SUSE:Linux Enterprise Micro 5.4 | vim | 0 | 9.1.1629-150000.5.78.1 |
| SUSE:Linux Enterprise Micro 5.5 | vim | 0 | 9.1.1629-150500.20.33.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP6 | vim | 0 | 9.1.1629-150500.20.33.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP7 | vim | 0 | 9.1.1629-150500.20.33.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP6 | vim | 0 | 9.1.1629-150500.20.33.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP7 | vim | 0 | 9.1.1629-150500.20.33.1 |
| SUSE:Linux Enterprise Server LTSS Extended Security 12 SP5 | vim | 0 | 9.1.1629-17.51.1 |
| openSUSE:Leap 15.6 | vim | 0 | 9.1.1629-150500.20.33.1 |
Related vulnerabilities
- CVE-2025-53906 Vim is an open source, command line text editor. Also affects vim-X11
- CVE-2022-1927 Buffer Over-read in GitHub repository vim/vim prior to 8.2. Also affects vim-X11
- CVE-2022-1897 Out-of-bounds Write in GitHub repository vim/vim prior to 8.2. Also affects vim-X11
- CVE-2022-1785 Out-of-bounds Write in GitHub repository vim/vim prior to 8.2.4977. Also affects vim-X11
- CVE-2022-0318 Heap-based Buffer Overflow in vim/vim prior to 8.2. Also affects vim-X11
- CVE-2022-0261 Heap-based Buffer Overflow in GitHub repository vim/vim prior to 8.2. Also affects vim-X11
- CVE-2021-4019 vim is vulnerable to Heap-based Buffer Overflow Also affects vim-X11
- CVE-2023-4752 Use After Free in GitHub repository vim/vim prior to 9.0.1858. Also affects vim-X11