Os pesquisadores da Check Point introduziram um novo mecanismo de segurança para usuários do Linux chamado “safe-linking” (link seguro). Por quase duas décadas, atacantes exploraram o design do gerenciamento de memória usado pelos programas para plataforma Linux para controlar o computador-alvo. Por meio do mecanismo safe-linking, agora os atacantes precisam de mais de uma vulnerabilidade para assumir o controle do programa. Em outras palavras, apenas uma vulnerabilidade não é mais suficiente.
O “safe-linking” protege uma estrutura de dados simples chamada “single-linked-list”, que é uma lista de elementos nos quais, um elemento aponta para o próximo elemento até chegar ao final da lista. A safe-linking disfarça o ponteiro, de um elemento para outro, usando um valor secreto. Sem o conhecimento desse valor, os atacantes não podem modificar a memória para alterar de maneira controlada o ponteiro armazenado. Portanto, um atacante precisará projetar seu ataque com base em um segredo armazenado na memória, e ele precisará vazar a informação antes de poder iniciar o ataque. Isso requer uma nova vulnerabilidade de vazamento de memória, que geralmente é difícil de ser encontrada.
Um problema de 20 anos
O design original do mecanismo de memória é do ano 2000. Em 2005, uma proteção semelhante chamada “Safe-Unlinking” foi introduzida, mas abordava apenas uma parte do design. Os pesquisadores da Check Point finalmente encontraram uma maneira de proteger a parte restante.
As máquinas Linux são a base de milhões de computadores pessoais, laptops, roteadores de Internet, produtos de IoT, TVs inteligentes e muito mais. Também é usado para criar serviços da web para bancos globais, plataformas de bolsa de valores e grandes companhias aéreas. A Wikipedia publicou uma lista parcial, mas extensa, de usuários do Linux.
Um exemplo deste problema foi recentemente revelado pela divisão Check Point Research em fevereiro deste ano, quando mostraram como um como um agente criminoso explorou uma rede IoT (lâmpadas inteligentes e o seu gestor de controle) para lançar ataques a redes convencionais em ambientes particulares, residenciais, empresas ou mesmo em cidades inteligentes. Os pesquisadores direcionaram o foco nas lâmpadas inteligentes líderes de mercado da Philips Hue e seu controle, e descobriu vulnerabilidades (CVE-2020-6007) que permitiam se infiltrar nas redes explorando remotamente no protocolo wireless de baixa-energia ZigBee, o qual é usado para controlar a maioria dos dispositivos IoT.
“Nós conseguimos fazer a ponte entre o mundo das vulnerabilidades e o mundo do desenvolvimento de software. Embora os desenvolvedores de exploits estejam cientes desse problema há muitos anos, os desenvolvedores das bibliotecas não estavam cientes de um problema, ou seja, nada foi corrigido. Ao dar aos desenvolvedores o feedback com uma ideia para uma correção, foi possível encerrarmos esse problema de uma vez por todas. Os usuários do Linux devem estar cientes dessa atualização para garantir que, uma vez lançada, eles comecem a usar a versão mais atualizada de sua biblioteca padrão”, comenta Eyal Itkin, líder de Tecnologia da Check Point.
O “safe-linking” não é um item mágico que interromperá todas as tentativas de exploração contra as implementações de pilhas modernas. No entanto, este é outro passo na direção certa que visa forçar os atacantes a ter uma vulnerabilidade de vazamento de memória antes que eles possam iniciar sua exploração, pois a barra de segurança foi ampliada e as explorações tornaram-se mais difíceis de serem executadas.
Para obter mais informações e detalhes técnicos do “link seguro”, acesse o blog.