Microsoft Descobre Falhas na Biblioteca ncurses que Afetam Sistemas Linux e macOS
18 de Setembro de 2023

Um conjunto de falhas de corrupção de memória foram descobertas na biblioteca de programação ncurses (abreviação de "new curses") que poderiam ser exploradas por atores de ameaças para rodar código malicioso em sistemas Linux e macOS vulneráveis.

"Usando envenenamento de variáveis de ambiente, os invasores poderiam encadear essas vulnerabilidades para elevar privilégios e executar o código no contexto do programa alvo ou realizar outras ações maliciosas", disseram os pesquisadores da Microsoft Threat Intelligence, Jonathan Bar Or, Emanuele Cozzi e Michael Pearse em um relatório técnico publicado hoje.

As vulnerabilidades, rastreadas coletivamente como CVE-2023-29491 (pontuação CVSS de 7.8), foram corrigidas em abril de 2023.

A Microsoft afirmou também que trabalhou com a Apple para resolver os problemas específicos do macOS relacionados a essas falhas.

Variáveis de ambiente são valores definidos pelo usuário que podem ser usados ​​por vários programas em um sistema e podem afetar a maneira como eles se comportam no sistema.

Manipular as variáveis ​​pode fazer com que os aplicativos realizem operações não autorizadas.
A auditoria de código da Microsoft e a técnica de bug hunting conhecida como fuzzing encontraram que a biblioteca ncurses procura por várias variáveis ​​de ambiente, incluindo TERMINFO, que poderiam ser envenenadas e combinadas com as falhas identificadas para alcançar a escalada de privilégios.

Terminfo é um banco de dados que permite que programas usem terminais de exibição de maneira independente do dispositivo.

Os erros abrangem um vazamento de informações de pilha, uma confusão de tipo de string parametrizada, um erro off-by-one, um heap out-of-bounds durante a análise de arquivo de banco de dados terminfo e uma negação de serviço com strings canceladas.

"As vulnerabilidades descobertas poderiam ter sido exploradas por invasores para elevar privilégios e rodar código dentro do contexto de um programa alvo", disseram os pesquisadores.

"No entanto, ganhar o controle de um programa explorando vulnerabilidades de corrupção de memória requer um ataque em várias etapas."

"Para um invasor elevar privilégios pode ter sido necessário encadear as vulnerabilidades, como explorar o vazamento de informações da pilha para obter primitivas de leitura arbitrárias junto com a exploração do overflow do heap para obter uma primitiva de escrita."

Publicidade

Pentest do Zero ao Profissional

O mais completo curso de Pentest e Hacking existente no Brasil, ministrado por instrutores de referência no mercado. Oferece embasamento sólido em computação, redes, Linux e programação. Passe por todas as fases de um Pentest utilizando ambientes realísticos. Se prepare para o mercado através da certificação SYCP. Saiba mais...