Páginas

quarta-feira, 24 de junho de 2026

openSUSE libinput Security Update 2026-2523-1: Patch de Escalação Local via uinput

 


Atualização crítica libinput openSUSE corrige escalação local via uinput (CVE-2026-50265, CVE-2026-50292). Aplique o patch com zypper e valide a versão agora.


Em 23 de junho de 2026, a SUSE publicou o aviso de segurança openSUSE-2026-2523-1, addressing duas vulnerabilidades críticas no libinput — a camada de gerenciamento de dispositivos de entrada presente em praticamente todos os ambientes gráficos Linux modernos. 

As CVEs CVE-2026-50265 e CVE-2026-50292 permitem que um atacante local com acesso a /dev/uinput injete propriedades udev arbitrárias através do helper libinput-device-group, resultando em execução de código com privilégios root.

O vetor de ataque explora a falta de sanitização no campo phys — identificador físico do dispositivo — que, quando manipulado com caracteres especiais (CRLF, no caso da CVE-2026-50292), permite a injeção de comandos udev executados durante a remoção do dispositivo (REMOVE_CMD)

A gravidade é reforçada pelos scores CVSS: 7.3 (CVSS v4.0) e 7.0 (CVSS v3.1) para CVE-2026-50265, e 9.8 (CVSS v3.1) para CVE-2026-50292 sob certas condições.

Este guia apresenta o procedimento de patch, validação e boas práticas para administradores de infraestrutura que mantêm ambientes openSUSE Leap 15.5 ou SUSE Linux Enterprise Server 15 SP5.


Pré-requisitos


Antes de iniciar, verifique:


  • Acesso root ou privilégios sudo no sistema alvo.
  • Conexão com repositórios SUSE/ openSUSE configurada e atualizada.

  • Conhecimento básico do gerenciador de pacotes Zypper.
  • Sistema com reboot programado (recomendado, pois o patch afeta serviços gráficos).


Passo a Passo


Verificação da Versão Atual do libinput


Antes de aplicar qualquer atualização, documente o estado atual do sistema:

bash
$ rpm -q libinput10
libinput10-1.21.0-150500.3.2.1.x86_64

Se a versão for anterior a 1.21.0-150500.3.3.1 (para Leap 15.5) ou 1.27.1-150700.3.3.1 (para SLES 15 SP7), o sistema está vulnerável.


Aplicação do Patch via Zypper

A SUSE recomenda o uso do zypper patch para instalação automatizada de patches de segurança.

Para o openSUSE Leap 15.5:

bash
$ sudo zypper patch --cve=CVE-2026-50265 --cve=CVE-2026-50292

Ou, para aplicar todos os patches disponíveis:

bash
$ sudo zypper patch

Para SUSE Linux Enterprise Server 15 SP5 LTSS:

bash
$ sudo zypper in -t patch SUSE-SLE-Product-SLES-15-SP5-LTSS-2026-2523=1

Para SUSE Linux Enterprise High Performance Computing 15 SP5 ESPOS:

bash
$ sudo zypper in -t patch SUSE-SLE-Product-HPC-15-SP5-ESPOS-2026-2523=1

Para SUSE Linux Enterprise Server for SAP Applications 15 SP5::

bash
$ sudo zypper in -t patch SUSE-SLE-Product-SLES_SAP-15-SP5-2026-2523=1

Saída esperada:

text
Loading repository data...
Reading installed packages...
Resolving package dependencies...

The following NEW patch is going to be installed:
  SUSE-2026-2523

1 patch to install.
Continue? [y/n/...? shows all options] (y): y
...

Verificação Pós-Patch

Após a conclusão, confirme a nova versão:

bash
$ rpm -q libinput10
libinput10-1.21.0-150500.3.3.1.x86_64

Para sistemas SLES 15 SP7, a versão corrigida é 1.27.1-150700.3.3.1.

Liste todos os pacotes atualizados:

bash
$ rpm -qa --last | grep libinput | head -5
libinput-tools-1.21.0-150500.3.3.1.x86_64  Wed Jun 24 10:15:32 2026
libinput10-1.21.0-150500.3.3.1.x86_64      Wed Jun 24 10:15:31 2026
libinput-udev-1.21.0-150500.3.3.1.x86_64   Wed Jun 24 10:15:30 2026
libinput-devel-1.21.0-150500.3.3.1.x86_64  Wed Jun 24 10:15:29 2026

Reinicialização dos Serviços Gráficos

O libinput é utilizado pelo Xorg e Wayland compositors. Para que a atualização entre em vigor sem reinicializar todo o sistema:

bash
# Reinicie o display manager (exemplo para GDM)
$ sudo systemctl restart gdm

# Ou para SDDM
$ sudo systemctl restart sddm

# Ou para LightDM
$ sudo systemctl restart lightdm

Atenção: Isso encerrará as sessões dos usuários. Planeje o procedimento em janela de manutenção ou utilize o comando loginctl terminate-user para finalizar sessões específicas antes do restart.

📘  Indicação de Leitura 



Esse livro  é um guia prático e abrangente sobre a segurança do sistema operacional Linux como um todo. O livro ensina a pensar como um atacante para fortalecer a defesa do servidor, abordando tópicos fundamentais como:

  • Ferramentas de rede: Nmap, Netcat, knockd.
  • Monitoramento: de arquivos e sistemas de arquivos.
  • Defesas: contra malware e ataques DDoS.
  • Descoberta de vulnerabilidades: como invasores encontram pontos fracos.


Segurança em Servidores Linux Ataque e Defesa: (anúncio) ->  https://link.amazon/B0i1E7SEJ 

Eu ganho uma comissão quando você faz uma compra.


Troubleshooting


Problema Comum: "zypper patch" não encontra o patch


Cenário: Após executar sudo zypper patch, o sistema informa que não há patches disponíveis, mesmo estando vulnerável.

Causa mais provável: Repositórios desatualizados ou incorretos. O patch SUSE-2026-2523 pode não estar visível se o repositório de patches não estiver habilitado.

Solução:

1. Atualize os metadados dos repositórios:

  1. bash
    $ sudo zypper refresh

2. Verifique se o patch está disponível:

  1. bash
    $ sudo zypper list-patches | grep -i libinput

3. Habilite repositórios de atualização (se necessário):

  1. bash
    $ sudo zypper repos --enable repo-update

4. Força a instalação do patch pelo ID:

  1. bash
    $ sudo zypper in -t patch SUSE-2026-2523=1


Armadilha Comum (e como evitá-la)


"Aplicar o patch e não reiniciar os serviços gráficos, assumindo que a biblioteca será recarregada dinamicamente"


O libinput é uma biblioteca compartilhada carregada no momento da inicialização do servidor X ou do compositor Wayland. Mesmo após a substituição dos binários no disco, os processos em execução continuam usando a versão antiga em memória.

Isso significa que, sem reiniciar o display manager ou, pelo menos, os processos gráficos, o sistema permanece vulnerável — o atacante ainda pode explorar a versão antiga carregada. A reinicialização dos serviços é obrigatória para que a correção seja efetiva.


Boas práticas:


  • Planeje um reboot completo do servidor se ele for headless (sem interface gráfica) — o libinput pode estar sendo usado por serviços como weston ou mutter em kiosks.

  • Em ambientes com múltiplos usuários, utilize loginctl para finalizar sessões gráficas antes de reiniciar o display manager.

  • Documente o procedimento e comunique a janela de manutenção com antecedência.


Conclusão


A atualização openSUSE-2026-2523-1 corrige duas vulnerabilidades críticas de escalação local no libinput, exploráveis através da injeção de propriedades udev via /dev/uinput. O patch eleva o libinput para as versões 1.21.0-150500.3.3.1 (Leap 15.5) ou 1.27.1-150700.3.3.1 (SLES 15 SP7).

O procedimento é simples e direto com zypper patch, mas a reinicialização dos serviços gráficos é um passo frequentemente negligenciado e essencial para a efetividade da correção.

Recomenda-se, ainda, monitorar logs de udev em busca de padrões suspeitos de criação de dispositivos:

bash
$ sudo journalctl -f -u systemd-udevd

E, para ambientes críticos, considerar a restrição de acesso a /dev/uinput via grupos e políticas SELinux/AppArmor como camada adicional de defesa.



Nenhum comentário:

Postar um comentário