Vulnerabilidade na chamada de sistema execve, proporcionando acesso root no FreeBSD

Foi identificada uma vulnerabilidade no FreeBSD (CVE-2026-7270), que permite a um usuário não privilegiado executar código com direitos de kernel e obter acesso root ao sistema. A vulnerabilidade afeta todas as versões do FreeBSD lançadas desde 2013. Um exploit está disponível publicamente, tendo sua operação verificada em sistemas com FreeBSD 11.0 a 14.4. A vulnerabilidade foi corrigida nas atualizações FreeBSD 15.0-RELEASE-p7, 14.4-RELEASE-p3, 14.3-RELEASE-p12 e 13.5-RELEASE-p13. Para versões mais antigas, pode-se usar um patch.

O problema é causado por uma sobrecarga de buffer na chamada de sistema execve, que ocorre ao processar o prefixo especificado na primeira linha de scripts para determinar o caminho para o interpretador (por exemplo, "#!\/bin\/sh"). A sobrecarga ocorre ao chamar a função memmove devido à formulação incorreta da expressão matemática para calcular o tamanho dos argumentos copiados para o buffer. Em vez de subtrair de "args->endp" os valores de "args->begin_argv" e "consume", foi subtraído apenas o valor de "args->begin_argv", enquanto a variável consume foi adicionada ao resultado, ou seja, como resultado, mais dados foram copiados em dois valores de "consume". memmove(args->begin_argv + extend, args->begin_argv + consume, — args->endp — args->begin_argv + consume); + args->endp — (args->begin_argv + consume));

A sobrecarga permite sobrescrever elementos da estrutura "exec_map" de outro processo na área de memória adjacente. No exploit, a sobrecarga é utilizada para sobrescrever o conteúdo de "exec_map" de processos privilegiados executados periodicamente no sistema. Como processo, foi escolhido o sshd, que, a cada estabelecimento de conexão de rede, bifurca um processo "\/usr\/libexec\/sshd-session" com direitos de root através das chamadas fork e execve.

O exploit insere para este processo a variável de ambiente "LD_PRELOAD=\/tmp\/evil.so", levando à carga de sua biblioteca no contexto da sshd-session. A biblioteca inserida cria um arquivo executável na sistema de arquivos em "/tmp\/rootsh" com a flag suid root. A probabilidade de uma sobrecarga bem-sucedida é avaliada em 0,6%, mas devido à repetição cíclica das tentativas, a exploração bem-sucedida é alcançada em cerca de 6 segundos em um sistema com CPU de 4 núcleos.

Vulnerabilidade na chamada de sistema execve, proporcionando acesso root no FreeBSD

Além disso, várias outras vulnerabilidades foram corrigidas no FreeBSD:

  • CVE-2026-35547, CVE-2026-39457 — estouros de buffer na biblioteca libnv, utilizada no kernel e em aplicativos do sistema base para processar listas em formato chave/valor e para organizar a transmissão de dados na comunicação interprocessos. O primeiro problema é causado pelo cálculo incorreto do tamanho da mensagem ao processar cabeçalhos IPC formatados de maneira especial. O segundo problema leva a um estouro de pilha durante a troca de dados via socket devido à falta de verificação da correspondência entre o tamanho do descritor de socket e o tamanho do buffer usado na função select(). Potencialmente, as vulnerabilidades podem ser exploradas para elevar privilégios no sistema.
  • CVE-2026-42512 — estouro de buffer explorável remotamente no dhclient, que ocorre devido ao cálculo incorreto do tamanho do array de ponteiros utilizado para passar variáveis de ambiente no dhclient-script. Não se descarta a possibilidade de criar um exploit para execução remota de código através do envio de pacotes DHCP formatados de maneira especial.
  • CVE-2026-7164 — estouro de pilha no filtro de pacotes pf, que ocorre ao processar pacotes SCTP formatados de maneira especial. O problema é causado pela análise recursiva ilimitada dos parâmetros SCTP.
  • CVE-2026-42511 — possibilidade de injeção de diretivas arbitrárias no dhclient.conf devido à falta de proper escaping de colchetes duplos nos campos BOOTP recebidos de um servidor DHCP externo. Durante a análise subsequente desse arquivo pelo processo dhclient, o campo especificado pelo atacante é passado para o dhclient-script, podendo ser usado para executar comandos arbitrários com privilégios de root em sistemas que utilizam o dhclient ao se conectar a um servidor DHCP controlado pelo atacante.
  • CVE-2026-6386 — ausência de tratamento adequado para grandes páginas de memória na função do kernel pmap_pkru_update_range(). Um usuário não privilegiado pode forçar pmap_pkru_update_range() a tratar a memória do espaço do usuário como uma página na tabela de páginas de memória, resultando na sobrescrição de uma área de memória inacessível.
  • CVE-2026-5398 — acesso à área de memória já liberada no manipulador TIOCNOTTY, permitindo que um processo não privilegiado obtenha privilégios de root.

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