Atualização do X.Org Server 21.1.12 com correção de 4 vulnerabilidades.

Foram lançadas atualizações corretivas para o X.Org Server 21.1.12 e o componente DDX (Device-Dependent X) xwayland 23.2.5, que possibilita a execução do X.Org Server para a execução de aplicativos X11 em ambientes baseados em Wayland. Na nova versão, o X.Org Server corrigiu 4 vulnerabilidades. Uma vulnerabilidade pode ser explorada para elevação de privilégios em sistemas onde o servidor X é executado com permissões de root, bem como para execução remota de código em configurações onde o acesso utiliza redirecionamento de sessão X11 via SSH.

As outras três vulnerabilidades podem levar ao vazamento de conteúdo da memória servidor ou ao encerramento inesperado. Essas três vulnerabilidades são exploradas através do uso, do lado do cliente, de uma ordem de bytes diferente daquela em servidor. Devido a isso, a nova versão oferece a possibilidade de bloquear a conexão de clientes de sistemas com uma ordem de bytes diferente. Para desativar isso, pode-se usar o parâmetro de configuração "AllowByteSwappedClients" ou a opção da linha de comando "+byteswappedclients."

A alteração do valor padrão permite proteção contra possíveis vulnerabilidades ainda não identificadas que manipulam a ordem dos bytes. A essência dessas vulnerabilidades é que a alteração da ordem dos bytes para valores de tamanho resulta em sua interpretação incorreta e na leitura ou gravação em memória de um tamanho significativamente maior do que o buffer alocado pode comportar.

Por padrão, a compatibilidade com clientes de ordem de bytes diferente ainda é mantida, embora, na prática, a conversão de ordem de bytes tenha sido usada com muito pouca frequência ultimamente, uma vez que as estações de trabalho nas quais o servidor X é executado geralmente estão equipadas com processadores de ordem de bytes little-endian (do menor para o maior byte) e conectar-se a eles com clientes X de ordem big-endian, como a plataforma s390x (IBM zSystems), é uma grande raridade.

Problemas identificados:

  • CVE-2024-31080, CVE-2024-31081, CVE-2024-31082 — leitura de dados de um área fora do buffer através de manipulações nas funções ProcXIGetSelectedEvents, ProcXIPassiveGrabDevice e ProcAppleDRICreatePixmap, que utilizam um campo com tamanho sem considerar a ordem dos bytes no valor passado pelo cliente. Assim, com diferenças na ordem dos bytes entre cliente e servidor, as funções retornam mais dados ao cliente. Os primeiros dois problemas aparecem a partir da versão xorg-server-1.7.0 (2009) e o terceiro a partir da versão xorg-server-1.15.0 (2012).
  • CVE-2024-31083 — acesso à memória já liberada (User-after-free) na função ProcRenderAddGlyphs, que chama a função AllocateGlyph() para armazenar novos glifos enviados pelo cliente. A função AllocateGlyph() retorna um novo glifo com contagem de referências zero (refcount=0), e a reatribuição do glifo não aumenta a contagem de referências, o que resulta em um array glyph_new que pode incluir várias entradas apontando para um glifo sem contagem de referências. Ao liberar a memória alocada para o glifo pela função ProcRenderAddGlyphs(), permanece um exemplo extra de ponteiro para o glifo no array, cuja memória já foi liberada. O problema aparece no X.Org Server e não afeta o xwayland.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster