Falha no Kernel Linux permitia execução de código na arquitetura OpenRISC

Escrito por
Emanuel Negromonte
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre...

Segurança no Kernel Linux!

Uma vulnerabilidade grave que permitia a execução de código arbitrário no nível do kernel foi recentemente corrigida no Kernel Linux. O problema afetava especificamente sistemas baseados na arquitetura OpenRISC, originado por uma falha de validação de ponteiros de memória em uma chamada de sistema (syscall).

O patch de correção, submetido pelo desenvolvedor Ali Ahmet Memis e aceito pelo mantenedor Stafford Horne no último fim de semana de agosto de 2026, já foi integrado à árvore principal (mainline) mantida por Linus Torvalds.

O que isso significa na prática

Embora a expressão “execução de código no kernel” represente o nível mais alto de perigo em sistemas operacionais, o impacto no mundo real é bastante restrito.

O OpenRISC é uma arquitetura de processadores de código aberto voltada majoritariamente para sistemas embarcados, pesquisa acadêmica e hardwares customizados (FPGAs). Usuários de computadores tradicionais, servidores convencionais e smartphones, que utilizam processadores x86_64 (Intel e AMD) ou ARM, não são afetados por este problema em absoluto.

Entendendo a vulnerabilidade do syscall or1k_atomic

xdkn2iZ9 falha kernel linux execucao codigo openrisc 1
Falha no Kernel Linux permitia execução de código na arquitetura OpenRISC 3

A raiz do problema residia no arquivo de entrada da arquitetura OpenRISC (arch/openrisc/kernel/entry.S). A falha ocorria na chamada de sistema sys_or1k_atomic, mapeada como o syscall número 244 na interface binária de aplicação (ABI) do OpenRISC.

A função desse syscall é receber dois ponteiros de usuário e trocar as palavras (words) para as quais eles apontam utilizando código assembly feito à mão. O erro crítico de design foi que esses ponteiros não passavam pela verificação padrão access_ok(), uma macro de segurança fundamental no Kernel Linux usada para garantir que o espaço de memória solicitado realmente pertence ao usuário e não ao núcleo do sistema.

Sem essa barreira, um processo comum sem privilégios administrativos poderia passar um endereço de memória pertencente ao próprio kernel como parâmetro. Como a leitura e a gravação ocorriam de forma direta, o sistema permitia a substituição de dados vitais do kernel. O autor do patch observou que um invasor poderia sobrescrever a tabela de chamadas de sistema (sys_call_table), resultando no controle total do sistema através da execução de código malicioso no contexto de maior privilégio do hardware.

A solução implementada

A correção introduzida por Memis resolve a falha em duas frentes. Primeiro, o código assembly foi alterado para validar rigorosamente se ambos os ponteiros apontam para endereços dentro do limite do espaço de usuário (OR1K_ATOMIC_ADDR_LIMIT) antes de entrar na seção crítica que desabilita interrupções.

Segundo, foram adicionados tratamentos de exceção para os acessos à memória. Se o sistema tentar acessar um endereço de usuário que seja válido teoricamente, mas não mapeado no momento da execução, o kernel agora retornará o erro padrão -EFAULT em vez de falhar silenciosamente ou permitir o acesso indevido.

Histórico e disponibilidade

O bug estava presente no Kernel Linux desde os primeiros commits que adicionaram o suporte inicial de boot ao OpenRISC, marcando uma falha que permaneceu dormente por anos no código da arquitetura.

Com a integração na ramificação master, o commit foi sinalizado para a lista stable@vger.kernel.org. Isso garante que a correção será portada (backported) para todas as versões estáveis do Kernel Linux que ainda recebem suporte oficial nas próximas semanas, protegendo dispositivos embarcados que dependem dessa infraestrutura.

Compartilhe este artigo
Emanuel Negromonte é Jornalista, Mestre em Tecnologia da Informação e atualmente cursa a segunda graduação em Engenharia de Software. Com 14 anos de experiência escrevendo sobre GNU/Linux, Software Livre e Código Aberto, dedica-se a descomplicar o universo tecnológico para entusiastas e profissionais. Seu foco é em notícias, tutoriais e análises aprofundadas, promovendo o conhecimento e a liberdade digital no Brasil.