Solução para a utilização do modo de encriptação inseguro

Estas informações destinam-se aos programadores com apps que contêm encriptação que implementa o modo menos seguro AES/ECB. A encriptação de conteúdo através deste modo pouco seguro pode resultar em textos encriptados fracos e, potencialmente, pôr dados do utilizador em risco. Pode encontrar as localizações dos modos de encriptação menos seguros na sua app na notificação da Play Console relativa à app. Se uma localização terminar com "(no código carregado dinamicamente)", a localização está no código carregado dinamicamente pela app ou por bibliotecas usadas pela app. Geralmente, as aplicações usam código carregado dinamicamente através do fornecimento de funcionalidades a pedido, embora existam outras técnicas não recomendadas (algumas técnicas não recomendadas também violam a Política do Google Play e não devem ser usadas). Além disso, os empacotadores podem transformar o código da aplicação em código carregado dinamicamente.

Como corrigir alertas de "Modo de encriptação de criptografia inseguro"

Reveja a sua app para ver a localização em que uma cifra é instanciada. Os seguintes modos de configuração implicam a utilização do modo AES/ECB inseguro:

  • "AES"
  • "AES/ECB/NoPadding"
  • "AES/ECB/PKCS5Padding"
  • "AES/ECB/ISO10126Padding"

Por exemplo, o código seguinte usa o modo AES/ECB por predefinição porque foi indicado "AES": 

// O alerta da consola refere-se a este método
 public byte[] encryptionUtil(String key, String iv, byte[] plainText) {
    Cipher cipher = Cipher.getInstance(“AES”); 
// Emprega o modo AES/ECB por predefinição
    SecretKeySpec keySpec = new SecretKeySpec(key.getBytes(), “AES”);
    cipher.init(Cipher.ENCRYPT_MODE, keySpec, paramSpec);
    cipher.init(Cipher.ENCRYPT_MODE, keySpec, paramSpec);

    return cipher.doFinal(plainText);

 }

A Google recomenda que os programadores usem "AES/GCM/NoPadding" em vez do modo inseguro mencionado acima.

Passos seguintes

  1. Atualize a sua app ao seguir os passos realçados acima.
  2. Inicie sessão na Play Console e envie uma versão atualizada da app.

Durante este período, a nova app ou a atualização da app estará num estado de publicação pendente até que o seu pedido seja revisto. Se a app não tiver sido atualizada corretamente, continuará a ver o aviso.

Estamos aqui para ajudar

Se tiver perguntas técnicas acerca da vulnerabilidade, pode publicar uma mensagem no Stack Overflow e utilizar a etiqueta "android-security".


 
false
Menu principal
2208320114127460212
true
Pesquisar no Centro de ajuda
true
true
true
true
true
5016068
false
false
false