Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 16115|Răspunde: 2

Soluție pentru a prinde pachete după Android 7.0 certificate necunoscute și invalide

[Copiază linkul]
Postat pe 18.03.2019 21:38:06 | | | |
fond

Când se folosește un software de captură a pachetelor (luând exemplul lui Charles) pentru a captura cererea https a aplicației, atât Android, cât și Charles au instalat corect certificatul, dar capturarea pachetelor eșuează și se raportează o eroare:

Handshake-ul SSL al clientului a eșuat: A apărut o problemă necunoscută la procesarea certificatului (certificate_unknown)



Cauză

După Android7.0, certificatul CA adăugat implicit în sistem nu mai este de încredere:

Pentru a oferi o experiență mai consecventă și mai sigură în întregul ecosistem Android, începând cu Android Nougat, dispozitivele compatibile au încredere doar în CA-urile standardizate ale sistemului menținut în AOSP .


Link pentru documentație:https://android-developers.googl ... ed-certificate.html

Aceasta înseamnă că, pentru aplicațiile bazate pe SDK24 și cele superioare, chiar dacă ai un certificat al uneltei de capturare a pachetelor instalat pe telefon, nu vei putea captura cereri https.

soluție

1. Soluție oficială (necesită modificare a codului)

Documentație oficială:https://developer.android.google ... ecurity-config.html
Demonstrație detaliată:https://blog.csdn.net/mrxiagc/article/details/75329629

2. Instalarea certificatului software-ului de captare a pachetelor ca certificat de sistem (necesită ROOT)

Directorul certificatelor sistemului: /system/etc/security/cacerts/

Convenția de denumire pentru fiecare certificat este următoarea:
<Certificate_Hash>. <Number>

Numele fișierului este o valoare hash, în timp ce sufixul este un număr.

Numele fișierului poate fi calculat cu următoarea comandă:


De exemplu, dacă valoarea hash calculată de două certificate este aceeași, atunci numărul sufixului unui certificat poate fi setat la 0, iar numărul sufixului celuilalt certificat poate fi setat la 1

Pași:

Folosiți comanda de mai sus pentru a calcula valoarea hash a certificatului software-ului de capturare a pachetelor, redenumiți-o și copiați-o în directorul certificatului sistemului



În acest moment, ar trebui să poți vedea certificatul nou adăugat în fila System din Setări - Securitate > - > Criptare & Credențiale - > Credențiale de încredere







Precedent:Abilități de interviu JavaScript pentru front-end
Următor:Cum să implementezi verificarea codului de verificare pe pagina de destinație?????
Postat pe 19.03.2019 09:13:25 |
Pot să întreb proprietarul, unele aplicații și aplicații nu reușesc să captureze pachete prin proxy-uri, nu știu cum să rezolv asta?
Postat pe 06.09.2019 22:55:58 |
Uită-te la șef
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com