Postępowanie w przypadku użycia potencjalnie niebezpiecznego trybu szyfrowania

Te informacje są przeznaczone dla deweloperów aplikacji, które używają szyfrowania za pomocą mniej bezpiecznego trybu AES/ECB. Szyfrowanie treści za pomocą takich trybów może prowadzić do generowania niewystarczająco zaszyfrowanych tekstów i potencjalnie narażać dane użytkowników. Miejsca wystąpienia mniej bezpiecznych trybów szyfrowania w aplikacji znajdziesz w powiadomieniu z Konsoli Play. Jeśli lokalizacja kończy się fragmentem „(w kodzie ładowanym dynamicznie)”, oznacza to, że znajduje się w kodzie dynamicznie ładowanym przez aplikację lub biblioteki używane przez aplikację. Aplikacje zwykle używają kodu ładowanego dynamicznie podczas dostarczania funkcji na żądanie, ale istnieją także inne niezalecane techniki (niektóre z nich naruszają zasady Google Play i nie należy ich używać). Również programy pakujące mogą przekształcać kod aplikacji w kod ładowany dynamicznie.

Usuwanie przyczyn alertów o potencjalnie niebezpiecznym trybie szyfrowania kryptograficznego

Sprawdź, gdzie w aplikacji powstaje instancja mechanizmu szyfrowania. Te tryby konfiguracji sugerują korzystanie z potencjalnie niebezpiecznych metod AES/ECB:

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

Na przykład ten kod domyślnie używa trybu AES/ECB, ponieważ występuje w nim „AES”:

// Alert konsoli odnosi się do tej metody
 public byte[] encryptionUtil(String key, String iv, byte[] plainText) {
    Cipher cipher = Cipher.getInstance(“AES”); 
// Domyślnie używany jest tryb AES/ECB
    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);

 }

Google zaleca deweloperom korzystanie z trybu “AES/GCM/NoPadding” zamiast powyższego potencjalnie niebezpiecznego trybu.

Dalsze kroki

  1. Zaktualizuj aplikację w opisany powyżej sposób.
  2. Zaloguj się w Konsoli Play i prześlij zaktualizowaną wersję aplikacji.

Do tego czasu nowa aplikacja lub aktualizacja aplikacji będzie miała status Czeka na publikację. Jeśli nie została poprawnie zaktualizowana, ostrzeżenie nadal będzie się pojawiać.

Chętnie Ci pomożemy

Jeśli masz pytania techniczne związane z tą luką, możesz je opublikować na Stack Overflow, używając tagu „android-security”.


 

Czy to było pomocne?

Jak możemy ją poprawić?
false
Menu główne
3788468649733224434
true
Wyszukaj w Centrum pomocy
true
true
true
true
true
5016068
false
false