Naprawianie aplikacji zawierających potencjalnie niebezpieczną implementację interfejsu TrustManager

Te informacje są przeznaczone dla deweloperów aplikacji, które zawierają potencjalnie niebezpieczną implementację interfejsu X509TrustManager.

O co chodzi?

Co najmniej jedna z Twoich aplikacji zawiera potencjalnie niebezpieczną implementację interfejsu X509TrustManager. Implementacja ta ignoruje błędy weryfikacji certyfikatu SSL podczas nawiązywania połączenia HTTPS z hostem zdalnym, przez co aplikacja może być podatna na ataki typu „man in the middle”. Atakujący może odczytać dane przesyłane przy użyciu protokołu HTTPS (takie jak dane logowania), a nawet je zmodyfikować. Wykonaj dokładnie podane niżej czynności, by rozwiązać ten problem. Po przekroczeniu terminów wskazanych w Konsoli Play wszystkie aplikacje z lukami w zabezpieczeniach mogą zostać usunięte z Google Play.

Wymagane działania

  1. Zaloguj się w Konsoli Play i przejdź do sekcji Alerty, by sprawdzić, których aplikacji dotyczy problem i jaki jest termin jego rozwiązania.
  2. Zaktualizuj te aplikacje i usuń lukę w zabezpieczeniach.
  3. Prześlij zaktualizowane wersje tych aplikacji.

 

Po ponownym przesłaniu aplikacja zostanie jeszcze raz sprawdzona. Ten proces może potrwać kilka godzin. Jeśli aplikacja pomyślnie przejdzie weryfikację i zostanie opublikowana, nie musisz już nic robić. Jeśli wynik weryfikacji nie będzie pomyślny, nowa wersja aplikacji nie zostanie opublikowana, a Ty otrzymasz powiadomienie e-mailem.

Dodatkowe szczegóły

Aby weryfikacja certyfikatu SSL odbywała się prawidłowo, zmień kod w metodzie checkServerTrusted swojego interfejsu X509TrustManager, by wyjątek CertificateException lub IllegalArgumentException był zgłaszany zawsze wtedy, gdy certyfikat przedstawiony przez serwer nie spełnia oczekiwań. Pamiętaj w szczególności o tych kwestiach:

  1. Dopilnuj, by wyjątki zgłaszane przez metodę checkServerTrusted nie były przechwytywane w ramach tej metody. Spowodowałoby to normalne wyjście z metody checkServerTrusted, przez co aplikacja mogłaby uznać szkodliwy certyfikat za godny zaufania.
  2. Nie używaj metody checkValidity do weryfikowania certyfikatu serwera. Metoda checkValidity sprawdza, czy certyfikat nie wygasł, ale nie może określić, czy jest godny zaufania.

Możesz też użyć ustawień bezpieczeństwa sieci, by dostosować działanie certyfikatów aplikacji w mniej podatny na błędy sposób.

Chętnie Ci pomożemy

Jeśli masz pytania techniczne związane z tą luką, możesz je opublikować na stronie Stack Overflow, używając tagów „android-security” i „TrustManager”. Jeśli potrzebujesz wyjaśnienia czynności niezbędnych do rozwiązania tego problemu, skontaktuj się z naszym zespołem pomocy dla deweloperów.

Czy to było pomocne?

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