Correção de uso do modo de criptografia não seguro

Estas informações são destinadas aos desenvolvedores de apps com criptografia usando o modo AES/ECB, menos seguro. Criptografar conteúdo com esse modo pode gerar textos fracos e colocar os dados do usuário em risco. Os locais dos modos de criptografia menos seguros do app podem ser encontrados na notificação do Play Console. Se um local terminar com "(em código carregado dinamicamente)", ele vai estar no código carregado dinamicamente pelo app ou pelas bibliotecas usadas. Os aplicativos geralmente usam o código carregado dinamicamente pelo envio de recursos sob demanda, embora existam outras técnicas não recomendadas. Algumas dessas técnicas também violam a política do Google Play e não podem ser usadas. Além disso, os empacotadores podem transformar o código do aplicativo em código carregado dinamicamente.

Como corrigir alertas do "Modo de criptografia não segura"

Revise o app para ver o local em que uma Cipher é instanciada. Os seguintes modos de configuração implicam o uso de AES/ECB não seguro:

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

Por exemplo, o código a seguir usa o modo AES/ECB por padrão, porque o "AES" foi fornecido: 

// O alerta do console se refere a este método
 public byte[] encryptionUtil(String key, String iv, byte[] plainText) {
    Cipher cipher = Cipher.getInstance(“AES”); 
// Usa o modo AES/ECB por padrã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);

 }

O Google recomenda que os desenvolvedores usem “AES/GCM/NoPadding” em vez do modo não seguro mencionado acima.

Próximas etapas

  1. Atualize o app de acordo com as etapas destacadas acima.
  2. Faça login no Play Console e envie uma versão atualizada do app.

Durante esse período, o novo app ou a atualização terá o status Publicação pendente até que a solicitação seja analisada. Se o app não tiver sido atualizado corretamente, o aviso ainda será exibido.

Estamos aqui para ajudar

Caso tenha dúvidas técnicas sobre a vulnerabilidade, escreva uma postagem no Stack Overflow e use a tag "android-security".


 

Isso foi útil?

Como podemos melhorá-lo?
false
Menu principal
14729682841292821934
true
Pesquisar na Central de Ajuda
true
true
true
true
true
5016068
false
false