PT-2026-98850 · Kitty · Kitty
CVSS v4.0
6.8
Média
| Vetor | AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Nome do Software Vulnerável e Versões Afetadas
kitty versões 0.40.0 até 0.48.x
Descrição
Existe uma gravação fora dos limites (out-of-bounds write) no ramo de largura natural do protocolo de dimensionamento de texto. A função
screen handle multicell command() em kitty/screen.c anexa cada codepoint de um cluster de grafemas usando lc.chars[lc.count++] = ch sem realizar uma verificação de capacidade. Como lc é declarado como um array char type de quatro elementos através da macro RAII ListOfChars, um código de escape OSC 66 cujo payload contenha um cluster de grafemas com mais de quatro codepoints grava além do buffer. Caso o cluster seja precedido por uma sequência que cause um flush intermediário, o buffer é migrado para o heap por ensure space for chars(), e a gravação ocorre além da alocação do heap. Isso resulta na terminação do processo kitty e, consequentemente, de todas as suas janelas, abas e processos filhos.Recomendações
Atualize para a versão 0.49.0 ou posterior.
Correção
Memory Corruption
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Kitty