Uploading report fails with: javax.net.ssl.SSLHandshakeException: Pin verification failed
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 42/100
Direzione di ricerca
Inizia dalla configurazione dell’app di esempio TrustKit indicata nell’issue e segui il percorso di caricamento del report quando report-uri utilizza lo stesso dominio di un endpoint con pinning. Riproduci il problema su Android 7 o versioni successive, quindi verifica che i report vengano caricati correttamente senza applicare la configurazione di pinning che causa il problema.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the bug
Uploading report would fail with "Pin verification failed" if report-uri has same domain as the domain for which the pinning failed. This is most likely case for an organization.
To Reproduce
In the TrustKit sample app, www.google.com is configured with invalid pins. So pinning would fail. If the report-uri is also set to www.google.com, it would fail to upload report with javax.net.ssl.SSLHandshakeException: Pin verification failed.
Tested this on Android version 10. This issue should be reproduced on Android version 7 and above.
Expected behavior
We should be successfully able to upload reports without applying the pinning.
TrustKit configuration
Copy and paste your XML Network Security Policy.
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config>
<domain includeSubdomains="true">www.datatheorem.com</domain>
<!-- Valid pins -->
<pin-set expiration="2018-01-01">
<pin digest="SHA-256">AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</pin>
<pin digest="SHA-256">YLh1dUR9y6Kja30RrAn7JKnbQG/uEtLMkBgFF2Fuihg=</pin>
</pin-set>
<trustkit-config enforcePinning="true" disableDefaultReportUri="true">
<report-uri>https://overmind.datatheorem.com/trustkit/report</report-uri>
</trustkit-config>
</domain-config>
<domain-config enforcePinning="true">
<domain includeSubdomains="true">www.google.com</domain>
<pin-set>
<!-- Invalid pins -->
<pin digest="SHA-256">AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=</pin>
<pin digest="SHA-256">BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB=</pin>
</pin-set>
<trustkit-config enforcePinning="true" disableDefaultReportUri="true">
<report-uri>https://www.google.com</report-uri>
</trustkit-config>
</domain-config>
<domain-config enforcePinning="false">
<domain includeSubdomains="true">localhost</domain>
<trustkit-config
enforcePinning="false"
disableDefaultReportUri="true" />
</domain-config>
</network-security-config>
App details:
TrustKit Demo app
Tested this on Android version 10. This issue should be reproduced on Android version 7 and above.
Additional context
Note that, I tested failure with invalid pin approach. I suppose results would be similar for MITM attack as well?
Is it expected to apply pining for report upload as well? If so wouldn't it obviously fail?
May be I am missing something here. Please let me know.
Thanks.
- Lingua principale
- Java
- Stelle
- 604
- Fork
- 90
- Merge medio
- 1h 29m
- PR unite (30g)
- 2
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di datatheorem/TrustKit-Android
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 20/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 18/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
datatheorem/TrustKit-Android#93 · 3 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 30/100
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 32/100
datatheorem/TrustKit-Android#91 · 4 commenti ·
Tutte le issue di datatheorem/TrustKit-Android
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
infinispan/infinispan#18150 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
-
untriaged
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
opensearch-project/k-NN#3597 ·
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100