Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 16115|Yanıt: 2

Android 7.0 bilinmeyen ve geçersiz sertifikalardan sonra paketleri yakalamak için çözüm

[Bağlantıyı kopyala]
Yayınlandı 18.03.2019 21:38:06 | | | |
arka plan

Paket yakalama yazılımı (örneğin Charles'ı) APP'in https isteğini yakalamak için kullanılırken, hem Android hem de Charles sertifikayı doğru şekilde yüklemiş ancak paket yakalama başarısız olur ve bir hata bildirilir:

İstemci SSL el sıkışması başarısız oldu: Sertifika işlenirken bilinmeyen bir sorun ortaya çıktı (certificate_unknown)



Neden

Android7.0'dan sonra, varsayılan olarak sisteme eklenen CA sertifikasına güvenilmez:

Android ekosisteminde daha tutarlı ve daha güvenli bir deneyim sağlamak için, Android Nougat'tan başlayarak, uyumlu cihazlar yalnızca AOSP'de tutulan standart sistem CA'larına güvenir .


Dokümantasyon bağlantısı:https://android-developers.googl ... ed-certificate.html

Bu, SDK24 ve üzeri tabanlı uygulamalar için, telefonunuzda paket yakalama aracının sertifikası yüklü olsa bile, https isteklerini yakalayamayacağınız anlamına gelir.

çözüm

1. Resmi çözüm (kod değişikliği gereklidir)

Resmi belgeler:https://developer.android.google ... ecurity-config.html
Detaylı Gösterim:https://blog.csdn.net/mrxiagc/article/details/75329629

2. Paket yakalama yazılımının sertifikasını sistem sertifikası olarak yükleyin (ROOT gereklidir)

Sistem sertifikası dizini: /system/etc/security/cacerts/

Her sertifikanın adlandırma geleneği şöyledir:
<Certificate_Hash>. <Number>

Dosya adı bir hash değeridir, eki ise bir sayıdır.

Dosya adı aşağıdaki komutla hesaplanabilir:


Örneğin, iki sertifika tarafından hesaplanan hash değeri aynıysa, bir sertifikanın eki 0 olarak ayarlanabilir ve diğer sertifikanın eki 1 olarak ayarlanabilir

Adımlar:

Yukarıdaki komutu kullanarak paket yakalama yazılımının sertifikasının hash değerini hesaplayın, adını değiştirin ve sistem sertifika dizinine kopyalayın



Şu anda, yeni eklenen sertifikanızı Ayarlar - > Güvenlik - > Şifreleme ve Kimlik Bilgileri - > Güvenilir Kimlik Bilgileri sayfasının Sistem sekmesinde görebilmelisiniz







Önceki:Ön uç JavaScript mülakat becerileri
Önümüzdeki:Giriş sayfasında doğrulama kodu doğrulaması nasıl uygulanır?????
Yayınlandı 19.03.2019 09:13:25 |
Sahibine sorabilir miyim, bazı uygulamalar ve uygulamalar proxy üzerinden paket yakalamakta başarısız oluyor, nasıl çözeceğimi bilmiyorum?
Yayınlandı 6.09.2019 22:55:58 |
Patrona bak
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com