Ricevo una javax.net.ssl.SSLHandshakeException ma il mio collega no, cosa potrebbe significare?

2

Quando provo a inviare una email su smtp con SSL nel codice Java ottengo la seguente eccezione:

PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target. Failed messages: javax.mail.MessagingException: Could not connect to SMTP host:

Questo avrebbe senso se il server SMTP che sto contattando usasse un certificato autofirmato che non ho importato ma non credo che sia così, perché quando il mio collega (in un altro paese) esegue l'esatto stesso codice funziona perfettamente.

Che cosa potrebbe significare?

  • Il mio laptop è compromesso
  • Il mio provider internet sta facendo qualcosa pesce
  • Qualcos'altro
  • Tutto sopra

Per la cronaca, sto vivendo in Indonesia e ci sono alcuni siti che sono bloccati.

Sono in grado di eseguire il ping, è necessaria una password per questo server smtp, le impostazioni vanno bene (funziona per il mio collega). Ho provato questo con entrambe le mie VPN attivate e disattivate.

    
posta Sebastiaan van den Broek 26.02.2018 - 07:26
fonte

2 risposte

3

Se il server SMTP utilizza un certificato autofirmato e non hai importato il certificato come attendibile, questa eccezione sarebbe quella prevista e qualcosa sarebbe sbagliato (insicuro) con il tuo codice se non dovessi ottenere un tale errore. Se invece il certificato dovrebbe essere firmato da una CA pubblica potrebbe essere un problema che non ti fidi di questa CA nel tuo codice per qualche motivo (improbabile), che ottieni una CA diversa da quella inviata dal server (cioè intercettazione SSL ) o che il server non è configurato correttamente e potrebbe mancare un certificato di catena.

Se funziona per i tuoi colleghi, devi verificare con loro cosa fanno di diverso. Potrebbe essere che ottengano un certificato diverso da quello che hai se hanno una diversa connettività di rete (cioè uno senza intercettazione SSL contro uno con intercettazione SSL). Potrebbe anche essere che abbiano importato esplicitamente il certificato pertinente come attendibile. Oppure potrebbe essere che ignorino esplicitamente gli errori dei certificati nel loro codice. E mentre ignorare gli errori dei certificati è di solito una pessima idea poiché rende gli attacchi di uomo nel mezzo non rilevabili, è ancora una soluzione comunemente raccomandata dagli utenti che non capiscono o non si preoccupano della sicurezza.

    
risposta data 26.02.2018 - 07:53
fonte
0

L'autorità di certificazione era Comodo che andava bene, dopo aver eseguito keytool -printcert -sslserver host come da commento di Dave, ho scoperto che il problema era sulla mia estremità con il mio antivirus (Avast) che inseriva il proprio certificato. Anche dopo aver disabilitato la scansione SSL e la scansione SMTP, il certificato mostrava ancora il loro, quindi purtroppo ho dovuto disabilitare l'intero componente.

    
risposta data 26.02.2018 - 16:10
fonte

Leggi altre domande sui tag