Every CVE Search/ Get API key

CVE-2026-33633

Kitty has a Heap Buffer Overflow in its Graphics Protocol Handler

7.5 HighFix available

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
High
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

0.38%Up 0.3 points since May 20, 2026
90%50%10%1%

What each source reports

CVE List Score used 7.5

Kitty has a Heap Buffer Overflow in its Graphics Protocol Handler

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Record
CVE-2026-33633
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness
CWE-122
Updated
2026-11-02
EUVDEUVD-2026-30964 7.5

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Record
EUVD-2026-30964
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
NVD 7.5

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Record
CVE-2026-33633
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness
CWE-122
Updated
2026-11-02
OSV 7.5

Kitty has a Heap Buffer Overflow in its Graphics Protocol Handler

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Record
CVE-2026-33633
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness
CWE-122
Updated
2026-11-02
OSVDEBIAN-CVE-2026-33633 8.8

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Record
DEBIAN-CVE-2026-33633
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVUBUNTU-CVE-2026-33633 7.5

Kitty is a cross-platform GPU based terminal. Versions 0.46.2 and below contain a heap buffer overflow in load_image_data() that allows any process which can write to the terminal's stdin to crash kitty immediately. The vulnerability is triggered by a single APC graphics protocol command with a PNG format declaration (f=100) whose payload exceeds twice the initial buffer capacity. The overflow is attacker-controlled in both length and content, causing DoS and potentially escalation to RCE itself. This issue has been fixed in version 0.47.0.

Record
UBUNTU-CVE-2026-33633
CVSS 3.1
7.5 HighCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 3.1
8.8 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVopenSUSE-SU-2026:21599-1 No score

Security update for kitty

This update for kitty fixes the following issues:

