Índice:
- O que está acontecendo?
- Você deveria estar preocupado?
- O que devo fazer?
- E as atualizações para as explorações?
Um novo problema de segurança (CVE-2016-0728 para quem gosta de acompanhar essas coisas) foi anunciado em 14 de janeiro pela Perception Point, uma equipe de pesquisa de segurança. O bug afeta os kernels compilados com a opção de configuração do kernel CONFIG_KEYS definida como "on" e está presente em todos os kernels do Linux desde a versão 3.8. A exploração permite o escalonamento da raiz alternando um número inteiro de 32 bits para zero. O ponto de percepção alega que "aproximadamente dezenas de milhões de PCs e servidores Linux e 66% de todos os dispositivos Android" são afetados.
Adrian Ludwig, engenheiro do Google para segurança do Android, respondeu, dizendo que a exploração foi corrigida e lançada em código aberto a partir de 20 de janeiro.
Como sempre, ainda há muitas perguntas. Vamos conversar sobre eles.
O que está acontecendo?
Há um bug no kernel do Linux (versão 3.8 e superior) que permite que um invasor obtenha acesso root. O kernel precisa ter sido construído com o serviço Keyring ativado, e um ataque precisa fazer muita matemática para fazer com que o número seja o mais alto possível e depois volte ao zero. São necessárias 4.294.967.296 computações para alternar um número inteiro de 32 bits (dois para a 32ª potência) para zero. Isso leva apenas 30 minutos ou mais em uma nova CPU Intel i7, mas levaria muito mais tempo (como em muito mais tempo) na CPU do telefone.
Depois que o número percorrer todo o caminho (pense em como uma máquina de pinball volta a zero quando sua pontuação atinge 999.999.999) e volta a zero, o atacante pode obter acesso ao espaço de memória e executar o código como superusuário.
Você deveria estar preocupado?
Sempre devemos nos preocupar quando surgir uma exploração de segurança. Desta vez não é diferente. Mas existem algumas coisas aqui que fazem muitos questionarem o número de dispositivos potencialmente afetados.
- A configuração recomendada do kernel para dispositivos Android não tem a variável CONFIG_KEYS ativada e isso significa que essa exploração não terá efeito. As pessoas que criaram o seu telefone podem ter ativado, e os ROM ROM personalizados também podem ter.
- Todos os telefones Nexus não são afetados - eles usam a configuração padrão do kernel e o Keyring não está ativado no kernel.
- O SELinux nega o vetor de ataque; portanto, se seu telefone ou tablet estiver executando o Android 5.0 ou superior, você não será afetado.
- A maioria dos dispositivos que não executam o Android 5.0 ou superior estará usando uma versão mais antiga do kernel Linux e não será afetada.
Sim, muitos computadores, telefones e tablets são afetados por essa exploração. Mas duvidamos dos números que o Ponto de Percepção deu.
Não podemos auditar todos os 11.000 modelos diferentes de Androids por aí, mas podemos direcionar todos com mais perguntas para o fórum relevante do dispositivo. Em poucas palavras, se você estiver executando o Lollipop, estará seguro. Se não estiver, olhe para a tela Sobre o dispositivo e verifique sua versão do kernel. Se for anterior a 3, 8, você estará seguro.
O que devo fazer?
Esse é um daqueles problemas de segurança que podem ser explorados por um aplicativo - desde que seu telefone esteja vulnerável, como falamos acima. Como há muitos cálculos envolvidos, é necessário ter um aplicativo ruim em execução em primeiro plano por um longo tempo; portanto, algo como um jogo seria um bom aplicativo para tentar invadir uma exploração.
Para se manter seguro, não instale aplicativos nos quais não confia. Sempre.
Se você não tem certeza em quem pode confiar, certifique-se de não permitir que aplicativos sejam instalados de fontes desconhecidas e siga o Google Play.
É realmente fácil estar 100% seguro disso.
E as atualizações para as explorações?
Ludwig, do Google, diz que o patch foi lançado em 20 de janeiro para código aberto e entregue a todos os parceiros. Os fabricantes deverão incluir esse patch para estar em conformidade com o nível de patch de segurança de 1º de março de 2016 e posterior.