Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 16115|Resposta: 2

Solução para capturar pacotes após o Android 7.0 certificados desconhecidos e inválidos

[Copiar link]
Publicado em 18/03/2019 21:38:06 | | | |
fundo

Ao usar software de captura de pacotes (usando Charles como exemplo) para capturar a solicitação https do APP, tanto o Android quanto o Charles instalaram o certificado corretamente, mas a captura falha e um erro é reportado:

Handshake SSL do cliente falhou: Ocorreu um problema desconhecido ao processar o certificado (certificate_unknown)



Causa

Após o Android7.0, o certificado de CA adicionado ao sistema por padrão não é confiável:

Para proporcionar uma experiência mais consistente e segura em todo o ecossistema Android, começando pelo Android Nougat, dispositivos compatíveis confiam apenas nas CAs padronizadas mantidas no AOSP .


Link de documentação:https://android-developers.googl ... ed-certificate.html

Isso significa que, para aplicativos baseados no SDK24 e superiores, mesmo que você tenha um certificado da ferramenta de captura de pacotes instalado no seu celular, não será possível capturar requisições https.

solução

1. Solução oficial (modificação do código necessária)

Documentação oficial:https://developer.android.google ... ecurity-config.html
Demonstração Detalhada:https://blog.csdn.net/mrxiagc/article/details/75329629

2. Instalar o certificado do software de captura de pacotes como certificado do sistema (ROOT necessário)

Diretório de certificados do sistema: /system/etc/security/cacerts/

A convenção de nomenclatura para cada certificado é a seguinte:
<Certificate_Hash>. <Number>

O nome do arquivo é um valor hash, enquanto o sufixo é um número.

O nome do arquivo pode ser calculado com o seguinte comando:


Por exemplo, se o valor do hash calculado por dois certificados for o mesmo, então o número de sufixos de um certificado pode ser definido para 0, e o número do outro certificado pode ser definido para 1

Passos:

Use o comando acima para calcular o valor de hash do certificado do software de captura de pacotes, renomei-o e copie-o para o diretório de certificado do sistema



Neste momento, você deve conseguir ver seu novo certificado adicionado na aba Sistema de Configurações - Segurança > - > Criptografia e Credenciais - > Credenciais Confiáveis







Anterior:Habilidades de entrevista em JavaScript front-end
Próximo:Como implementar a verificação por código de verificação na página de destino?????
Publicado em 19/03/2019 09:13:25 |
Posso perguntar ao dono? Alguns aplicativos e APPs falham em capturar pacotes por meio de proxies, não sei como resolver isso.
Publicado em 06/09/2019 22:55:58 |
Olhe para o chefe
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com