Changes in kitty:

  • Update to 0.48.2:

    • Wayland: Fix regression in previous release that broke drag and drop on Plasma (#10284)
    • diff kitten: Fix a rare crash when showing a large diff due to incorrect locking when highlighting
    • Allow the private DCS kitty-echo escape code to only echo numbers
    • Linux: Fix an approx 1MB memory leak when reloading the config, introduced in version 0.40.0 (#10290)
    • Desktop file chooser integration: when the specified directory does not exist, open file chooser at home directory (#10292)
    • Add support for terminal visibility reports
    • tab_title_template: Add a field that evaluates to the total memory used by all child processes in the tab (#10293)
  • Update to 0.48.1:

    • Wayland: fix a regression in the previous release that broke window sizing for on Hyprland/Sway with fractional scales and an initial specified size (#10268)
    • Wayland: fix a regression in 0.47.3 that broke dragging on the Niri compositor (#10271)
    • Wayland: get initial window size in cells working in most cases on Hyprland/Sway with fractional scaling by using the fractional scale of the primary monitor
    • Wayland: fix using remote control to resize OS windows on some tiling compositors leading to broken rendering
    • macOS: fix edge=none panel height shrinking when margin_top is non-zero in the panel/quick-access-terminal kittens (#10278)
  • Update to 0.48.0:

    • Implement vertical tabs by setting tab_bar_edge to left or right (#9855)
    • Graphics protocol: Add a new transient usage hint that clients can send to terminals to indicate an image is meant for only short duration use (#10092)
    • On first press in an unfocused OS Window/kitty window give it focus and pass the mouse event through to the clicked element. This is a behavior change but aligns with platform defaults on macOS. Linux has no platform defaults here as far as I can tell, so it gets to follow along. (#10233)
    • kitten @ get-text: Add support for alternate and alternate_scrollback extents to fetch text from the alternate screen buffer (#10165)
    • Wayland: Fix first OS window being a few cells too small when initial_window_width/initial_window_height are set in cells and a fractional display scale is in use (#10146)
    • macOS: New option macos_ns_window_layer to more precisely control what layer panel OS windows are placed on (#10116)
    • macOS: New option macos_use_physical_screen_frame to allow panel OS Windows to cover the macOS global dock bar (#10116)
    • kitty binary builds are now built on Ubuntu 22 upgraded from Ubuntu 18 for improved performance from better compilers
    • macOS: Fix incorrect horizontal alignment when using text sizing protocol (#10179)
    • edit-in-kitty: Return exit code from underlying editor process on exit (#10198)
    • Make erasing last command robust against commands with no output and commands in the scrollback (#10201)
    • Fix superfluous margin visible to the left and right of the tab bar when background_opacity is less than one and the window width is not a multiple of the cell width (#10212)
    • hints kitten: Add a new flag kitty +kitten hints --prefix-free to generate hints without a shared prefix (#10210)
    • Wayland GNOME: Fix…
Record
openSUSE-SU-2026:21599-1
Updated
2026-11-02
OSVUSN-8442-1 No score

kitty vulnerabilities

It was discovered that kitty incorrectly handled certain image data. An attacker able to write to the terminal's input could possibly use this issue to cause kitty to crash, resulting in a denial of service, or possibly execute arbitrary code. (CVE-2026-33633)

It was discovered that kitty incorrectly handled certain graphics commands. An attacker able to write escape sequences to a kitty terminal could possibly use this issue to cause kitty to crash, resulting in a denial of service, or possibly execute arbitrary code. (CVE-2026-33642)

Record
USN-8442-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
kitty
Debian:12
All versions, plus listed versions
0.26.5-50.30.1-10.31.0-10.31.0-20.31.0-3
Show 35 moreShow less
0.31.0-40.32.0-10.32.1-10.32.2-10.33.0-20.33.1-10.34.1-10.35.1-10.35.2-10.36.1-10.36.4-10.36.4-20.36.4-30.37.0-10.38.1-10.39.0-10.39.1-10.40.0-10.41.1-10.41.1-20.42.1-10.42.2-10.43.1-10.44.0-10.45.0-10.45.0-20.46.1-10.46.2-10.47.0-10.47.0-20.47.0-30.47.3-10.47.4-10.48.2-10.48.2-1.1
None known
kitty
Debian:13
before 0.41.1-2+deb13u1, plus listed versions
0.41.1-2
0.41.1-2+deb13u1
kitty
Debian:14
before 0.47.0-1, plus listed versions
0.41.1-20.42.1-10.42.2-10.43.1-10.44.0-1
Show 4 moreShow less
0.45.0-10.45.0-20.46.1-10.46.2-1
0.47.0-1
kitty
Ubuntu:Pro:20.04:LTS
before 0.15.0-1ubuntu0.2+esm1, plus listed versions
0.14.3-10.14.4-10.14.6-10.15.0-10.15.0-1build10.15.0-1ubuntu0.2
0.15.0-1ubuntu0.2+esm1
kitty
Ubuntu:Pro:22.04:LTS
before 0.21.2-1ubuntu0.22.04.1+esm1, plus listed versions
0.19.3-10.21.2-10.21.2-1build10.21.2-1ubuntu0.22.04.1
0.21.2-1ubuntu0.22.04.1+esm1
kitty
Ubuntu:Pro:24.04:LTS
before 0.32.2-1ubuntu0.4+esm1, plus listed versions
0.26.5-3ubuntu20.26.5-5ubuntu10.31.0-30.31.0-40.32.2-1
Show 6 moreShow less
0.32.2-1build20.32.2-1build30.32.2-1ubuntu0.10.32.2-1ubuntu0.20.32.2-1ubuntu0.30.32.2-1ubuntu0.4
0.32.2-1ubuntu0.4+esm1
kitty
Ubuntu:25.10
before 0.41.1-2+deb13u1build0.25.10.1, plus listed versions
0.39.1-10.41.1-2
0.41.1-2+deb13u1build0.25.10.1
kitty
Ubuntu:Pro:26.04:LTS
before 0.45.0-1ubuntu0.1~esm1, plus listed versions
0.41.1-20.43.1-10.44.0-10.45.0-10.45.0-1build1
0.45.0-1ubuntu0.1~esm1
kitty
openSUSE:Leap 16.0
From an advisory covering 6 CVEs
before 0.48.2-bp160.1.1
0.48.2-bp160.1.1

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-33633 is a high vulnerability (CVSS 7.5) in Kitty Project Kitty, published May 19, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.38%, the 31st percentile. Fixed in kitty 0.41.1-2+deb13u1.

References

Show 15 moreShow less
This page doesn't list everything

Left out here: the rest of 1 source description. The JSON record has them.

MoveEnter Open