Esta semana, revisamos as vulnerabilidades Unicode, que permitem que o código seja maliciosamente codificado para que pareça diferente para um compilador e para o olho humano. Também falaremos sobre segurança de contêineres e um plugin WordPress vulnerável que achamos que requer atenção.
Fonte de Trojan (CVE-2021-42574)
Um artigo recente publicado por dois pesquisadores da Universidade de Cambridge mostra que o uso exclusivo de caracteres de sobreposição de direcionalidade Unicode em código pode fazer com que os leitores humanos interpretem mal o código como seguro, enquanto permite que atores maliciosos introduzam alterações lógicas na base de código. Os pesquisadores criaram um repositório GitHub para demonstrar como estes caracteres podem ser utilizados em diferentes linguagens de programação.
#!/usr/bin/env python3
def sayHello():
print("Hello, World!")
def sayHello():
print("Goodbye, World!")
sayHello()
Você pode dizer qual função será executada? Um compilador pode!
Esta questão pode ter múltiplas implicações de segurança. O código malicioso pode ser introduzido em um repositório público de outra forma seguro para ataques da cadeia de suprimentos. O código copiado de fóruns públicos também pode conter estas alterações lógicas maliciosas. É mencionado no documento que a maioria dos compiladores são vulneráveis a estas questões, e mesmo que algumas comunidades tenham reconhecido o problema (ver Rust e GitHub), é sabido que a maioria ainda é vulnerável.
Melhores Práticas de Segurança de Contêineres
De acordo com a Docker, um contêiner é uma unidade padrão de software que embala o código e todas as suas dependências. A aplicação é executada de forma rápida e confiável de um ambiente de computação para outro. Isto permite implantar uma imagem da aplicação sem fazer alterações em diferentes sistemas operacionais do host. Embora estas imagens de contêineres estejam isoladas do sistema operacional subjacente, uma vulnerabilidade explorável dentro de um contêiner pode comprometer toda a infraestrutura da nuvem, de acordo com o guia Comprehensive Container Security do sysdig. De acordo com a pesquisa da 2020 Cloud Native Computing Foundation (CNCF), o uso de contêineres na produção aumentou para 92%, o que significa que é mais importante do que nunca proteger essas instâncias.
Oferecemos nosso próprio guia de segurança de contêineres que entra em mais detalhes sobre o uso de ferramentas e procedimentos recomendados para construir imagens seguras do Docker. Recomendamos seguir estas melhores práticas para proteger melhor seus contêineres:
- Atualizar as imagens regularmente para reduzir o número de vulnerabilidades em um contêiner.
- Frequentemente, a varredura de vulnerabilidades utiliza uma ferramenta de varredura de vulnerabilidades como Trivy, uma ferramenta gratuita e de código aberto construída para este fim.
- Criar usuários limitados para operar os contêineres e evitar que os contêineres funcionem como usuário raiz sempre que possível. É importante exercer o princípio do privilégio mínimo ao utilizar os contêineres.
- Limitar a CPU e a RAM que um contêiner utiliza. Os limites de uso de hardware mitigam grandemente a capacidade de um atacante de realizar mineração criptográfica em um determinado contêiner. Isto também beneficia a melhoria do desempenho ao reduzir a quantidade de recursos desnecessários alocados para um contêiner.
Por último, você pode conferir a Folha de Aplicativos de Segurança do Docker fornecida pelo Open Web Application Security Project (OWASP) para uma rápida visão geral sobre este assunto.
OptinMonster WordPress Plugin (CVE-2021-39341)
De acordo com a página do WordPress do plugin, OptinMonster é um plugin que ajuda seus usuários a construir popups para permitir a assinatura para os leitores. A partir desta escrita, ele tem mais de um milhão de instalações ativas.
Este plugin usa pontos de extremidade de API para funcionar. De acordo com o artigo do WordFence, a maioria desses pontos de extremidade da API eram vulneráveis, permitindo que um invasor não autenticado exportasse informações confidenciais e injetasse código JavaScript malicioso nos sites do WordPress usando o plugin. As versões anteriores à 2.6.4 deste plugin estão abertas a esses ataques, e é altamente recomendável atualizar este plugin para a versão mais recente. A equipe do OptinMonster redefiniu as chaves de API comprometidas e os usuários podem precisar gerar novamente suas chaves de API para continuar usando o plug-in.
Ao preparar estes digestores, pretendemos compartilhar informações úteis com nossos leitores. Sinta-se à vontade para deixar um comentário abaixo se você aprendeu algo novo, e fique atento às últimas notícias sobre segurança.
Comentários