Vulnerabilidade no editores vim e Neovim leva a execução de código ao abrir um arquivo malicioso

Em editores de texto Vim e Neovim foi encontrado uma vulnerabilidade (CVE-2019-12735), que permite a execução de código arbitrário ao abrir um arquivo especialmente concebido.

Tele problema se manifesta com a atividade do modeline ativado por padrão (“: O padrão estabelecido“), que permite definir opções de edição no arquivo que está sendo processado. Vulnerabilidade eliminado em vitalidade 8.1.1365 e não autorizado 0.3.6 lançamentos.

através modeline, permitido apenas um número limitado de opções. Se a expressão for especificado como um valor de opção, ele é executado no modo sandbox, que permite usar apenas as mais simples operações seguras.

Ao mesmo tempo, o “: Fonte” comando é e ele pode ser usado “!” Modificador para executar comandos arbitrários de arquivo especificado. portanto, para executar o código, é suficiente para indicar na linha modeline uma construção da forma de “definido foldexpr = executar (‘\: Fonte! nome_ficheiro’):“. em Neovim, executar chamada é proibido, Mas assert_fails pode ser usado em vez.

Por exemplo, executar “uname -a” Comando, basta abrir um arquivo no Vim ou Neovim, a primeira ou última linha de que diz:

:!uname -a||" vi:fen:fdm=expr:fde=assert_fails("source\!\ \%"):fdl=0:fdt="

o “Fonte!%” comand vai ler os comandos do arquivo atual e, adequadamente, executar “:! uname -a“. Para ocultar esta linha de saída pelo utilitário cat, pode ser utilizado sequências de escape.

Por exemplo, Em este protótipo de um exploit durante a operação de um arquivo no vim, conexão de rede criado com acesso shell ao sistema da vítima, mas esse arquivo não irá causar suspeita quando a saída para o terminal com o utilitário cat.

Você pode verificar a atividade modeline usando o “: O padrão estabelecido?” Comando. Para desativar vimrc, você pode adicionar a linha “conjunto nomodeline“. em distribuições, o problema é corrigido no RHEL, SUSE / openSUSE, Fedora, FreeBSD, Ubuntu, Arch Linux e ALT. Vulnerabilidade permanece não corrigido em Debian.

Fonte: https://nvd.nist.gov

Polina Lisovskaya

Trabalho como gerente de marketing há anos e adoro pesquisar tópicos interessantes para você

Deixe uma resposta

Botão Voltar ao Topo