Critical Local Executable Execution Risk in Kitty Package

kitty Updated 02 Oct 2025

Summary

20/04/2025
N/A
No i
High
7.8

CVE-2025-43929: open_actions.py in kitty before 0.41.0 does not ask for user confirmation before running a local executable file that may have been linked from an untrusted document (e.g., a document opened in KDE ghostwriter). Affects kitty versions < ce5cfdd9caf44c538af800a07162e1f49bd53c35. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

Background

Kitty is a modern terminal emulator designed for performance and extensibility, widely used in various Linux distributions. It supports features like GPU rendering, multiple tabs, and a rich set of keyboard shortcuts. However, prior to version 0.41.0, Kitty has a significant security flaw that allows untrusted documents to execute local files without user confirmation, posing a risk to users' systems.

Vulnerability Detail

The vulnerability, identified as CVE-2025-43929, exists in the open_actions.py file of the Kitty package before version 0.41.0. It fails to prompt users for confirmation before executing local executable files linked from untrusted documents, such as those opened in KDE ghostwriter. This oversight can lead to unauthorized execution of potentially harmful files, compromising user security and system integrity.

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary measure, users can avoid opening untrusted documents in Kitty or disable the execution of local files until the package is updated. Additionally, consider using a different terminal emulator that does not exhibit this vulnerability.

Conclusion

The CVE-2025-43929 vulnerability in the Kitty package poses a significant risk by allowing untrusted documents to execute local files without user confirmation. Users are strongly advised to update to version 0.41.0 or later to mitigate this risk. For those unable to update immediately, temporary workarounds are available.

See every vulnerability recorded for kitty →

Share this vulnerability

FAQ

CVE-2025-43929 is a vulnerability in the Kitty terminal emulator that allows untrusted documents to execute local files without user confirmation.

You can check your version of Kitty by running 'kitty --version' in the terminal. If it is below 0.41.0, it is affected by this vulnerability.

If you cannot update Kitty, avoid opening untrusted documents or consider using an alternative terminal emulator until the update can be applied.

More information can be found in the official CVE database or by visiting the vulnerability report at https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-43929.json.

Vulert monitors open-source vulnerabilities in software using a manifest file like package-lock.json, providing real-time alerts without needing code access or installation.

Related vulnerabilities

Recent vulnerabilities recorded for kitty.

Sponsored Lume, the Habilume companion Habilume Habit tracker with a companion that grows with you Complete habits, earn Lume Points, and watch your Lume grow as you stay consistent. App Store Google Play

How To Fix

No fixed version is published for this vulnerability.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback