Отстраняване на проблеми при използване на несигурен режим на шифроване

Тази информация е предназначена за програмисти, чиито приложения съдържат шифроване, използващо не толкова надеждния режим AES/ECB. Шифроването на съдържание чрез него може да доведе до ненадеждни шифротекстове и потенциално излагане на потребителските данни на риск. Местоположенията на не толкова надеждните режими на шифроване в приложението ви могат да бъдат намерени в известието за него в Play Console. Ако местоположението завършва с „(в динамично зареждан код)“, то е в код, който се зарежда динамично от приложението или от библиотеките, които то използва. Приложенията обикновено използват динамично зареждан код чрез услугата за динамично доставяне на функции, но съществуват други непрепоръчителни техники (някои непрепоръчителни техники също така нарушават правилата на Google Play и не бива да се използват). Освен това програмите за пакетиране могат да трансформират кода на приложението в динамично зареждан код.

Как да отстраните сигналите за несигурните режими за криптографско шифроване

Прегледайте приложението си, за да намерите местоположението, където е създаден екземпляр за Cipher. Следните конфигурации ще доведат до използването на несигурен режим AES/ECB:

  • AES
  • AES/ECB/NoPadding
  • AES/ECB/PKCS5Padding
  • AES/ECB/ISO10126Padding.

Например следният код използва режима AES/ECB по подразбиране, тъй като бе предоставен алгоритъмът AES:

// Сигналът от Play Console се отнася за този метод
public byte[] encryptionUtil(String key, String iv, byte[] plainText) {
Cipher cipher = Cipher.getInstance(“AES”);
// Използва по подразбиране 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 препоръчва на програмистите да използват AES/GCM/NoPadding вместо горепосочения несигурен режим.

Следващи стъпки

  1. Актуализирайте приложението си, като изпълните горепосочените стъпки.
  2. Влезте в профила си в Play Console и изпратете актуализирана версия на приложението си.

Докато тя не бъде прегледана, състоянието на новото ви приложение или актуализацията ще бъде изчаква се публикуване. Ако приложението не е актуализирано правилно, ще продължите да виждате предупреждението.

На ваше разположение сме

Ако имате технически въпроси относно уязвимостта, можете да ги публикувате в Stack Overflow и да използвате маркера android-security.


 
false
Главно меню
11345067916421413114
true
Търсене в Помощния център
false
true
true
true
true
true
5016068
false
false
false
false
false